注册 登录
电子工程世界-论坛 返回首页 EEWORLD首页 频道 EE大学堂 下载中心 Datasheet 专题
tiankai001的个人空间 https://home.eeworld.com.cn/space-uid-139222.html [收藏] [复制] [分享] [RSS]
日志

msp430单片机开发实录(28)

已有 410 次阅读2019-3-7 10:20 |个人分类:Proteus for msp 430




此内容由EEWORLD论坛网友tiankai001原创,如需转载或用于商业用途需征得作者同意并注明出处



msp430单片机开发实录(28)




现象:
程序上电运行后,执行完端口初始化配置函数,就会进入端口中断。


试验:
在仿真环境下运行程序,发现程序运行后,在端口初始化中,为了方便,先统一把所有端口都设置为输出低电平,然后根据电路板的实际端口连接情况,再一一配置为所需要的状态。而程序中有端口中断功能及相应中断函数,端口初始化时会把该端口配置为输入口,并使能该端口中断。问题就出在这里,只要把端口设置为输入口,就会产生中断。把端口初始化开头部分的先把所有端口都设为输出口部分去掉,就不会出现此情况。


验证:

恰恰就是这个原因,先让掉电端口输出低,然后置中断端口为输入口,这时候立即检测到该端口为低,所以就进入端口中断。这大概也是MSP430单片机上电后默认所有端口都为输入口的原因,这样是避免中断的意外发生,当然,避免中断发生还要注意在使能中段寄存器控制位时,要把相应的中断标志清除。
备注:
为了防止意外中断的发生,出了端口配置要注意,还要注意在不希望发生中断的时候清除中断标志。




本文来自论坛,点击查看完整帖子内容。

评论 (0 个评论)

facelist doodle 涂鸦板

您需要登录后才可以评论 登录 | 注册

热门文章