欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136
標題:
請教關于比較長的單片機子函數中及時跳出的問題
[打印本頁]
作者:
kfg
時間:
2019-10-9 10:30
標題:
請教關于比較長的單片機子函數中及時跳出的問題
最近琢磨給高達模型加燈,一開始想在那個寶上找一些跑馬燈、呼吸燈的成品,但是花樣都不是我想要的。
偶爾看到有一家店買C51單片機控制的心形燈。作為野生碼農,就決定自己搞搞,用C51來控制花樣切換等等。
作為單片機零基礎的人,在論壇看了不少范例,借鑒了論壇上
http://www.raoushi.com/bbs/dpj-153979-1.html
(謝謝該程序的作者)的代碼自己寫了一個,用了P1和P2兩組IO,總共16個燈組(每組等1-4個燈不等),燈的樣式有3個花樣,各個樣式通過按鈕(p3.2 int0)切換
花樣1:所有燈按順序漸亮,LED1逐漸點亮,然后LED2逐漸點亮,最終所有燈全亮,耗時大概5、6秒
花樣2:所有燈循環呼吸燈,一個循環大概1秒
花樣3:所有燈一直全亮
3個樣式我都實現了,但是切換按鈕有點問題。
如果處于花樣1、花樣2,按下按鈕后不會馬上切換,而是要等花樣執行完之后才會切換。
后來經過研究、對比,發現是因為花樣1和花樣2的耗時太長,需要等執行完了再回去判斷花樣代碼才會調整花樣。
然后我就在花樣1、花樣2的每個delay函數前加一個if,來判斷是否有按按鍵,如果有就終止花樣重新判斷花樣代碼,并執行相應的花樣。最終實現了我要的效果,花樣切換很及時。
但是這樣的話,就有很多if語句,整個代碼看起來很不美光。
請問各位大佬,在主循環或子函數需要執行很多指令或耗時比較長,在執行過程中因為某些情況需要終止當前循環或者函數時,你們是怎么處理的呢?謝謝。
作者:
xuyaqi
時間:
2019-10-9 16:32
按鍵用中斷輸入就可以解決你的問題。
作者:
歐陽海辰
時間:
2019-10-9 20:00
外部中斷
作者:
kfg
時間:
2019-10-10 08:07
歐陽海辰 發表于 2019-10-9 20:00
外部中斷
樓上兩位,我試過用按鍵中斷,如果在中斷子程序中切換花式的話,會等到花式執行完畢才響應下面的中斷的,不能實時響應、切換花式。
歡迎光臨 (http://www.raoushi.com/bbs/)
Powered by Discuz! X3.1