|
這是我單片機(jī)課程中按鍵控制單個(gè)數(shù)碼管顯示的程序
0.png (52.32 KB, 下載次數(shù): 58)
下載附件
2017-4-13 19:03 上傳
單片機(jī)源程序如下:
- /*-----------------------------------------------
- 名稱:?jiǎn)蝹(gè)共陽數(shù)碼管動(dòng)態(tài)顯示變化數(shù)字
- 內(nèi)容:通過循環(huán)檢測(cè)P1口按鍵輸入值,然后用數(shù)碼管輸出,
- 沒有按鍵按下時(shí)原值不變
- ------------------------------------------------*/
- #include<reg52.h> //包含頭文件,一般情況不需要改動(dòng),
- //頭文件包含特殊功能寄存器的定義
- unsigned char code dofly_table[10]={0xc0,0xf9,0xa4,0xb0,0x99,
- 0x92,0x82,0xf8,0x80,0x90,};
- // 顯示數(shù)值表0-9
- /*------------------------------------------------
- 主函數(shù)
- ------------------------------------------------*/
- void main (void)
- {
-
- while (1) //主循環(huán)
- {
- switch(P3) //P3口作為獨(dú)立按鍵輸入端,檢測(cè)端口電平并做如下判斷
- {
- case 0xfe:P1=dofly_table[1];break;//0xfe = 1111 1110,
- //說明連接在P3.0端口的按鍵被按下,顯示對(duì)應(yīng)的數(shù)字然后跳出循環(huán)
- case 0xfd:P1=dofly_table[2];break;//調(diào)用表中的第三個(gè)
- //元素 0xa4 下標(biāo) 0 才表示數(shù)組中的第一個(gè)元素
- case 0xfb:P1=dofly_table[3];break;
- case 0xf7:P1=dofly_table[4];break;
- case 0xef:P1=dofly_table[5];break;
- case 0xdf:P1=dofly_table[6];break;
- case 0xbf:P1=dofly_table[7];break;
- case 0x7f:P1=dofly_table[8];break;
- default:break; //如果都沒按下,直接跳出
- }
- //主循環(huán)中添加其他需要一直工作的程序
- }
- }
復(fù)制代碼
|
評(píng)分
-
查看全部評(píng)分
|