1樓:墨色汪洋
為什麼要用4*4矩形鍵盤呢?你說的這個功能要求,三個獨立按鍵就可以完成了。寫乙個鍵盤檢測函式,當不同鍵按下時,改變不同的引數。
根據你的要求,設定兩個引數,第乙個引數切換abcd,乙個引數存放乙個三位數字,key1控制abcd的切換,key2控制加第二個引數,key3控制減第二個引數。
2樓:愛丶秋兒
我先想問一下,你說的led是點陣還是數碼管?不可能單顆led顯示吧。。。
求解讀51微控制器用四個按鍵獨立控制四個led的c程式
3樓:網友
#include
k2~k4 分別控制le1~le4
void delay(unsigned int x) //延時函式void key_event (unsigned char d) //根據掃瞄到的鍵值,亮相應的led
void key() //按鍵掃瞄}}else
void main() //主函式開始}
4樓:走在時間的前頭
這個比較簡單的,在程式上的處理不用像你這麼複雜,需要可以叫我,我這裡有一些資料,可以交流一下,多謝。
51微控制器中用4個開關控制4個發光二極體的c語言程式設計
5樓:滄妍
不知道你要控制發光二極體實現什麼樣的功能,說詳細點才好。
51微控制器 c語言 如何用4個按鍵控制4個流水燈
6樓:cindere鞡
不用中斷一樣的實現,而且可以有多少個按鍵就可以有多少種流水燈方式。你使專用的鍵盤函式直屬接呼叫流水燈函式就可以。比如使用獨立鍵盤,if( light_water();然後:
void light_water()
這樣就會有乙個led從右往左移動8次;那麼當第一次流水未完時,又呼叫第二個流水函式light_water1就能中斷當前執行的流水函式又去執行第二個流水燈函式了。
7樓:網友
(1)如果外抄。
部中斷不足四個,那襲四個按鍵都接入同乙個中斷,同時各自接入乙個gpio,有按鍵按下,會觸發中斷,中斷程式就讀出鍵值。
2)如果外部中斷有四個,那直接各自接入一箇中斷,各自的中斷服務程式直接負責修改控制流水燈方式的引數就好了。
8樓:網友
可以考慮使用中斷法實現。
誰能幫我寫乙個51微控制器的c程式。兩個按鍵控制乙個led。
9樓:一萬光年
void main(void)
else if(key1==1 ) //按鍵1釋放或未按時,燈滅。
if(key2==0 &&key1==1) //按鍵2按下,按鍵1沒按}}
51微控制器四個獨立按鍵設定四個引數c語言程式
10樓:網友
硬體做好了嗎
可以給我看看原理圖
我做微控制器設計的
11樓:網友
就用while,if語句即可實現的。
求由51微控制器控制4x4鍵盤輸入,4個數碼管(採用動態掃瞄)顯示 c語言程式設計思路!
12樓:網友
可以這樣寫,先計算按了幾下了,按下若小於4次,讓四個段選端前幾個端導通,按下數超過或等於4次你就可以用掃屏的方式來顯示就好了。比如第一下按的是8你就可以設定if和else語句組合啊!先有個陣列d=//段選,按了幾下設為變數uint a//無符號字元型,if(a<4)if(a-2)};else(··太多了我就不寫了。
13樓:追悔七年
定義乙個10個元素的陣列static unsigned char m_arrdigital[10],做乙個數碼管0~9的位段表。前提是你的數碼管接在同一組io上,比如p0。
定義乙個4個元素的資料static unsigned char m_arrvalue[4],可初始化為0,對應於數碼管的4位。重新整理數碼管時依次取這個陣列中的值。
掃瞄按鍵,一般也是接到同一組io上,比如p1,可以是高4位輸出,低4位輸入。
轉換按鍵值,並把值寫入m_arrvalue[0]中,在寫之前先把m_arrvalue的前3個元素依次往後移一位,比如這樣寫:*(uisigned long *)m_arrvalue) <= 8;
把m_arrvalue中的值顯示到數碼管上,m_arrvalue[0]對應最右一位,m_arrvalue[3]對應最左一位。m_arrvalue可以作為m_arrdigital的索引。
14樓:做而論道
可以在我的空間裡面找到。
15樓:網友
這個可以編寫編寫,第九個鍵值以上都使用字母來替代了吧?a-f
微控制器控制舵機的問題,如何用51微控制器控制舵機的?怎樣編寫程式啊?大哥幫幫忙
請教一下,如何使用at89s52編寫這樣一個程式。要求,微控制器控制舵機,讓舵機到中間位置後,左轉15度,延遲2ms,右轉15度。度數不要求精確 舵機為0.5 2.5ms。是舵機正反轉 要c的,不要彙編 一定是應用定時器來控制脈衝的。多少脈衝舵機轉動1度?0.5ms到2.5ms是180度。0.5是起...
51微控制器三極體如何控制繼電器,51微控制器如何驅動12V繼電器 用三極體實現的電路引數怎麼求?
12v的繼電器這樣控制不對,實際中,如此接,微控制器就燒了。p20口至少接個電阻出來才不會燒,但高低都控制不了繼電器。用個npn,繼電器接12v與c之間,網上有很多圖。電路錯誤,繼電器不受控.應該選用npn三極體,12v接繼電器一腳,繼電器另一腳接npn三極體c極,三極體e極接地.微控制器 上電 還...
51微控制器pwm波形頻率問題,51微控制器pwm波形輸出問題
很多微控制器帶pwm模組,可以出很工整的pwm波,非用定時器做也可以,比較耗資源.定時器做pwm好處是任意的io都可以輸出且沒有通道個數的限制.定時器用作pwm你需要兩個中斷,一個是pwm週期中斷 所有通道置低 一個是pwm的開關點中斷 置高電平 有些微控制器還是難以實現一個定時器兩種中斷,另一個做...