完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
//=================msp430f5438a ADC_13,单通道重复测量
//#include #include #define Num_of_Results 8 unsigned int results[Num_of_Results]; unsigned int index=0; void ADC_13_Config(void); void main(void) { WDTCTL=WDTPW+WDTHOLD; ADC_13_Config( ); while(1) { while(!ADC12IFG13); results[0]=ADC12MEM0; } } void ADC_13_Config(void) { P7SEL=0x20; //P7.5 A13端口输入 //P7.5 开启ADC功能 //REFCTL0|=REFMSTR+REFVSEL_2+REFON; //开启参考电压 ADC12CTL0&=~ADC12ENC; ADC12CTL0=ADC12SHT0_15+ADC12SHT1_15+ADC12REF2_5V+ADC12REFON+ADC12ON; ADC12CTL1=ADC12SHP+ADC12CONSEQ_2; //单通道重复采样 ADC12CTL2|=ADC12TCOFF; ADC12MCTL0=ADC12SREF_0+ADC12INCH_13; //参考电压选择源电压 _NOP(); _NOP(); _NOP(); ADC12CTL0|=ADC12ENC; ADC12CTL0=ADC12SC; //开始采样 ADC12IE=BITD ; _BIS_SR(GIE); } #pragma vector=ADC12_VECTOR __interrupt void ADC12ISR(void) { results[index]=ADC12MEM0; //保存结果 index=(index+1)%Num_of_Results; if((Num_of_Results-1)==index) _NOP(); }这些是我写的adc12采样程序,感觉配置adc模块相关寄存器都设置好了,但编译时在watch中始终看不到任何数据,只显示00;那位大神能知道问题在哪? |
|
相关推荐
1个回答
|
|
问题已解决,是ADC12CTL0=ADC12SC; //开始采样该语句写法上有错误!
|
|
|
|
只有小组成员才能发言,加入小组>>
3031个成员聚集在这个小组
加入小组2923 浏览 1 评论
MSP430FR5994 使用库函数 定时器触发AD问题请教
3594 浏览 2 评论
请问怎么把下面51单片机的代码改成msp430 g2 pocket的代码,还有改下时间变成30秒
2341 浏览 1 评论
4800 浏览 1 评论
2573 浏览 1 评论
1327浏览 3评论
MSP430FR5994 使用库函数 定时器触发AD问题请教
3600浏览 2评论
2928浏览 1评论
1510浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-28 14:01 , Processed in 1.266074 second(s), Total 76, Slave 60 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号