|
3 電路分析
U2(74LS139)是2-4線譯碼器,功能見表1,他的輸入端B,A分別接至P3.4,P3.5,輸出端Y0-Y3取決于輸入端的組合,每種組合下只有一個(gè)輸出端(Y0-Y3)以低電平有效輸出。U3-U6是D鎖存器,主要是其中的5腳和6腳關(guān)系決定他們的工作狀態(tài),查閱資料得知,當(dāng)5腳和6腳邏輯電位相同時(shí),該芯片可以把D3-D0數(shù)據(jù)輸出到Q3-Q0;當(dāng)5腳和6腳邏輯電位不同時(shí),該芯片處于鎖存原來數(shù)據(jù)的狀態(tài),而不會(huì)“讀入”當(dāng)前的D3-D0數(shù)據(jù),電路中把U3-U6的6腳固定接低電位,而5腳分別用U2(74LS139)的輸出信號(hào)來控制,不難實(shí)現(xiàn)“可以單獨(dú)實(shí)現(xiàn)對(duì)各位BCD碼的設(shè)置”。4511是譯碼驅(qū)動(dòng),接共陰數(shù)碼管顯示當(dāng)前每位的BCD碼所對(duì)應(yīng)的十進(jìn)制數(shù),方便觀察,顯示部分很簡(jiǎn)單,此處不在贅述,同時(shí),顯示部分在電路上不是必須的,可省略,BCD碼通過J3和J2引出,之所以用兩個(gè)鏈接器是為了更靈活、方便使用。
鍵盤掃描程序的任務(wù)簡(jiǎn)單講就是:首先確認(rèn)是否有按鍵按下,然后通過掃描判斷來得到是在哪一行的按鍵,最后通過比較預(yù)先設(shè)定的4行表格查找并計(jì)算得到具體的按鍵,從而轉(zhuǎn)到相應(yīng)的功能程序。
(4)KEYCALCU子程序中通過乘3運(yùn)算用于散轉(zhuǎn)指令JMP,注意LJMP是3字節(jié)指令,各按鍵對(duì)應(yīng)的功能程序安排在一起串LJMP,所以通過乘3運(yùn)算才能正確對(duì)應(yīng)到各按鍵的執(zhí)行目標(biāo)功能程序。
關(guān)于各鍵的相應(yīng)處理功能就較簡(jiǎn)單,只要對(duì)應(yīng)不同的按鍵輸入相應(yīng)的控制命令,對(duì)于S0-S9是控制P3.3-P3.0不同的狀態(tài)以得到所對(duì)應(yīng)的BCD編碼,對(duì)于S10-S13則是控制P3.4,P3.5的狀態(tài)以實(shí)現(xiàn)對(duì)U3-U6的控制,限于篇幅,詳細(xì)內(nèi)容可以參見程序,程序開始執(zhí)行時(shí)是逐個(gè)控制4位BCD編碼輸出,對(duì)應(yīng)的數(shù)碼管依次顯示,初始狀態(tài)為0001,0000,0000,0000 4位BCD碼分別從J3,J2引出,數(shù)碼管顯示為1,0,0,0。 | |||||||
![]() | |||||||
![]() | |||||||
![]() | |||||||
![]() | |||||||
![]() | |||||||
![]() |