完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
ads的DOUT一直是高电平,接不接压力传感器都是一样,请问是我没有启动ADS1230吗?PDWN一直拉低是可以的吧?
//STM8驱动,从MSP430上移植过来的 #include "ads1230.h" void int_ADS1230IO(void)//相关引脚初始化 { GPIO_Init(GPIOC,GPIO_PIN_2, GPIO_MODE_OUT_PP_HIGH_FAST ); GPIO_Init(GPIOC,GPIO_PIN_3, GPIO_MODE_OUT_PP_HIGH_FAST ); GPIO_Init(GPIOC,GPIO_PIN_4, GPIO_MODE_IN_PU_NO_IT ); } /***************************************************************************** 函数名称:ReadAD(void) 功 能:读AD 入口参数:无 返回参数:AD的转换结果,为long型 使用资源:无 ******************************************************************************/ long ReadAD(void) { long ADdatatemp=0; //设置AD转换的初始值为0 for(unsigned char i = 0;i < 20;i ++) //获取20位数据 { ADS_CLK_H(); Delayus(); ADS_CLK_L(); ADdatatemp = ADdatatemp << 1; if(ADS_DATA_HI) //AD输出的数据位是1? { ADdatatemp++; } Delayus(); } for(unsigned char i = 0;i < 4;i ++) //为下一次转换准备 { ADS_CLK_H(); //ADS_OUT |= ADS_CLK_BIT; Delayus(); ADS_CLK_L(); //ADS_OUT &= ~ADS_CLK_BIT; Delayus(); } AD_OFF(); return(ADdatatemp); } /***************************************************************************** 函数名称:void OffsetAD() 功 能:一个补偿函数,补偿AD1230的标尺误差 入口参数:无 返回参数:无 使用资源:无 ******************************************************************************/ void OffsetAD() { while(ADS_DATA_HI); //AD数据转换好?(ADS_IN & ADS_DATA_BIT)//AD_CLK输出位1 for(unsigned char i = 0;i < 26;i ++) //发送26个CLK { ADS_CLK_H(); Delayus(); ADS_CLK_L(); Delayus(); } } /***************************************************************************** 函数名称:void InitADline(void) 功 能:初始化AD控制线 入口参数:无 返回参数:无 使用资源:port2 ******************************************************************************/ void InitADline(void) { int_ADS1230IO();//相关引脚初始化 ADS_CLK_L(); // ADS_OUT &= ~ADS_CLK_BIT; AD_OFF(); // ADS_OUT &= ~ADS_PD_BIT; } |
|
相关推荐
2个回答
|
|
PDWN一直拉低, Power-Down: Holding this pin low powers down the entire converter and resets the ADC.
正在复位中, 我看你先仔细检查一下你的硬件吧 |
|
|
|
根据您的描述,ADS1230的DOUT引脚一直是高电平,无论是否连接压力传感器。这可能是由于以下几个原因:
1. ADS1230未启动:确保您已经正确初始化ADS1230并启动它。在您的代码中,您需要确保已经调用了初始化函数(例如`ADS1230_Init()`)并设置了正确的参数。 2. PDWN引脚:您提到PDWN一直拉低是可以的,这是正确的。PDWN引脚需要保持低电平以使ADS1230正常工作。请确保您的PDWN引脚连接正确。 3. 代码问题:检查您的代码,确保您已经正确配置了ADS1230的寄存器和引脚。您可以尝试使用官方的ADS1230示例代码作为参考。 4. 硬件问题:检查您的硬件连接,确保所有引脚都已正确连接,并且没有短路或断路的问题。 5. 电源问题:确保您的ADS1230电源供应稳定且在规定的范围内。 为了解决这个问题,您可以尝试以下步骤: 1. 检查您的ADS1230初始化代码,确保已经正确设置所有必要的寄存器和引脚。 2. 检查您的硬件连接,确保所有引脚都已正确连接,并且没有短路或断路的问题。 3. 使用示波器或逻辑分析仪检查ADS1230的DOUT引脚,以确定是否有任何异常信号。 4. 如果可能,尝试使用另一块ADS1230模块,以排除硬件故障的可能性。 5. 查阅ADS1230的数据手册,了解有关DOUT引脚的更多信息,以确定是否有其他可能的原因导致DOUT引脚保持高电平。 希望这些建议能帮助您解决问题。如果您需要更多帮助,请提供更多详细信息,例如您的ADS1230初始化代码和硬件连接图。 |
|
|
|
只有小组成员才能发言,加入小组>>
358 浏览 1 评论
551 浏览 2 评论
NA555DR VCC最低电压需要在5V供电,为什么用3.3V供电搭了个单稳态触发器也使用正常?
797 浏览 3 评论
MSP430F249TPMR出现高温存储后失效了的情况,怎么解决?
667 浏览 1 评论
对于多级放大电路板,在PCB布局中,电源摆放的位置应该注意什么?
1142 浏览 1 评论
AT32F407在USART2 DMA发送数据时,接包接到了要发送的数据,程序还是处于等待传输完成的标识判断中,为什么?
95浏览 29评论
381浏览 23评论
请问下tpa3220实际测试引脚功能和官方资料不符,哪位大佬可以帮忙解答下
268浏览 20评论
请教下关于TAS5825PEVM评估模块原理图中不太明白的地方,寻求答疑
217浏览 14评论
两个TMP117传感器一个可以正常读取温度值,一个读取的值一直是0,为什么?
74浏览 13评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-31 02:01 , Processed in 0.904042 second(s), Total 51, Slave 45 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号