freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

[學(xué)士論文]畢業(yè)設(shè)計(jì)論文-單片機(jī)簡易計(jì)算器設(shè)計(jì)(編輯修改稿)

2025-02-12 06:53 本頁面
 

【文章內(nèi)容簡介】 盤控制程序需完成的任務(wù)有:監(jiān)測是否有鍵按下,有鍵按下時,在無硬件去抖的動電路時,應(yīng)用軟件延時方法消除按鍵抖動影響;當(dāng)有多個鍵同時按下時,只處理一個按鍵,不管一次按鍵持續(xù)多長時間,僅執(zhí)行一次按鍵功能程序。矩陣按鍵掃描程序是一種節(jié)省IO口的方法,按鍵數(shù)目越多節(jié)省IO口就越可觀,思路:先判斷某一列(行)是否有按鍵按下,再判斷該行(列)是那一只鍵按下。但是,在程序的寫法上,采用了最簡單的方法,使得程序效率最高。本程序中,如果檢測到某鍵按下了,就不再檢測其它的按鍵,這完全能滿足絕大多數(shù)需要,又能節(jié)省大量的CPU時間。本鍵盤掃描程序的優(yōu)點(diǎn)在于:不用專門的按鍵延時程序,提高了CPU效率,也不用中斷來掃描鍵盤,節(jié)省了硬件資源。另外,本鍵盤掃描程序,每次掃描占用CPU時最短,不論有鍵按下或者無鍵按下都可以在很短的時間完成一次掃描。本鍵盤掃描子程序名叫key,每次要掃描時用lcall key調(diào)用即可。5 計(jì)算器硬件電路設(shè)計(jì)8051單片機(jī)的P2口作鍵盤口。鍵盤由4*4共16個按鍵組成,10個數(shù)字鍵(由09組成)5個運(yùn)算符號(加減乘除等于)組成,1個清除鍵(作用相當(dāng)于整體復(fù)位)。4個數(shù)碼管用于顯示當(dāng)前數(shù)值的千,百,十,個,采用動態(tài)顯示方式,P1口接4個數(shù)碼管的七段,P0口分別接4個數(shù)碼管的公共端,P1口輸出數(shù)碼管的字形碼,P0口輸出數(shù)碼管的字位碼。6 計(jì)算器程序設(shè)計(jì) 30H單元:數(shù)值個位顯示單元;31H單元:數(shù)值十位顯示單元;32H單元:數(shù)值百位顯示單元;33H單元:數(shù)值千位顯示單元;23H單元:第一操作數(shù)存儲單元;24H單元:第二操作數(shù)存儲單元;25H單元:鍵值暫存單元;27H單元:清除鍵狀態(tài);34H37H單元:結(jié)果數(shù)據(jù)轉(zhuǎn)換暫存單元;38H39H單元:結(jié)果高低8位暫存單元;R5單元:操作數(shù)計(jì)數(shù)單元;R4單元:操作數(shù)數(shù)值位數(shù)計(jì)數(shù)單元;R3單元:運(yùn)算符號存儲單元。 主程序設(shè)計(jì)主程序進(jìn)行程序中用到的一些存儲單元的初始化,數(shù)值顯示和4*4鍵盤掃描。首先,進(jìn)行存儲單元初始化,給數(shù)碼管顯示單元30H33H賦予“0000”字形數(shù)據(jù),將數(shù)值計(jì)數(shù)單元,存儲單元,23H25H,34H37H,38H,39H,3AH,3BH,3CH,賦予初值零。之后,調(diào)用鍵盤掃描子程序,和數(shù)碼管顯示數(shù)據(jù)轉(zhuǎn)換程序,數(shù)碼管動態(tài)顯示子程序。主程序不斷進(jìn)行鍵盤掃描,數(shù)碼管顯示數(shù)據(jù)轉(zhuǎn)換子程序和動態(tài)顯示子程序。 數(shù)碼管顯示數(shù)據(jù)轉(zhuǎn)換子程序CONV由于數(shù)值單元存放的是二進(jìn)制數(shù),而用戶熟悉的是十進(jìn)制數(shù),所以應(yīng)將數(shù)值單元中的二進(jìn)制轉(zhuǎn)換為十進(jìn)制數(shù),即BCD碼。要通過數(shù)碼管顯示出當(dāng)前數(shù)值,還必須將BCD碼進(jìn)一步轉(zhuǎn)換為七段碼,轉(zhuǎn)換的最終結(jié)果數(shù)據(jù)存放于顯示緩沖區(qū)30H33H單元中,其中30H單元存放數(shù)值的個位七段碼,31H單元存放數(shù)值的十位七段碼,32H單元存放數(shù)值的百位七段碼,33H單元存放數(shù)值的千位七段碼。 數(shù)碼管動態(tài)顯示子程序本任務(wù)由P1口輸出字形碼,P0口輸出字位碼。先將存放于30H單元的數(shù)值個位七段碼由P1口輸出,同時P0口輸出使數(shù)值個位顯示數(shù)碼管點(diǎn)亮的字位碼。由于采用的是共陽數(shù)碼管,,點(diǎn)亮延時10MS。然后P1口輸出數(shù)值十位七段碼,數(shù)值十位數(shù)碼管點(diǎn)亮,延時10MS。接著P1口輸出數(shù)值百位七段碼,數(shù)值百位數(shù)碼管點(diǎn)亮,延時10MS。最后P1口輸出數(shù)值千位七段碼,數(shù)值千位數(shù)碼管點(diǎn)亮,延時10MS。7 系統(tǒng)硬件設(shè)計(jì) 選用設(shè)備8051單片機(jī)一片選用設(shè)備:8051彈片機(jī)一片,4*4鍵盤一個,4位共陽極的七段數(shù)碼管一個,連線若干。 系統(tǒng)總框圖如下: 計(jì)算器硬件線路圖 圖11 系統(tǒng)工作原理(1)首先賦予顯示緩沖初始值‘00 00’,并把數(shù)據(jù)存儲單元清零。(2)主程序調(diào)用鍵盤掃描子程序,判斷鍵值,是數(shù)字第一次直接賦予23H單元,如是第二次輸入數(shù)字,則把第一次值乘十后與第二次值相加,結(jié)果存儲到23H單元,并R4計(jì)數(shù)2次,表示已輸入兩位,掃描鍵值時就不在賦值和顯示。等待運(yùn)算符號的按下,按下等于號就直接與零計(jì)算并顯示,如加減乘除就R5加一 并把R4清零,表示可以輸入下一操作數(shù),與第一次相同,并等待等于鍵按下。清零鍵則不管在任何情況下都清零,相當(dāng)與軟復(fù)位。(3)在掃描完鍵盤后,調(diào)用數(shù)據(jù)顯示轉(zhuǎn)換子程序,并選擇,由于本任務(wù)是兩位四則運(yùn)算,只有乘法中結(jié)果會超出FFH的范圍,在此就是選擇處理方式,超出范圍則跳過數(shù)據(jù)顯示轉(zhuǎn)換子程序,未超出則調(diào)用數(shù)據(jù)顯示轉(zhuǎn)換子程序,兩種選擇都是要把值轉(zhuǎn)換為七段碼。(4)調(diào)用數(shù)碼管動態(tài)顯示子程序,顯示數(shù)值,重新循環(huán)。第5頁 共13頁8 程序源代
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1