本帖最后由 gygzgdzw2019 于 2020-5-16 16:56 编辑
最近,在调试ADS1259这款芯片。目的是通过DSP28377D的SPI接口实现与ADS1259的通讯。
目前DSP的SPI的SIMO引脚能够发出数据,在发送回读寄存器指令后,并不能接收到对应寄存器的值,而且接收到的一直是定值0x40。(DSP的SPI的极性,相位,波特率等已经根据官方手册配置好)。请问各位大佬这是什么原因导致的呢?
ADS1259初始化程序如下:
void InitADS1259(void) { //RESET->0initially SET_RESET1(); SET_START(); SET_CS(); delayns1(70); //延迟至少2^16个tclk时钟 CLR_RESET1(); //拉高START delayns1(70); SET_RESET1(); CLR_CS(); WriteToADS1259(SDATAC);//send SDATAC command 禁止读命令,才能往ADS1259寄存器写指令进行配置 delayns1(10); WriteToADS1259(opcode1_W);//Write register opcode bytes,starting at address 0, 9-byte block.从0地址开始连续写9个字节的指令 delayns1(10); WriteToADS1259(opcode2_W); delayns1(10); WriteToADS1259(0x0500); delayns1(10); WriteToADS1259(0x1000); delayns1(10); WriteToADS1259(0x0300); delayns1(10); WriteToADS1259(0x0000); delayns1(10); WriteToADS1259(0x0000); delayns1(10); WriteToADS1259(0x0000); delayns1(10); WriteToADS1259(0x0000); delayns1(10); WriteToADS1259(0x0000); delayns1(10); WriteToADS1259(0x0000); delayns1(10); }
图片是用示波器解码的寄存器返回数据
|
问题已解决!