DA14695上的SPI 9位传输?

⚠️
你好。。谢谢你来到论坛。令人兴奋的消息!我们现在正在迁移到新的论坛平台,该平台将提供更好的功能,并包含在主对话网站中。所有员额和帐户都已迁移。我们现在只接受新论坛的流量-请在//www.xmece.com/support. 我们将在未来几天内修复bug/优化搜索和标记。
4个员额/0个新员额
最后一篇文章
范家祥
离线
最后一次见到:7个月1周前
加入:2020-07-14 07:40
DA14695上的SPI 9位传输?

你好

我是Dialog的新手,我使用DA14695和USB DK学习示例代码(SDK版本:10.0.8.105,WIRA 10.440.8.6)。

现在我尝试实现SPI功能,SPI1 8位模式工作正常,但现在我需要将SPI1设置为9位传输模式。

在9位模式下,SPI时钟似乎正常(一个数据中有9个时钟),但MOSI的最高位始终为0。(例如:0x0AA,0x0BF…)

由于SPI缓冲区是“uint8_t”,所以我不知道如何将第9位设置为1。。。

如何发送0x1AA、0x1BF等9位数据?

谢谢

设备:
tru对话框
离线
最后一次见到:2个月2周前
工作人员
加入:2014-06-30 23:52
嗨,Eric_fan:

嗨,Eric_fan:

能否提供用于在9位模式下配置的代码段?

此外,如数据表(第33节:SPI+接口)所述:串行接口可在主模式下传输9位。

谢谢

tru对话框

范家祥
离线
最后一次见到:7个月1周前
加入:2020-07-14 07:40
你好,TR_Dialog,

你好,TR_Dialog,

谢谢你的支持!

在我学习了第33节之后,现在9位函数似乎运行良好。

我的简单测试代码如下所示:

//SPI 1初始化/*外部传感器/模块SPI驱动程序*/const ad_SPI_driver_conf_t drv_SPI1={.SPI={.cs_pad={CUSTOM_DEVICE_cs_GPIO_端口,CUSTOM_DEVICE_cs_GPIO_PIN},.word_mode=HW_SPI_word_9;在这里可以定义所需的.smn_角色=HW_SPI mode_主控模式,.POL低极性_模式=HW(,//这里您可以定义所需的SPI极性。phase_mode=HW_SPI_PHA_mode_0,//这里您可以定义所需的SPI相位。mint_mode=HW_SPI_mint_DISABLE,.xtal_freq=HW_SPI_freq_DIV_4,//这里您可以声明自己的SPI速度。fifo_mode=HW_SPI_fifo_RX_TX,.disabled=0,/*应在初始化阶段禁用*/.忽略\u cs=false、//使用\u dma=false、//true、.rx\u dma\u通道=HW\u dma\u通道0、.tx\u dma\u通道=HW\u dma\u通道1};
//用9位模式测试传输数据#如果1个ad_spi_激活_cs(spiCustomHandle)//printf(“ad-spi-active-CS”);spiBuf[0]=0xAA;spiBuf[1]=0xBB;ad_spi_写入第9位(spiCustomHandle,0x01);state=ad_spi_write(spiCustomHandle和spiBuf[0],1);如果(州)AD_SPI_错误_无)printf(“AD SPI写入。。。ret%d,”,状态);ad_spi_写入第9位(spiCustomHandle,0x00);state=ad_spi_write(spiCustomHandle和spiBuf[1],1);如果(州)AD_SPI_错误_无)printf(“AD SPI写入。。。ret%d,”,状态);ad_spi_完成时停用_cs_(spiCustomHandle)//printf(“ad spi非活动CS\r\n”)#恩迪夫
//我的第9位SPI适配器/******************************************************************************************[E.F]此函数仅在SPI 9位主模式下使用。*/无效ad_spi_write_第9位(ad_spi_handle_t handle,uint8_t val){ad_spi_data_t*spi=(ad_spi_data_t*)句柄;const HW_SPI_ID=SPI->conf->ID;/*任务必须拥有控制器*/OS_断言(id);如果(!hw_spi_是_slave(id)){hw_spi_set_第9位(id,val);}

PM_对话框
离线
最后一次见到:23小时49分钟前
工作人员
加入:2018-02-08 11:03
嗨,eric_fan,

嗨,eric_fan,

很高兴现在可以正常工作,感谢您提供的附加代码片段。请同时查看我们的DA1469x SPI适配器概念教程辅导的

谢谢,下午好