
虽然程序很简短,但问题还真多!
1 最严重的问题,请不要在中断程序用使用外部延时函数,很危险也不效率,失去了定时器本身的作用。
2 在表示I/O端口某位的时候,最好用BIT0BIT7。
3 判断P21是否为1应该写成 if ((key & BIT1) != 0)。
4 CCR0不是计数器,是PWM或者捕获用的,只需要设置一次就行了。建议用TIME溢出中断,并每次更新TA0R和手动清除中断标志位。
__bis_SR_register(LPM0_bits + GIE); //置位SR寄存器,LPM0_bits是低功耗模式中的一种,CPU休息,具体可以查手册;GIE是打开全局中断使能
__no_operation(); //进行一个时钟周期的无 *** 作,一般调试可以把断点打在这
这个主要是用在低功耗上,cpu不需要工作时就打到休眠,打开中断使能,等待中断产生进入中断重新工作,这样减少芯片耗电量,一般装电池的要仔细研究这个。直接电源供电的可以无视这几句,不用写
可以用 两个中断控制位来实现 一个上升沿中断 一个下降沿有效 同时赋给他 ECHO,在中断中控制 定时器使能 TAR寄存器中的值就是你要的数值 但是是有范围的 最大 0xffff。。。
以上就是关于急!用MSP430定时中断实现P2.0=1,P2.1=0当P2.1为1时,P1.0接LED取反,总是不行!判断P2.1语句if该怎写全部的内容,包括:急!用MSP430定时中断实现P2.0=1,P2.1=0当P2.1为1时,P1.0接LED取反,总是不行!判断P2.1语句if该怎写、msp430的AD转换程序中断问题“__bis_SR_register(LPM0_bits + GIE); __no_operation(); ”、MSP430定时器A计数,然后给外部中断停止,主程序读出计数为多少等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)