Part Number:ADS1263Other Parts Discussed in Thread:MSP430F149,
用示波器测ads1263信号发现DOUT和DRDY的波形是一样的,为什么写的waitfordrdy函数单片机会卡在 while(!g_DRDY_flag);用的单片机是MSP430F149
P2.7 作为 DRDY 引脚: volatile int g_DRDY_flag = 0; void WaitForDRDY(void) {g_DRDY_flag = 0;P2IFG &= ~BIT7; // 清除 P2.7 的中断标志P2IE |= BIT7;// 使能 P2.7 的中断while(!g_DRDY_flag);P2IE &= ~BIT7;// 禁用 P2.7 的中断g_DRDY_flag = 0; } #pragma vector=PORT2_VECTOR __interrupt void Port_2(void) {if (P2IFG & BIT7){g_DRDY_flag = 1;P2IFG &= ~BIT7; // 清除 P2.7 的中断标志} }
Amy Luo:
您好,
DOUT/DRDY 有两个功能,一个是DOUT,一个是DRDY,DOUT/DRDY和DRDY的波形一样说明此时DOUT没有输出。
? ? 说:为什么写的waitfordrdy函数单片机会卡在 while(!g_DRDY_flag);
说明 g_DRDY_flag一直是0。g_DRDY_flag 是检测的 ADS1263 是DRDY 管脚吗?如果是的话,那就说明ADS1263 的 DRDY一直是低电平,ADS1263 的 DRDY一直是低电平不正常,您可以附上电路图我看下吗?
,
? ?:
Amy Luo 说: DRDY一直是低电平,ADS1263 的 DRDY一直是低电平不正常
不是一直是低电平,波形图在上面发过,但是单片机对中断没有反应
,
Amy Luo:
首先说明我们不对具体编写代码做支持,需要您自己验证上述代码的可行性。
ADS1263数字供电电压DVDD是多少?看隔离器件是3.3V,这里需要电平兼容,也就是说ADS1263 DVDD需要3.3V供电。因为看DRDY信号幅值像是5V,所以请确认DVDD的电压是否与通信电平兼容。
15脚时钟输入是接地了是吗?这里需要注意的是不可使用80MHZ 时钟频率,因为超出了规格范围:
DRDY脉冲宽度多少?它应该为16 个1/fCLK。
,
? ?:
我想问下这句话是什么意思啊,是指DRDY这个引脚是全双工吗?
,
Amy Luo:
不是指DRDY 引脚,是指SPI 通信接口。
DRDY是输出管脚,用高电平变低电平指示数据转换已完成。
,
? ?:
这句话的意思是命令读取数据可能会被DRDY引脚影响吗?
我把AIN0接2.5VAIN接地差分输入,为什么测出来电压是2.33V?跟2.5V差距较大
,
Amy Luo:
看下D的位置在箭头所指处,在这里也就是未读取数据前,DOUT/DRDY管脚状态与DRDY管脚保持一致,如果发送SCLK开始读取转换结果了,那么DOUT/DRDY管脚状态就可能是高或低了。DRDY输出低表示AD转换完成可以读取转换数据了。