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

正文內(nèi)容

畢業(yè)設(shè)計(jì)-基于stc89c52rc單片機(jī)的簡易計(jì)算器設(shè)計(jì)-文庫吧

2025-05-16 02:11 本頁面


【正文】 0=顯示 1 行 1=顯示 2 行 F 0=57 點(diǎn)陣 /每字符 1=510 點(diǎn)陣 /每字符 CGRAM 地址指令 功能:設(shè)定下一個(gè)要存入數(shù)據(jù)的 CGRAM 的地址。 DDRAM 地址指令 功能:設(shè)定下一個(gè)要存入數(shù)據(jù)的 CGRAM 的地址。 (注意這里我們送地址的時(shí)候應(yīng)該是 0x80+Address,這也是前面說到寫地址命令的時(shí)候要加上 0x80 的原因 ) AC 地址指令 10 功能: 1 讀取忙碌信號 BF 的內(nèi)容, BF=1 表示液晶顯示器忙,暫時(shí)無法接收單片機(jī)送來的數(shù)據(jù)或指令 。 當(dāng) BF=0 時(shí),液晶顯示 器可以接收單片機(jī)送來的數(shù)據(jù)或指令 。 2 讀取地址計(jì)數(shù)器 (AC)的內(nèi)容。 DDRAM 或 CGRAM 指令一覽 功能: 1 將字符碼寫入 DDRAM,以使液晶顯示屏顯示出相對應(yīng)的字符 。 2 將使用者自己設(shè)計(jì)的圖形存入 CGRAM。 CGRAM 或 DDRAM 讀出數(shù)據(jù)的指令一覽 功能:讀取 DDRAM 或 CGRAM 中的內(nèi)容。 基本操作時(shí)序: 讀狀態(tài) 輸入: RS=L, RW=H, E=H 輸出: DB0~ DB7=狀態(tài)字 寫指令 輸入: RS=L, RW=L, E=下降沿脈沖, DB0~ DB7=指令碼 輸出:無 讀數(shù)據(jù) 輸入: RS=H, RW=H, E=H 輸出: DB0~ DB7=數(shù)據(jù) 寫數(shù)據(jù) 輸入: RS=H, RW=L, E=下降沿脈沖, DB0~ DB7=數(shù)據(jù) 輸出:無 、鍵盤設(shè)計(jì)方案與選擇 方案一:獨(dú)立鍵盤。 獨(dú)立鍵盤為一端接地,另一端接 I/O 口,并且要接上拉電阻。這種鍵盤的硬件都很容易實(shí)現(xiàn),但每一個(gè)按鍵就要用一個(gè) I/O口,適合本次設(shè)計(jì)。 11 方案二:通過 PS2 協(xié)義 ,用鍵盤同單片機(jī)相接,從而實(shí)現(xiàn)單片機(jī)與鍵盤通信。其電路如圖所示?,F(xiàn)在 PC機(jī)廣泛采用的 PS/2 接口為 miniDIN 6 引腳的連接器。 1— 數(shù) 據(jù)線( DATA); — 未用; 3— 電源地( GND); 4— 電源( +5 V); 5— 時(shí)鐘( CLK); 6— 未用。 由此圖可知 ,使用鍵盤硬件結(jié)構(gòu)比較簡單 ,但鍵盤的體積太大 ,所以此系統(tǒng)不采用此方案。 方案三:自制編碼鍵盤。 編碼鍵盤的電路如圖所示,這種鍵盤有編程簡單,占用資源少,但其硬件比較復(fù)雜,要用很多的二極管,不是很理想 。 12 方案四: 4*4 矩陣式鍵盤。 其電路圖如圖所示,這種鍵盤的硬件簡單,使用的 I/O 口也不多,而且這種鍵盤的編程方法已很成熟。本次設(shè)計(jì)也可以采用這種矩陣式鍵盤。其電路圖如圖 主體設(shè)計(jì)部分 : ( 1)、 系統(tǒng)模塊圖: 13 單片機(jī)運(yùn)算模塊顯示模塊輸入模塊 ( 2)、算術(shù)運(yùn)算程序流程圖: 14 加開 始判 斷 運(yùn) 算 符 ?乘 除 減判 斷 結(jié) 果 溢 出 ? 除 數(shù) 為 0 ?錯(cuò) 誤 信 息 送 顯 示 緩 沖數(shù) 值 送 顯 示 緩 沖YN N Y 15 ( 3)、 系統(tǒng)總流程圖: 開 始初 始 化 參 數(shù)初 始 化 L C D 顯 示本 次 功 能 鍵 ?讀 取 鍵 碼數(shù) 字 鍵 清 零 鍵 功 能 鍵鍵 入 數(shù) 值 狀 態(tài) 清 零根 據(jù) 上 次 功 能 鍵 和 輸 入的 數(shù) 據(jù) 計(jì) 算 結(jié) 果結(jié) 果 送 顯 示 緩 沖L C D 顯 示有 否 有 鍵 值 ?數(shù) 值 送 顯 示 緩 沖結(jié) 果 送 顯 示 緩 沖等 待 數(shù) 值 鍵 入 等 待 數(shù) 值 鍵 入結(jié) 果 送 顯 示 緩 沖等 待 數(shù) 值 鍵 入YNYN 16 ( 4)、硬件設(shè)計(jì): (一)、 總體硬件設(shè)計(jì): 本設(shè)計(jì)選用 AT89C51 單片機(jī)為主控單元; 顯示部分:采用 LCD 靜態(tài)顯示;按鍵部分:采用 4*4 鍵盤;用 MM74C922 為 4*4 鍵盤掃描 IC,讀取輸入的鍵值。 總體設(shè)計(jì)效果如 下圖: (二)、單片機(jī)接口電路說明: 手動(dòng)上電復(fù)位電路: 當(dāng) VCC 上電時(shí), C 充電,在 10K電阻上出現(xiàn)電壓,使得單片機(jī)復(fù)位;幾個(gè)毫秒后, C 充滿, 10K 電阻上電流降為 0,電壓也為 0,使得單片機(jī)進(jìn)入工作狀態(tài)。工作期間,按下 S, C放電。 S松手, C又充電,在 10K電阻上出現(xiàn)電壓,使得單片機(jī)復(fù)位。幾個(gè)毫秒后,單片機(jī)進(jìn)入工作狀態(tài)。 17 內(nèi)部時(shí)鐘模式電路: 當(dāng)單片機(jī)工作于內(nèi)部時(shí)鐘模式的時(shí)候,只需在 XTAL1和 XTAL2引腳連接一個(gè)晶體振蕩器或者陶瓷振蕩器,并接兩個(gè)電容后接地即可,在使用時(shí)對于電容的選擇有一 定的要求: 當(dāng)外接晶體振蕩器的時(shí)候,電容值一般選擇 C1=C2=30+10pF或 3010pF; 當(dāng)外接陶瓷振蕩器的時(shí)候,電容值一般選擇 C1=C2=40+10pF或 4010pF; STC89C52介紹: STC89C52是一種低功耗、高性能 CMOS8位微控制器, 具有 8K 在系統(tǒng)可編程 Flash 存儲(chǔ)器。在單芯片上,擁有靈巧的 8 位 CPU 和在系統(tǒng)可編程Flash,使得 STC89C52為眾多嵌入式控制應(yīng)用系統(tǒng)提供高靈活、超有效的解決方案。 具有以下標(biāo)準(zhǔn)功能: 8k字節(jié) Flash, 512字節(jié) RAM, 32 位 I/O 口線, 看門狗電路 , 內(nèi)置 4KB EEPROM, MAX810復(fù)位電路, 三個(gè) 16 位 定時(shí)器 /計(jì)數(shù)器, 一個(gè) 6向量 2級中斷結(jié)構(gòu), 全雙工串行口。 另外 STC89X52 可降至 0Hz 靜態(tài)邏輯操作,支持 2種 軟件 可選擇節(jié)電模式??臻e模式下,CPU 停止工作,允許 RAM、定時(shí)器 /計(jì)數(shù)器、串口、中斷繼續(xù)工作。掉電保護(hù)方式下, RAM內(nèi)容被保存,振蕩器被凍結(jié),單片機(jī)一切工作停止,直到下一個(gè)中斷或硬件復(fù)位為止。最高運(yùn)作頻率 35Mhz, 6T/12T可選。 18 和 atmel的對比 STC89C52RC單片機(jī) : 8K字節(jié)程序存儲(chǔ)空間; 512字節(jié)數(shù)據(jù)存儲(chǔ)空間; 內(nèi)帶 4K字節(jié) EEPROM存儲(chǔ)空間 。 可直接使用串口下載; AT89S52單片機(jī) : 8K字節(jié)程序存儲(chǔ)空間; 256字節(jié)數(shù)據(jù)存儲(chǔ)空間; 沒有內(nèi)帶 EEPROM存儲(chǔ)空間 。 LCD1602介紹: 1602采用標(biāo)準(zhǔn)的 16腳接口,其中: 第 1腳: VSS 為電源地 19 第 2腳: VDD 接 5V 電源正極 第 3腳: V0為液晶顯示器對比度調(diào)整端,接正電源時(shí)對比度最弱,接地電源時(shí)對比度最高(對比度過高時(shí)會(huì) 產(chǎn)生 “鬼影 ”,使用時(shí)可以通過一個(gè) 10K 的電位器 調(diào)整對比度)。 第 4腳: RS 為寄存器選擇,高電平 1時(shí)選擇數(shù)據(jù)寄存器、低電平 0時(shí)選擇指令寄存器。 第 5腳: RW 為讀寫信號線,高電平 (1)時(shí)進(jìn)行讀操作,低電平 (0)時(shí)進(jìn)行寫操作。 第 6腳: E(或 EN)端為使能 (enable)端。 第 7~ 14腳: D0~ D7為 8位雙向數(shù)據(jù)端。 第 15~ 16腳:空腳或背燈電源。 15腳背光正極, 16腳背光負(fù)極 602LCD 的特性 n+5V 電壓,對比度可調(diào) n 內(nèi)含復(fù)位電路 n 提供各種控制命令 ,如:清屏、字符閃爍、光標(biāo)閃爍、顯示移位等多種功能 n 有 80字節(jié)顯示數(shù)據(jù)存儲(chǔ)器 DDRAM n 內(nèi)建有 192個(gè) 5X7點(diǎn)陣的字型的字符發(fā)生器 CGROM n8個(gè)可由用戶自定義的 5X7的字符發(fā)生器 CGRAM 讀的時(shí)候,先讀左邊那列,再讀上面那行,如:感嘆號!的 ASCII 為 0x21,字母 B 的 ASCII 為 0x42(前面加 0x表示十六進(jìn)制) 1602通過 D0~D7的 8位數(shù)據(jù)端傳輸數(shù)據(jù)和指令。 顯示模式設(shè)置: (初始化 ) 0011 0000 [0x38] 設(shè)置 162顯示, 57點(diǎn)陣, 8位數(shù)據(jù)接口; 顯示開關(guān)及光標(biāo)設(shè)置: (初始化 ) 0000 1DCB D 顯示 (1有效 )、 C 光標(biāo)顯示 (1有效 )、 B 光標(biāo)閃爍 (1有效 ) 0000 01NS N=1(讀或?qū)懸粋€(gè)字符后地址指針加 1 amp。光標(biāo)加 1), N=0(讀或?qū)懸粋€(gè)字符后地址指針減 1 amp。光標(biāo)減 1), S=1 且 N=1 (當(dāng)寫一個(gè)字符后,整屏顯示左移 ) s=0 當(dāng)寫一個(gè)字符后,整屏顯示不移動(dòng) 數(shù)據(jù)指針設(shè)置: 數(shù)據(jù)首地址為 80H,所以數(shù)據(jù)地址為 80H+地址碼 (027H, 4067H) 其他設(shè)置: 01H(顯示清屏,數(shù)據(jù)指針 =0,所有顯示 =0); 02H(顯示回車,數(shù)據(jù)指針 =0)。 (三)、鍵盤接口電路: 20 計(jì)算器輸入數(shù)字和其他功能按 鍵要用到很多按鍵,如果采用獨(dú)立按鍵的方式,在這種情況下,編程會(huì)很簡單,但是會(huì)占用大量的 I/O 口資源,因此在很多情況下都不采用這種方式,而是采用矩陣鍵盤的方案。矩陣鍵盤采用四條 I/O 線作為行線,四條 I/O 線作為列線組成鍵盤,在行線和列線的每個(gè)交叉點(diǎn)上設(shè)置一個(gè)按鍵。這樣鍵盤上按鍵的個(gè)數(shù)就為 4 4個(gè)。這種行列式鍵盤結(jié)構(gòu)能有效地提高單片機(jī)系統(tǒng)中 I/O 口的利用率。 矩陣鍵盤的工作原理: 計(jì)算器的鍵盤布局如圖 1所示:一般有 16個(gè)鍵組成,在單片機(jī)中正好可以用一個(gè) P口實(shí)現(xiàn) 16個(gè)按鍵功能,這種形式在單片機(jī)系統(tǒng)中也最常 用。 圖 1 矩陣鍵盤布局圖 矩陣鍵盤內(nèi)部電路圖如圖 2所示: (四)、 LCD 顯示模塊: 21 本設(shè)計(jì)采用 LCD 液晶顯示器來顯示輸出數(shù)據(jù)。通過 D0D7 引腳向 LCD 寫指令字或?qū)憯?shù)據(jù)以使 LCD 實(shí)現(xiàn)不同的功能或顯示相應(yīng)數(shù)據(jù)。 圖 5 LCD 模塊 (五)運(yùn)算模塊(單片機(jī)控制): MCS51 單片機(jī)是在一塊芯片中集成了 CPU、 RAM、 ROM、定時(shí)器 /計(jì)數(shù)器和多功能 I/O等一臺計(jì)算機(jī)所需要的基本功能部件。如果按功能劃分,它由如下功能部件組成,即微處理器( CPU)、數(shù)據(jù)存儲(chǔ)器( RAM)、程序存儲(chǔ)器( ROM/EPROM)、并行 I/O 口、串行口、定時(shí)器 /計(jì)數(shù)器、中斷系統(tǒng)及特殊功能寄存器( SFR)。 單片機(jī)是靠程序運(yùn)行的,并且可以修改。通過不同的程序?qū)崿F(xiàn)不同的功能,尤其是特殊的獨(dú)特的一些功能,通過使用單片機(jī)編寫的程序可以實(shí)現(xiàn)高智能,高效率,以及高可靠性!因此我們采用單片機(jī)作為計(jì)算器的主要功能部件,可以很快地實(shí)現(xiàn)運(yùn)算功能。 PCB設(shè)計(jì): 22 實(shí)驗(yàn)現(xiàn)象、數(shù)據(jù)記錄 數(shù)碼顯示及運(yùn)算 最多九位顯示及運(yùn)算 當(dāng)超出時(shí)溢出顯示 23 五、總結(jié) 在實(shí)驗(yàn)中遇到 了這樣那樣的問題,軟件的編輯中使得 c 語言的應(yīng)用更加熟練; 在硬件的實(shí)現(xiàn)中又出現(xiàn)了軟件和硬件不統(tǒng)一的問題,本實(shí)驗(yàn)我做了兩次,第一次的時(shí)候 STC89C52 單片機(jī)的 P2 口的 ~~ 分別對應(yīng)連接到 LCD1602的 D7~~D0 口,這就使得在寫程序的時(shí)候需要把所有讀寫的數(shù)據(jù)以及地址都按位取反,改寫程序比較復(fù)雜,最終調(diào)試失敗,又改變了硬件電路。最終成功; 本次設(shè)計(jì)不管在軟件,或是在硬件方面都讓我受益匪淺,讓我所學(xué)的知識得以應(yīng)用到實(shí)踐,經(jīng)過這次創(chuàng)新性實(shí)驗(yàn),也令我看到了很多的不足,在實(shí)驗(yàn)中的一些程序不能夠及 時(shí)編輯正確,需要很長時(shí)間的設(shè)計(jì)。硬件中我對單片機(jī)實(shí)驗(yàn)板上的很多硬件不是很清楚,使得在下載程序后,又進(jìn)行了很長時(shí)間的調(diào)整。 六、主要程序代碼 24 include define uchar unsigned char define uint unsigned int define KEYDATA P1 uchar key。 uchar
點(diǎn)擊復(fù)制文檔內(nèi)容
畢業(yè)設(shè)計(jì)相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1