Electronics 板


LINE

我平时都用PIC16F877A这颗MCU 最近做一个作业,原本想说很简单,结果逐行DEBUG两天才搞定 https://i.ibb.co/XLgCBWZ/int.jpg
这是我的中断,我在收完32个DATA後将x=1 https://i.ibb.co/7WvpPWt/main.jpg
之後主程式才开始动作,动作完将x=0,继续等待中断 可是写完烧录之後,怎麽测都会卡死 後来一行行DEBUG,终於正常运作 https://i.ibb.co/mtzVMvv/intfix.jpg
只是把INTF=0;移到if(INIT && x==0)的判断式外面就好了 但是这样我就很苦恼了,完全想不通问题在哪 我从以前用中断都是在if(INIT)的判断式的最後将INTF清0 第一次卡在这里,如果这样有问题应该之前就会出错了阿 我想请问这个INTF放在这里是真的有什麽问题吗?因为我真的完全想不到了 --



※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 60.248.158.217 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Electronics/M.1641286192.A.FEF.html
1F:→ yuleen123: x的资料型态是什麽?01/04 18:45
x是int
2F:→ breeze08: 只要进到ISR就代表有触发中断,那在离开前一定要清除旗01/04 18:53
3F:→ breeze08: 标,但因为你的if判断式并不一定会成立(x不一定等於0)01/04 18:55
可是第32次中断且x=0才会将x=1 照这样来看清除intf放在括号里面或外面逻辑感觉都通啊 但是放里面程式就是会卡死
4F:→ breeze08: 那这样就有可能没有正常清除旗标01/04 18:56
5F:→ god145145: x没初始化=0?01/04 19:39
一开始就设int x=0;了 ※ 编辑: IOP14759 (111.241.183.233 台湾), 01/05/2022 00:10:15 ※ 编辑: IOP14759 (111.241.183.233 台湾), 01/05/2022 00:13:50
6F:推 breeze08: 但你能保证在主程式中还没把x设为0之前不会再发生中断01/05 00:42
7F:→ breeze08: 吗?01/05 00:42
我送code自己key的spi,每次固定32个clk,应该是不会有其他中断 不过我之後会将INTF=0放在ISR最後进行 ※ 编辑: IOP14759 (223.136.244.25 台湾), 01/05/2022 11:21:59 ※ 编辑: IOP14759 (223.136.244.25 台湾), 01/05/2022 11:23:35
8F:推 mmonkeyboyy: 你任何一个interrupt都要先清intf 0 01/05 14:07
9F:→ mmonkeyboyy: if(INIT && x==0) 第一个动作就是清intf 0这样才是 01/05 14:08
10F:→ mmonkeyboyy: 如果不清 就会一直中断 所以就停住了01/05 14:10
11F:→ mmonkeyboyy: 你看一堆简例应该都是会这样写得 除非PIC有新的写法01/05 14:11
12F:→ mmonkeyboyy: 或是新的作法 @_@ 不然我记忆中是要这样写才对01/05 14:11
我刚刚查了一下其他范例好像都是先清intf 那可能是我当初学的时候就用错,一直到这次才爆炸 感谢各位解答 ※ 编辑: IOP14759 (223.136.244.25 台湾), 01/05/2022 14:17:21







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:BuyTogether站内搜寻

TOP