【正文】
第 2 腳: VCC 接 5V 正電源。這種行列式鍵盤結(jié)構(gòu)能有效地提高單片機(jī)系統(tǒng)中 I/O 口的利用率。 ⑤ 每對(duì) Flash存儲(chǔ)陣列寫入一個(gè)字節(jié)或每寫入一個(gè)程序機(jī)密位,加上一個(gè)ALE/PROG編程脈沖。 RST/VPD—— 當(dāng)出現(xiàn)兩個(gè)機(jī)器周期高電平時(shí),單片機(jī)復(fù)位。 XTAL1:反向振蕩放大器的輸入及內(nèi)部時(shí)鐘工作電路的輸入。 如有必要,可通過(guò)對(duì)特殊功能寄存器( SFR)區(qū)中的 8EH 單元的 D0位置位,可禁止 ALE操作。 晶振工作時(shí), RST 腳持續(xù) 2 個(gè)機(jī)器周期高電平將使單片機(jī)復(fù)位。在這種應(yīng)用中, P2 口使用很強(qiáng)的內(nèi)部上拉發(fā)送 1。對(duì) P1 端口寫 “ 1” 時(shí),內(nèi)部上拉電阻把端口拉高,此時(shí)可以作為輸入口使用。 P0 口: P0 口是一個(gè) 8 位漏極開(kāi)路的雙向 I/O 口。 AT89S52 具有以下標(biāo)準(zhǔn)功能: 8k字節(jié) Flash, 256 字節(jié) RAM, 32 位 I/O 口線,看門狗定時(shí)器, 2 個(gè)數(shù)據(jù)指針,三個(gè) 16 位 定時(shí)器 /計(jì)數(shù)器,一個(gè) 6 向量2 級(jí)中斷結(jié)構(gòu),全雙工串行口, 片內(nèi)晶振及時(shí)鐘電路。 系統(tǒng)采用以下方案: (1)采用 AT89S52 作為主控芯片; ( 2)顯示模塊使用 LCD1602 液晶顯示屏; ( 3)輸入模塊使用 4*4 矩陣鍵盤; ( 4) AC 清零按鍵使用獨(dú)立按鍵并接入單片機(jī)外部中斷引腳; ( 5)聲音提示開(kāi)關(guān)按鍵使用獨(dú)立按鍵并接入單片機(jī)外部中斷引腳; ( 6)平方和開(kāi)方按鍵由開(kāi)發(fā)板上的獨(dú)立按鍵實(shí)現(xiàn); ( 7)電源采用 LM7805 穩(wěn)壓電路。 方案一:采用 FPGA 控制 FPGA 是一種高密度的可編程邏輯器件 ,自從 Xilinx 公司 1985 年推出第一片F(xiàn)PGA以來(lái) ,FPGA的集成密度和性能提高很快 ,其集成密度最高達(dá) 500萬(wàn)門 /片以上 ,系統(tǒng)性能可達(dá) 200MHz。 通過(guò)本次設(shè)計(jì)的訓(xùn)練,可以使我在基本思路和基本方法上對(duì)基于 MCS51單片機(jī)的嵌入式系統(tǒng)設(shè)計(jì)有一個(gè)比較感性的認(rèn)識(shí),并具備一定程度的設(shè)計(jì)能力。除顯示計(jì)算結(jié)果外,還常有溢出指示、錯(cuò)誤指示等。 微型單片化 現(xiàn)在常規(guī)的單片機(jī)普遍都是將中央處理器 (CPU)、隨機(jī)存取數(shù)據(jù)存儲(chǔ) (RAM)等集成在一塊單一的芯片上 ,增強(qiáng)型的單片機(jī)集成了如 A/D 轉(zhuǎn)換器、 PMW(脈寬調(diào)制電路 )等都集成在單一的芯片上 ,這樣單片機(jī)包含的單元電路就更多 ,功能就越強(qiáng)大。由于這類單片機(jī)有極高的指令速度 ,可以使用軟件模擬其 I/O 功能 ,由此引入了虛擬外設(shè)的新概念。采用精簡(jiǎn)指令集 (RISC)結(jié)構(gòu)和流水線技術(shù) ,可以大幅度提高運(yùn)行速度。 關(guān)鍵詞 : 計(jì)算器 ; 單片機(jī) ; LCD; 矩陣鍵盤 II ABSTRACT Calculator generally refers to the electronic calculator, and the term is introduced to China by the Japanese. The calculator with the IC chip, simple structure, and weak function is able to perform mathematical operations on handheld machine. But it is easy using, simple operation and low price. So it is widely used in mercial transactions, and is also an essential office supplies. With the rapid development of science and technology in recent years, the application of SCM is the deepening and promote the traditional controlling detection technologies that are increasingly updated. In realtime detection and automatic control of microputer application system, the microcontroller is often used as a core ponent to use, but only the knowledge of the microcontroller is not enough, and should be based on the specific hardware architecture, hardware and software bination to make it perfect. So the application of SCM is more and more close to life, so using of single chip to achieve some electronic designs also bee easy. In the people daily life the calculator is one of the mon electronic products. But it is still in development, it will bee more powerful calculator in the future. According to such idea, the design is that SCM design calculator. The design system is based on AT89S52 microcontroller, P0 port as input, external 4X4 keyboard. In P1, P2mouth is connected with the drive circuit to ensure the normal work of LED. The calculator will plete add, subtract, multiply, divide and other function. Keywords: calculator, MCU, LCD, Matrix keyboard III 前 言 計(jì)算器( calculator。 近年來(lái)隨著科技的飛速發(fā)展,單片機(jī)的應(yīng)用正在不斷深入,同時(shí)帶動(dòng)傳統(tǒng)控制檢測(cè)技術(shù)日益更新。 系主任簽字 日期 教研室主任簽字 日期 指導(dǎo)教師簽字 日期 指 導(dǎo) 教 師 評(píng) 語(yǔ) 指導(dǎo)教師 : 年 月 日 青島理工大學(xué)畢業(yè)設(shè)計(jì) (論文 )評(píng)閱意見(jiàn)表 設(shè)計(jì) (論文 )題目 基于單片 機(jī)的計(jì)算器設(shè)計(jì) 評(píng)價(jià)項(xiàng)目 評(píng)價(jià)標(biāo)準(zhǔn) (A 級(jí) ) 滿分 評(píng) 分 A B C D E 文獻(xiàn)資料利用能力 能獨(dú)立地利用多種方式查閱中外文獻(xiàn);能正確翻譯外文資料;能正確有效地利用各種規(guī)范、設(shè)計(jì)手冊(cè)等。 青島理工大學(xué) 畢 業(yè) 論 文 題目: 基于單片機(jī)的計(jì)算器設(shè)計(jì) 學(xué)生姓名: 蘇起然 學(xué)生學(xué)號(hào): 20xx89051 院系名稱: 青島理工大學(xué) 機(jī)電工程系 專業(yè)班級(jí): 機(jī)械設(shè)計(jì)制造及其自動(dòng)化 091 班 指導(dǎo)教師: 武傳艷 20xx 年 06 月 15 日 畢業(yè)設(shè)計(jì) (論文 )任務(wù)書 專業(yè) 機(jī)械設(shè)計(jì)制造及其自動(dòng)化 班級(jí) 機(jī)升 091 姓名 蘇起然 下發(fā)日期 20xx0301 題目 基于單片機(jī)的計(jì)算器設(shè)計(jì) 專題 51 單片機(jī)的應(yīng)用 主 要 內(nèi) 容 及 要 求 設(shè)計(jì)內(nèi)容: 1)確定計(jì)算器的總體設(shè)計(jì) 2) 系統(tǒng)硬件設(shè)計(jì) 3)系統(tǒng)軟件設(shè)計(jì) 4)系統(tǒng)仿真及調(diào)試 設(shè)計(jì)要求: 能實(shí)現(xiàn)加、減、乘、除、開(kāi)方、平方、冪運(yùn)算等功能。 10 10 9 8 7 ≤ 6 綜合運(yùn)用能力 研究方案設(shè)計(jì)合理;設(shè)計(jì)方法科學(xué);技術(shù)線路先進(jìn)可行;理論分析和計(jì)算正確;動(dòng)手能力強(qiáng);能獨(dú)立完成設(shè)計(jì) (論文 );能綜合運(yùn)用所學(xué)知識(shí)發(fā)現(xiàn)和解決實(shí)際問(wèn)題;研究結(jié)果客觀真實(shí)。在實(shí)時(shí)檢測(cè)和自動(dòng)控制的單片機(jī)應(yīng)用系統(tǒng)中,單片機(jī)往往作為一個(gè)核心部件來(lái)使用,但僅單片機(jī)方面的知識(shí)是不夠的,還應(yīng)根據(jù)具體硬件結(jié)構(gòu)、軟硬 件結(jié)合,來(lái)加以完善。counter)一般是指 “電子計(jì)算器 ”,能進(jìn)行數(shù)學(xué)運(yùn)算的手持機(jī)器,擁有集成電路芯片,結(jié)構(gòu)簡(jiǎn)單,功能較弱,但由于它使用方便、操作簡(jiǎn)單、價(jià)格低廉,因而廣泛運(yùn)用于商業(yè)交易中,也是必備的辦公用品之一?,F(xiàn)指令速度最高者已達(dá) 100MIPS(Million Instruction Per Seconds,即兆指令每秒 ),單片機(jī)的發(fā)展現(xiàn)狀:使用壽命長(zhǎng);低電壓與低功耗化;發(fā)展速度越來(lái)越快;從 8 位、 16 位到 32 位,數(shù)不勝數(shù),應(yīng)有盡有,部分與主流 C51系列兼容,部分與之不兼容,它們各具特色,互補(bǔ)互成。 串行擴(kuò)展技術(shù) 在很長(zhǎng)一段時(shí)間里 ,通用型單片機(jī)通過(guò)三總線結(jié)構(gòu)擴(kuò)展外圍器件成為單片機(jī)應(yīng)用的主流結(jié)構(gòu)。甚至單片機(jī)廠商還可以根據(jù)用戶的要求量身定做 ,制造出具有自己特色的單片機(jī)芯片。計(jì) 算器電源采用交流轉(zhuǎn)換器或電池,電池可用交流轉(zhuǎn)換器或太陽(yáng)能轉(zhuǎn)換器再充電。 設(shè)計(jì)任務(wù) 。由于 FPGA 器件集成度高 ,方便易用 ,開(kāi)發(fā)和上市周期短 ,在數(shù)字設(shè)計(jì)和電子生產(chǎn)中得到迅速普及和應(yīng)用 ,并一度在高密度的可編程邏輯器件領(lǐng)域中獨(dú)占鰲頭。 系統(tǒng)總體模塊圖 圖 21 總體模塊圖 整個(gè)系統(tǒng)由電源給 51 單片機(jī)和 LCD 液晶顯示提供電源使其工作,當(dāng)外 接按鍵輸入有效數(shù)值和運(yùn)算模式時(shí),通過(guò)主控芯片實(shí)現(xiàn)整個(gè)系統(tǒng)的功能。 此外, AT89S52 可降至 0Hz 靜態(tài)邏 輯操作,支持 2種軟件可選擇節(jié)電模式。作為輸出口,每位能驅(qū)動(dòng) 8 個(gè) TTL 邏輯電平。作為輸入使用時(shí),被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流( IIL) 。 在使用 8 位地址(如 MOVX RI)訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器時(shí), P2口輸出 P2 鎖存器的內(nèi)容??撮T狗計(jì)時(shí)完成后, RST 腳輸出 96 個(gè)晶振周期的高電平。該位置位后,只有一條 MOVX 和 MOVC 指令才能將 ALE 激活。 XTAL2:來(lái)自反向振蕩器的輸出。復(fù)位后, P0~ P3 輸出高電平; SP 寄存器為 07H;其它寄存器全部清 0;不影響 RAM 狀態(tài)。每個(gè) 字節(jié)寫入周期是自身定時(shí)的,大多數(shù)約為 50us。 P1 口:作為輸入口,與鍵盤連接,實(shí)現(xiàn)數(shù)據(jù)的輸入 . 矩陣鍵盤的設(shè)計(jì)如圖 34 所示 : 12 圖 34 矩陣鍵盤 圖 34 矩陣鍵盤鍵值與其功能對(duì)應(yīng)表如表 32所 示: 表 32 按鍵功能對(duì)照 對(duì)照 鍵值 0 1 2 3 4 5 6 7 8 9 + / = . 功能 0 1 2 3 4 5 6 7 8 9 + / = 點(diǎn) LCD 顯示模塊設(shè)計(jì) LCD1602,工業(yè)字符型液晶,能夠同時(shí)顯示 16x02 即 32 個(gè)字符( 16 列 2行),故簡(jiǎn)稱 1602。 第 3 腳: V0 為液晶顯示器對(duì)比度調(diào)整端,接正電源時(shí)對(duì)比度最弱,接地時(shí)對(duì)比度最高,對(duì)比度過(guò)高時(shí)會(huì)產(chǎn)生“鬼影”,使用時(shí)可以通過(guò)一個(gè) 10K 的電位器調(diào)整對(duì)比度。 清零、音樂(lè)開(kāi)關(guān)、開(kāi)方和多次方 運(yùn)算功能模塊 設(shè)計(jì) 本設(shè)計(jì)要求在任何時(shí)候按下 AC清零鍵,都必須退出當(dāng)前操作,數(shù)據(jù)清零,準(zhǔn)備下一次的運(yùn)算,故應(yīng)采用獨(dú)立鍵盤產(chǎn)生下降沿輸入給單片機(jī)外部中斷處理。通過(guò)不同的程序?qū)崿F(xiàn)不同的功能,尤其是一些特殊的功能,通過(guò)使用單片機(jī)編寫的程序可以實(shí)現(xiàn)高智能、高效率以及高可靠性!因此我們采用單片機(jī)作為計(jì)算器的主要功能部件,可以很快地實(shí)現(xiàn)運(yùn)算功能。其程序框圖如圖 43 所示: 圖 43 清零程序流程圖 其程序如下: /***清零中斷程序 ******/ void EX0_int() interrupt 0 { if(beepflag==1) //若開(kāi)聲音則每一次按鍵均鳴叫 { beep=0。 lcd_setxy(0,0)。其