| 
| 
查看: 1796|回复: 3
 | 
PIC16F877A interrupt問題
[复制链接] |  
 |  | 
 
| 大家好!本人正在用PIC16F877A + L298來做一個ROV, 遇到一些問題, 勞煩有此經驗的朋友幫幫忙 
 在控制方面, 本人做了6個switches作初步測試, switches 1-4 for 水平移動(兩個motors) , switches 5-6 for 垂直移動(一個motor), 但是問題出現了, 我用RB0作external interrupt, 只能做到按switch 1(or 2-4) 啟動某動作, 按switch 5(or 6)中斷前者進行另一動作, 但我心目中預期的結果是「按switch 1(or 2-4)啟動某動作, 按switch 5(or 6)進行另一動作, 而且switch 1之前的動作繼續」, 那我應該怎樣寫這程式 (PS 我用hi-tech c)
 | 
 |  |  |  |
 
|  |  |  
|  |  | 
 |  | 
 
 发表于 19-2-2011 02:16 AM
|
显示全部楼层 
| 本帖最后由 梦坚 于 19-2-2011 02:17 AM 编辑 
 hi-tech c 我没有用过,你需要计算你用的osc,然后编写你的code,你需要知道你按一个钮的时间是多少ms.迟些我找回我以前做的project 上传给你。
 我是用MPLAB,可以研究看。你需要DISABLE GLOBAL INTERRUPT 看,或者SWITCH 加个10k resistor.
 | 
 |  |  |  |
 
|  |  |  
|  |  | 
 |  | 
 
 
 楼主|
发表于 19-2-2011 06:28 PM
|
显示全部楼层 
| hi-tech c 我没有用过,你需要计算你用的osc,然后编写你的code,你需要知道你按一个钮的时间是多少ms.迟些我 ...梦坚 发表于 19-2-2011 02:16 AM
 謝謝你的回覆我是要用switch做external interrupt.
 | 
 |  |  |  |
 
|  |  |  
|  |  | 
 |  | 
 
 发表于 26-2-2011 09:07 PM
|
显示全部楼层 
| 謝謝你的回覆我是要用switch做external interrupt.cecece 发表于 19-2-2011 06:28 PM
 
 
 6个 switch怎样接  ext interrupt?
 你可以用 infinte loop来做你要做到的东西。
 | 
 |  |  |  |
 
|  |  |  
|  |  |  |  | 
            本周最热论坛帖子 |