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

正文內(nèi)容

基于89c51的計(jì)算器設(shè)計(jì)(編輯修改稿)

2024-11-28 10:38 本頁(yè)面
 

【文章內(nèi)容簡(jiǎn)介】 和顯示模式設(shè)置 I/D:光標(biāo)移 動(dòng)方向,高電平右移,低電平左移 S:屏幕上所有文字是否左移或者右移。高電平表示有效,低電平則無(wú)效。 指令 4:顯示開(kāi)關(guān)控制。 D:控制整體顯示的開(kāi)與關(guān),高電平表示開(kāi)顯示,低電平表示關(guān)顯示 C:控制光標(biāo)的開(kāi)與關(guān),高電平表示有光標(biāo),低電平表示無(wú)光標(biāo) B:控制光標(biāo)是否閃爍,高電平閃爍,低電平不閃爍。 指令 5:光標(biāo)或顯示移位 S/C:高電平時(shí)移動(dòng)顯示的文字,低電平時(shí)移動(dòng)光標(biāo)。 指令 6:功能設(shè)置命令 DL:高電平時(shí)為 4 位總線,低電平時(shí)為 8位總線 N:低電平時(shí)為單 行顯示,高電平時(shí)雙行顯示 F: 低電平時(shí)顯示 5x7 的點(diǎn)陣字符,高電平時(shí)顯示 5x10 的點(diǎn)陣字符。 指令 7:字符發(fā)生器 RAM 地址設(shè)置。 指令 8: DDRAM 地址設(shè)置。 指令 9:讀忙信號(hào)和光標(biāo)地址 BF:為忙標(biāo)志位,高電平表示忙,此時(shí)模塊不能接收命令或者數(shù)據(jù),如果為低電平表示不忙。 指令 10:寫(xiě)數(shù)據(jù)。 指令 11:讀數(shù)據(jù) 單片機(jī)系統(tǒng)課程設(shè)計(jì) 15 寫(xiě)時(shí)序: 讀時(shí)序 : 程序下載電路 串口 ISP 下載線, ISP(insystem programming)在線系統(tǒng)編程,一種無(wú)需將存儲(chǔ)芯片(如 EPROM)從嵌入式設(shè)備上取出就能對(duì)其進(jìn)行編程的過(guò)程,縮略為 ISP。 ISP(insystem programming)在線系統(tǒng)編程 ,一種無(wú)需將 存儲(chǔ)芯片 (如EPROM)從嵌入式設(shè)備上取出就能對(duì)其進(jìn)行編程的過(guò)程,縮略為 ISP。在系統(tǒng)編程需要在目標(biāo)板上有額外的電路完成編程任務(wù)。其優(yōu)點(diǎn)是,即使器件焊接在電路板上,仍可對(duì)其(重新)進(jìn)行編程。在系統(tǒng)可編程是 Flash 存儲(chǔ)器的固有特性(通 單片機(jī)系統(tǒng)課程設(shè)計(jì) 16 常無(wú)需額外的電路), Flash 幾乎都采用這種方式編程。 ISP 下載線就是一根用來(lái)在線下載程序的線,類似 USB 線,但不一樣。 串口 ISP 下載線。可以用 MAX232 芯片進(jìn)行搭建。 需要 104 電容等基本原件。相關(guān)原件及電路圖都可在網(wǎng)上找到。值得注意的是 104 電容應(yīng)選擇電解電容而不是瓷片電容。 后者不能很好傳輸數(shù)據(jù),而且容易失敗。建議使用電解電容。 +5I S P 下載口1P 1. 535R S T7P 1. 79P 1. 6108642I S P 4 系統(tǒng)軟件設(shè)計(jì) 系統(tǒng)軟件設(shè) 計(jì)主要包括顯示子程序,鍵盤子程序,輸入處理程序。 主程序軟件設(shè)計(jì) 主程序的流程圖如圖所示。 單片機(jī)系統(tǒng)課程設(shè)計(jì) 17 初 始 化是 否 按 鍵 按 下開(kāi) 始輸 入 處 理1602顯 示NY結(jié) 束 圖 主流程圖 主程序 構(gòu)成無(wú)限循環(huán),主要完成單片機(jī)初始化, 之后是程序進(jìn)入一個(gè)死循環(huán),從而不斷地檢測(cè)是否有按鍵按下,如果有按鍵按下則進(jìn)入按鍵處理,在按鍵處理函數(shù)中有顯示函數(shù)來(lái)進(jìn)行數(shù)值顯示 。 單片機(jī)系統(tǒng)課程設(shè)計(jì) 18 輸 入 處 理按 鍵 是 0 ~ 9且 w = 1N u m 1 采 集按 鍵 是 “ = ”且 w = 2調(diào) 用 初 始 化 程序 清 屏N u m 2 采 集 并 記錄 運(yùn) 算 符按 鍵 是 否 為 0 ~ 9按 鍵 為 “ = ”調(diào) 用 計(jì) 算 函 數(shù)并 顯 示調(diào) 用 計(jì) 算 函 數(shù)并 顯 示記 錄 運(yùn) 算 符f h , 以 這 次 的結(jié) 果 為 N u mNYNYNYNY 圖 輸入處理流程圖 處理函數(shù)式主程序中的關(guān)鍵環(huán)節(jié)主要進(jìn)行一些輸入處理和顯示,硬件圖中共有按鍵 16個(gè)分別是: 7 8 9 + 4 5 6 1 2 3 * 0 = / % 單片機(jī)系統(tǒng)課程設(shè)計(jì) 19 輸入識(shí)別部分可以分為三類, 數(shù)值輸入( 0~9), 等于( =) 運(yùn)算符號(hào)輸入( +、 、 /、 *、 %)。 對(duì)于數(shù)值輸入,可以先判斷是數(shù)值 1還是數(shù)值 2輸入,通過(guò)標(biāo)記符 W來(lái)判斷,如果 W=1,則是數(shù)值 1 輸入,再進(jìn)行輸入類型判斷,如果是數(shù)值輸入值 num1=num1*10+key,如果是等于輸入,而且還是在對(duì)數(shù)值 1進(jìn)行處理則進(jìn)行初始化,如果是符號(hào)輸入,則將符號(hào)位 W=2,進(jìn)入數(shù)值 2輸入處理,并記錄符號(hào),在對(duì)數(shù)值 2 進(jìn)行處理是同數(shù)值 1一樣只有當(dāng)輸入是‘ =’號(hào)是不再是初始化而是進(jìn)行運(yùn)算數(shù)值 1和數(shù)值 2處理并輸出結(jié)果。在輸出結(jié)果后如果想利用前一次運(yùn)算結(jié)果進(jìn)行計(jì)算,則直接輸入符號(hào),不用進(jìn)行 num1 輸入,這時(shí)系統(tǒng)會(huì)自動(dòng)將將上一次運(yùn)算結(jié)果 的值賦給數(shù)值 1,然后將標(biāo)記 W=2,進(jìn)行數(shù)值 2輸入。 鍵盤程序設(shè)計(jì) 在操作按鍵時(shí),無(wú)論是按下還是松開(kāi),觸點(diǎn)在閉合和斷開(kāi)時(shí)均會(huì)產(chǎn)生抖動(dòng),此時(shí)邏輯電平是不穩(wěn)的,如果得不到正確處理,可能會(huì)引起單片機(jī)對(duì)按鍵命令的錯(cuò)誤執(zhí)行。解決這個(gè)問(wèn)題的簡(jiǎn)單方法是利用軟件延時(shí)。在單片機(jī)處理按鍵操作后都延時(shí) 5ms,如果確定是按鍵后再延時(shí) 20ms,這樣基本可以避免鍵盤的抖動(dòng)。然后由單片機(jī)進(jìn)行鍵碼分析,并執(zhí)行相應(yīng)的命令,顯示并且返回。 下圖 是鍵盤程序設(shè)計(jì)流程圖。 單片機(jī)系統(tǒng)課程設(shè)計(jì) 20 開(kāi) 始有 按 鍵 閉合 ?調(diào) 用 延 時(shí) 子 程序 20ms有 按 鍵 閉 合鍵 碼 分 析執(zhí) 行 對(duì) 應(yīng) 功 能并 顯 示結(jié) 束YYNN 圖 鍵盤程序流程圖 按鍵 設(shè)置采用了掃描法,要判斷鍵盤中有無(wú)鍵按下時(shí)將全部行線 Y0Y3 置低電平,列線置高電平,然后檢測(cè)列線的狀態(tài)。只要有一列的電平為低, 則表示鍵盤中有鍵被按下,而 且閉合的鍵位于低電平線與 4 根行線相交叉的 4 個(gè)按鍵之中。若所有列線均為高電平,則鍵盤中無(wú)鍵按下。 判斷閉合鍵所在的位置時(shí),在確認(rèn)有鍵按下后,即可進(jìn)入確定具體閉合鍵的過(guò)程。其方法是:依次將行線置為低電平,即在置某根行線為低電平時(shí),其它線為高電平。在確定某根行線位置為低電平后,再逐行檢測(cè)各列線的電平狀態(tài)。若某列為低,則該列線與置為低電平的行線 交叉處的按鍵就是閉合的按鍵。 例如將單片機(jī)的 P1 口用作鍵盤 I/O 口,鍵盤的列線接到 P1 口的低 4 位,鍵盤的 單片機(jī)系統(tǒng)課程設(shè)計(jì) 21 行線接到 P1 口的高 4 位。列線 分別接有 4 個(gè)上拉電阻到正電源 +5V,并把列線 設(shè)置為輸入線,行線 設(shè)置為輸出線。 4 根行線和 4根列線形成 16 個(gè)相交點(diǎn),這些交點(diǎn)即為鍵盤按鍵。 在單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)中,系統(tǒng)有兩性能很大一部分取決于鍵盤處理程序。在按 鍵時(shí)按得快了沒(méi)有反應(yīng),按慢了一連響應(yīng)幾次,總給人遲鈍感,不能使人滿意。在該設(shè)計(jì)中用以下思路設(shè)計(jì)的鍵處理程序。 首 先要判斷有沒(méi)有鍵值,若有鍵值,再判斷是否為首次按下: ( 1)若首次按下:判斷是否與上次按下的鍵值相同 :是否已經(jīng)按下了 300ms? 1).若已經(jīng)按下 300ms 則將此鍵做為連鍵處理。 2).若不是連鍵則判斷:是否按下 20ms? 1.若確認(rèn)按下 20ms,得到有效鍵值等待彈起 2.若不是按下 20ms 直接結(jié)束處理( ret)。 ( ret)。 ( 2)若不 是首次按下:將鍵值暫存起來(lái),標(biāo)志置位結(jié)束處理。 如果無(wú)鍵值,則判斷是否有鍵值已被確認(rèn) ( 1)若有鍵已被確認(rèn):判斷按鍵是否首次抬起 :判斷抬起延時(shí)時(shí)間( 20ms)是否到達(dá) 1.若延時(shí)到則將標(biāo)志處理結(jié)束處理。 2.若延時(shí)未到直接結(jié)束處理( ret)。 :直接結(jié)束處理( ret)。 ( 2)若沒(méi)有鍵被確認(rèn):直接結(jié)束處理( ret)。 5 系統(tǒng)仿真與調(diào)試 仿真部分采用 proteus 軟件,此軟件功能強(qiáng)大且操作較為簡(jiǎn)單,可以很容易的實(shí)現(xiàn)各種系統(tǒng)的仿真。 首先打開(kāi) proteus 軟件,在元件庫(kù)中找到要選用的所有元件,然后進(jìn)行原理圖的繪制;繪制好后再選擇已經(jīng)編譯好的 *.hex 文件,選擇運(yùn)行,觀察顯示結(jié)果,根據(jù)顯示的結(jié)果和課題的要求再修改程序,再運(yùn)行查,直到滿足要求。 以下是本次實(shí)驗(yàn)通過(guò) proteus 的結(jié)果的截圖: 單片機(jī)系統(tǒng)課程設(shè)計(jì) 22 圖 proteus 仿真結(jié)果 1 圖 proteus 仿真結(jié)果 2 通過(guò) proteus 軟件仿真,已經(jīng)能夠滿足本次課程設(shè)計(jì)任務(wù)書(shū)中的要求,下面通過(guò)實(shí)物的單片機(jī)開(kāi)發(fā)板來(lái)進(jìn)行調(diào)試,通過(guò) usb 連接電腦拷入程序,運(yùn)行,也能 單片機(jī)系統(tǒng)課程設(shè)計(jì) 23 夠 完成任務(wù)書(shū)的要求,結(jié)果如下: 圖 單片機(jī)開(kāi)發(fā)板調(diào)試結(jié)果 1 單片機(jī)系統(tǒng)課程設(shè)計(jì) 24 圖 單片機(jī)開(kāi)發(fā)板調(diào)試結(jié)果圖 2 單片機(jī)系統(tǒng)課程設(shè)計(jì) 25 圖 單片機(jī)開(kāi)發(fā)板調(diào)試結(jié)果 2 6 總結(jié) 課程設(shè)計(jì)是培養(yǎng)學(xué)生運(yùn)用所學(xué)的專業(yè)知識(shí),發(fā)現(xiàn),提出,分析和解決實(shí)際問(wèn)題,鍛煉實(shí)際動(dòng)手能力的重要環(huán)節(jié),是對(duì)學(xué)生實(shí)際工作能力的具體訓(xùn)練和考察,隨著科學(xué)技術(shù)日新月異的發(fā)展,單片機(jī)已經(jīng)成為當(dāng)今計(jì)算機(jī)應(yīng)用中空前活躍的領(lǐng)域,在生活中可以說(shuō)遍布我們生活之中。 這次設(shè)計(jì)進(jìn)一步端正了我的學(xué)習(xí)態(tài)度,學(xué)會(huì)了實(shí)事求是,嚴(yán)謹(jǐn)?shù)淖黠L(fēng),對(duì)自己要嚴(yán)格要求。急于求成是不好的,通過(guò)此 次畢業(yè)設(shè)計(jì)我深有體會(huì)。如果省略了 單片機(jī)系統(tǒng)課程設(shè)計(jì) 26 那些必要的步驟,急于求成,不僅會(huì)浪費(fèi)時(shí)間,還會(huì)適得其反。我覺(jué)得動(dòng)手之前,應(yīng)該有清楚的步驟,這一步是很重要的。就目前來(lái)說(shuō),我的動(dòng)手能力雖然還有差距,但我知道,通過(guò)我的不懈努力,在動(dòng)手方面,我會(huì)得到提高。這一點(diǎn),我堅(jiān)信。 在此次的畢業(yè)設(shè)計(jì)中我最大的體會(huì)就是進(jìn)一步認(rèn)識(shí)到了理論聯(lián)系實(shí)踐的重要性。一份耕耘,一份收獲。通過(guò)這段時(shí)間的設(shè)計(jì),讓我明白科學(xué)的思維方法和學(xué)習(xí)方法是多么重要,只有這樣才能夠有很高的效率,才能夠讓自己的工作更完美。總而言之,此次畢業(yè)設(shè)計(jì)讓我學(xué)到了好多平時(shí)在課堂上學(xué)不到的東西,增加了我的知識(shí)運(yùn)用能力,增強(qiáng)我的實(shí)際操作能力。謝謝老師給我們提供這么好的機(jī)會(huì),為我們之后走向社會(huì)奠定了一個(gè)好的基礎(chǔ)。 參考文獻(xiàn) [1] 楊家成. 單片機(jī) 原理與應(yīng)用及 C51 程序設(shè)計(jì) [M]. 北京 :清華大學(xué) 出版社 ,2020 [2] 夏路易 石宗義 . Protel 99se 電路原理圖與電路板設(shè)計(jì)教程 [M]. 北京:北京希望電子 出版社, 2020 [6] 閻石 .數(shù)字電子技術(shù)基礎(chǔ) [M].北京 :高等教育出版社 ,2020. 附錄 1 系統(tǒng)原理圖 單片機(jī)系統(tǒng)課程設(shè)計(jì) 27 1 2 MC R Y S T A LC13 0 p FC23 0 p FR11 0 KV C CS1C31 0 p FVSS1VDD2VEE3RS4RW5E6D07D18D29D310D411D512D613D714L C D 1 6 0 2L C D 1 6 0 2G N D1 0 kP O T 2S07S18S29S31S44S55S66S7+S81S92S 1 03S 1 1*S 1 20S 1 3=S 1 4%S 1 5/P 1 .0P 1 .1P 1 .2P 1 .3R21KR31KR41KR51KR61KR71KR81KR91K+5P 1 .78P 1 .67P 1 .56P 1 .45P 1 .34P 1 .2
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1