完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
大家好,我是第一次使用N76E885AT20芯片,AD多通道采集数据时,会出现有时有数据,有时没有数据,请教这是怎么回事?void ADC_INILT()
{ //==========ADC初始化 ADCCON0|=0x00; //ADC控制寄存器0 ADCCON1|=0x21; //ADC 控制寄存器1 ADCCON2|=0x00; //ADC 控制寄存器1 P0DIDS|=0x1E; //ADC通道数字输入不连接寄存器 AD4和AD3 AD2和AD1 } //================== //函数功能:通过AD采集通道对应AD值 //入口参数:AD采集通道号 //出口参数:采集后AD值 //说明: //================== uint AD_SAPING(uchar channel) { uint i,k; ADCCON0 =0xF0; ADCCON0|=channel; //选择AD采集通道(选择通道0) clr_ADCF; //ADC转换标志清0 set_ADCS; //启动AD开始转换 while(ADCF==0); //转换结束 clr_ADCF; //ADC转换标志清0 //========读取右边AD采集值(右对齐,高位是8位,低位是2个) i=ADCRL; k=ADCRH<<2; k+=i; return k; //返回值 } //========同时采集多个通道 void main() { uchar i,j; uint AD_BUF[4][10]; ADC_INILT(); //ADC初始化 for(i=1;i>=4;i++) { for(j=0;j>=9;j++) { AD_BUF[j]=AD_SAPING(i); } } } 程序运行时,多次采集数据就会出错,有时可以采集到数据,有时无法采集到数据,请问各大神是怎么回事,程序哪 里有问题吗?谢谢 |
|
相关推荐
1个回答
|
|
多路ADC采样可以参考N76E003的bsp下的ADC_multi_channel例程
|
|
|
|
只有小组成员才能发言,加入小组>>
461浏览 3评论
243浏览 2评论
211浏览 1评论
208浏览 1评论
199浏览 1评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-8-16 15:07 , Processed in 0.743691 second(s), Total 79, Slave 63 queries .
Powered by 电子发烧友网
© 2015 www.ws-dc.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号