完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
电子发烧友论坛|
ads7830使用5V为外部参考电压,当测量电压在0到2.5V左右时,芯片输出一次电压结果便不再输出,而当测量电压在2.5到5V左右时可以一直更新读取的数据。u8 ads7830_write_read_one_byte(u8 addwrite,u8 dat,u8 addread)//0x90{ u8 receive; iic_start(); iic_write_byte(addwrite); //发送写地址 //0x90 iic_wait_ack(); iic_write_byte(dat); //发送写命令 //0x84 iic_wait_ack(); iic_start(); iic_write_byte(addread); //发送写命令 //0x91 iic_wait_ack(); receive=iic_read_byte(1); iic_nack; iic_stop(); //产生一个停止条件 delay_ms(10); return receive;}void main(){ u8 adc_buf[5]; u16 adc_value=0; double adc_vol;//ADC电压值 u8 addwrite=0x90;u8 dat=0x84;u8 addread=0x91;u8 receive=0;//单端输出 while(1) { adc_value=ads7830_write_read_one_byte(addwrite,dat,addread);//测量电位器 adc_value=((float)adc_value/255)*500; adc_buf[0]=gsmg_code[adc_value/100]|0x80;; adc_buf[1]=gsmg_code[adc_value/10%10]; adc_buf[2]=gsmg_code[adc_value%10]; adc_buf[3]=0x3e;//显示单位V smg_display(adc_buf,5); // LED=!LED;delay_ms(10); } } |
|
相关推荐
1个回答
|
|
|
ADS7830是一款12位的模数转换器(ADC),它具有一个可编程的参考电压输入,可以用于测量0到参考电压范围内的电压。根据您的描述,当测量电压在0到2.5V时,芯片只输出一次电压结果便不再输出,而在2.5V到5V时可以持续更新读取的数据。这可能是由于以下几个原因:
1. **电源和参考电压设置问题**:确保外部参考电压确实设置为5V,并且电源电压稳定。如果参考电压或电源电压不稳定,可能会导致ADC输出异常。 2. **输入保护**:检查是否有任何输入保护电路可能导致在低电压范围内的输入被阻断或限制。 3. **代码逻辑问题**:检查您的`ads7830_write_read_one_byte`函数实现,确保在读取低电压范围内的数据时没有逻辑错误导致只读取一次数据。例如,检查是否有条件语句错误地终止了数据读取循环。 4. **硬件连接问题**:检查ADS7830的硬件连接,确保所有连接都正确无误,没有短路或断路。 5. **芯片故障**:如果以上都检查过没有问题,可能是ADS7830芯片本身存在故障,这种情况下可能需要更换芯片。 6. **数据手册和配置**:重新检查ADS7830的数据手册,确保所有的配置和设置都按照手册要求进行。特别是参考电压和输入范围的配置。 7. **软件滤波**:如果软件中实现了某种形式的滤波,可能会在低电压范围内抑制数据更新。 为了进一步诊断问题,您可以尝试以下步骤: - **简化测试**:使用一个已知的稳定电压源(如0V、2.5V和5V)测试ADS7830,看是否能够正确读取这些电压值。 - **调试代码**:在`ads7830_write_read_one_byte`函数中添加调试信息,打印出每次读取的数据和状态,以便跟踪问题发生的具体位置。 - **硬件检查**:使用万用表检查ADS7830的电源和参考电压输入,确保它们在规定的范围内。 希望这些建议能帮助您找到问题的原因并解决它。如果需要更具体的帮助,请提供更多的代码和硬件连接细节。 |
|
|
|
|
只有小组成员才能发言,加入小组>>
590 浏览 0 评论
1645 浏览 0 评论
2084 浏览 0 评论
为啥BQ7693003DBTR芯片在和BQ769X0盒子通讯时收不到信号?
1537 浏览 0 评论
DSP 28027F 开发板 XDS100v2调试探针诊断日志显示了 Error -150 (SC_ERR_FTDI_FAIL)如何解决
1376 浏览 0 评论
AT32F407在USART2 DMA发送数据时,接包接到了要发送的数据,程序还是处于等待传输完成的标识判断中,为什么?
1788浏览 29评论
2817浏览 23评论
请问下tpa3220实际测试引脚功能和官方资料不符,哪位大佬可以帮忙解答下
1746浏览 20评论
请教下关于TAS5825PEVM评估模块原理图中不太明白的地方,寻求答疑
1662浏览 14评论
两个TMP117传感器一个可以正常读取温度值,一个读取的值一直是0,为什么?
1676浏览 13评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-12 07:07 , Processed in 0.779457 second(s), Total 75, Slave 58 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
2401