完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
这个IC 的ADC只能一次使用一个吗,每次配置第二个ADC之后读取会出错。
Trigger_ADC_Convertion(); Set_ADC_Input_Mode(E_CHANNEL0); // Set ADC0 (P0.1 default) is input only mode ADC_Channel_Sel(E_CHANNEL0); // ADC Channel Select (P0.1 default) u16ADCL = ADCCON0; u16ADCL = u16ADCL >> 6; // ADC[1:0] u16ADC = ADCH; u16ADC = (u16ADC << 2 ) + u16ADCL; // ADC[9:2] + ADC[1:0] Set_ADC_Input_Mode(E_CHANNEL4); // Set ADC4 (P0.5 default) is input only mode ADC_Channel_Sel(E_CHANNEL4); // ADC Channel Select (P0.5 default) u16ADCL_4 = ADCCON0; u16ADCL_4 = u16ADCL_4 >> 6; // ADC[1:0] u16ADCH_4 = ADCH; u16ADC_4 = (u16ADCH_4 << 2) + u16ADCL_4; // ADC[9:2] + ADC[1:0] if(u16ADC<24){ P14 = 1; } else if(u16ADC>24){ P14 = 0; } 这个代码,如果去掉 Set_ADC_Input_Mode(E_CHANNEL4); // Set ADC4 (P0.5 default) is input only mode ADC_Channel_Sel(E_CHANNEL4); // ADC Channel Select (P0.5 default) u16ADCL_4 = ADCCON0; u16ADCL_4 = u16ADCL_4 >> 6; // ADC[1:0] u16ADCH_4 = ADCH; u16ADC_4 = (u16ADCH_4 << 2) + u16ADCL_4; // ADC[9:2] + ADC[1:0] 就可以正常,否则P14一直都是1 |
|
相关推荐
|
|
只有小组成员才能发言,加入小组>>
3278 浏览 9 评论
2956 浏览 16 评论
3456 浏览 1 评论
8988 浏览 16 评论
4050 浏览 18 评论
1102浏览 3评论
570浏览 2评论
const uint16_t Tab[10]={0}; const uint16_t *p; p = Tab;//报错是怎么回事?
568浏览 2评论
用NUC131单片机UART3作为打印口,但printf没有输出东西是什么原因?
2301浏览 2评论
NUC980DK61YC启动随机性出现Err-DDR是为什么?
1857浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-22 13:55 , Processed in 1.117786 second(s), Total 77, Slave 57 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号