STM32
直播中

杨芳

7年用户 129经验值
私信 关注
[问答]

如何用spi接tlv5617a进行da转换?

tlv的这几种方式的区别有哪些,写数据到缓存和dacA|B有什么不一样,下面是我的转换函数,调用三次转换不同的值,但是只是得到第一次的值,查看spi发送数据时三次都是分别对应正确的,不知哪里有问题
da_buf=0x07fc;
da_convert(da_buf);
Delay(0x3ffffff);算了一下大概三秒
da_buf=0x000c;
da_convert(da_buf);
Delay(0x3ffffff);
  da_buf=0x0ffc;
da_convert(da_buf);
Delay(0x3ffffff);
void da_convert(uint16_t dabl)
{
vu16 da_code ; da_code = 0x4000 | dabl;
GPIO_ResetBits(GPIOA,GPIO_Pin_6); //拉低使能da转换
Delay(0xff);
while (SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_TXE) == RESET); //等待发送完成
SPI_I2S_SendData(SPI1,da_code); //发送转换数据
  Delay(0xff);
GPIO_SetBits(GPIOB,GPIO_Pin_6);
}

回帖(1)

李娟

2020-6-5 12:23:44
没玩过这东西.
举报

更多回帖

发帖
×
20
完善资料,
赚取积分