完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
电子发烧友论坛|
各位大佬,想请教一下,我在IO下降沿中断中服务程序中打开了总中断,每隔5ms进入一次定时器的中断,就会出现IO中断中串口发送数据有问题,请问我要实现这个功能有什么修改方法吗?
部分代码如下: // AD采样中断服务程序,定时5ms #pragma vector=tiMER0_A0_VECTOR __interrupt void TimerA(void) { P4OUT ^= BIT4; ADC12CTL0 |= ADC12SC; // 开始AD转换 while (!(ADC12IFG & BIT0)); // 判断转换是否完成 if(ecg_cnt < ECG_Length) ecg[ecg_cnt++] = ADC12MEM0; // AD值存入数组 } // IO中断服务程序,下降沿中断 #pragma vector=PORT1_VECTOR __interrupt void Port_1(void) { _EINT(); int i; for(i=10;i>0;i--) { if(P1IN&BIT4) break; delay_ms(1); } if (i == 0) { P2SEL &= ~0x01; P2DIR |= 0x01; P2OUT = 0x01; delay_ms(50); Open_Timer1_A0(); while (!(UCA0IFG&UCTXIFG)); // USCI_A0 TX buffer ready? UCA0TXBUF = 0xAA; while (!(UCA0IFG&UCTXIFG)); delay_ms(33); Close_Timer1_A0(); } P2SEL &= ~0x01; P2DIR |= 0x01; P2OUT = 0x01; P1IFG &= ~BIT4; // 手动清除标志位 } |
|
相关推荐
1 个讨论
|
|
只有小组成员才能发言,加入小组>>
3325个成员聚集在这个小组
加入小组9546 浏览 1 评论
10350 浏览 1 评论
MSP430FR5994 使用库函数 定时器触发AD问题请教
10671 浏览 2 评论
请问怎么把下面51单片机的代码改成msp430 g2 pocket的代码,还有改下时间变成30秒
2657 浏览 1 评论
5113 浏览 1 评论
MSP430FR5994 使用库函数 定时器触发AD问题请教
10677浏览 2评论
10355浏览 1评论
9555浏览 1评论
8213浏览 0评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-1 15:54 , Processed in 1.210090 second(s), Total 39, Slave 31 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
3223