电路设计论坛
直播中

李慧

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

AD5272的50 -tp存储器怎么读取?

如果按照资料里的:0x1419 0x0000 准备从存储器位置0x19读取数据。
                                    0x2000 0x0100 准备从控制寄存器读取数据。SDO输出16位字,其中最后10位包含存储器位置0x19的内容。
                                    0x0000 0xXXXX NOP指令0会通过SDO输出16位字,其中最后4位包含控制寄存器的内容。如果位C3 = 1,则熔丝编程命令成功。
这么做读出的是控制寄存器的内容,而不是存储器的内容,如果用0x0000读出的数据是512,不是制寄存器的内容。
这是我的部分代码,与STM32通信的:
WriteToAD5272ViaI2C(1,1,4,0); //复位
延迟_us(5);
printf("111n");
WriteToAD5272ViaI2C(1,1,7,3); //启用数据更新
延迟_us(5);
延迟_us(5);
printf("222n");
WriteToAD5272ViaI2C(1,1,5,5); //在下一帧中从SDO输出读取50-TP的内容。
延迟_us(5);
printf("333n");
// WriteToAD5272ViaI2C(1,0,3,0); //将RDAC数据写入50-TP
/延迟_s(1);
// printf("444n");


AD5272Data=ReadFromAD5272ViaI2C(1,1,0,0); //读出内容
printf("Data=%d ",AD5272Data);

更多回帖

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