80c52中基於中斷的兩個程式模組

2021-04-23 04:48:43 字數 903 閱讀 1969

矩陣鍵盤中斷掃瞄

if(enblescan==0)//如果是開

else

step=0;

break;

default:step++;

break; }}

else

switch(step)

else

step=0;

break;

default:step++;

break;

}變數說明:此程式有enablescan,step,temp,temp1四個變數,其中temp1可以定義為區域性變數。enablescan是布林型,step有多長由延時時間決定,temp為全域性變數進行資料的傳遞。

進口引數:無

出口引數:temp

(0xee,0xde,0xbe,0x7e,0xed,0xdd,0xbd,0x7d,0xeb,0xdb,0xbb,0x7b,0xe7,0xd7,0xb7,0x77)

用的位置:此程式用在定時中斷函式中。

程式優點:1,消除抖動是採用定時中斷進行延時,減小了cpu的負擔

2,用引數enablescan進行了鍵盤的遮蔽,實現了鍵盤優先順序的選擇,防止重複按鍵

系統說明:p2口接矩陣鍵盤

數碼管中斷動態顯示

uchar code table=;

uchar code aa=;

uchar bb[5];

void init()//初始化

display() interrupt 3//中斷子程式

變數說明:此程式變數i和陣列變數bb[i]兩個全域性變數,其中i由數碼管的個數決定,bb[i]用來儲存要顯示的數字的bcd碼。所以在要顯示十進位制數時要先轉化成bcd碼。

程式優點:採用定時中斷顯示數字,減輕cpu的負擔。

系統說明:p1是位選,p0為段選

C 中兩個冒號( )的作用

global system.console.writeline number 冒號在什麼地方用.點是空間下類,表示下一層的意思?這裡面 前面是gac的標示符global,用法比較特殊,和.不是乙個型別的東西。global 是 c 2.0 中新增的關鍵字,理論上說,如果 寫得好的話,根本不需要用到它。...

關於C 中實現兩個應用程式訊息通訊的問題

注意這裡傳送訊息的函式 public static void sendmessage string destprocessname,int msgid,string strmsg 只能傳送乙個msgid和乙個strmsg,接收方只接收了strmsg,我的專案中已經夠用了,你如果需要讀msgid,還需...

c 中兩個類互相引用的問題

最近在改乙個c 程式的時候碰到一條警告資訊,警告資訊為 刪除指向不完整 q2dtorusnode 型別的指標 沒有呼叫析構函式 1 c users lxw desktop dragonfly第二階段實驗 最終的實驗版本 實驗目錄 dragonfly modify src q2dtorus.h 6 參...