版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
單片機技術(shù)應(yīng)用實踐課程設(shè)計報告單片機原理與接口技術(shù)課程設(shè)計報告簡易計算器設(shè)計摘要近年來隨著科技的飛速發(fā)展,單片機的應(yīng)用正在不斷深入,同時帶動傳統(tǒng)控制檢測技術(shù)日益更新。在實時檢測和自動控制的單片機應(yīng)用系統(tǒng)中,單片機往往作為一個核心部件來使用,僅單片機方面知識是不夠的,還應(yīng)根據(jù)具體硬件結(jié)構(gòu)軟硬件結(jié)合,加以完善。計算器是人們的日常生活中是最常見的電子產(chǎn)品之一,它應(yīng)用極廣、發(fā)展迅猛,并且不斷出現(xiàn)著擁有更加強大功能的計算器。為了解和研究計算器,本次課設(shè)設(shè)計制作了一個簡易計算器,能夠在十四位的計算范圍內(nèi)進行“+”、“-”、“*”、“/”的基本運算,能進行負數(shù)以及小數(shù)點后兩位的精確結(jié)果顯示。該計算器以AT89C51單片機芯片作為核心,采用7SEG-MPX-8-CC顯示屏進行顯示。完成的計算器經(jīng)過檢驗?zāi)軌蛲暾膶崿F(xiàn)預(yù)設(shè)功能,各種細節(jié)完善,具有很高的使用價值。關(guān)鍵詞單片機AT89C51簡易計算器74LS138目錄第1章緒論 第1章緒論1.1設(shè)計意義單片機是一種運用大規(guī)模集成電路技術(shù)將中央處理器(
CPU
)和數(shù)據(jù)存儲器(
RAM
)、程序存儲器(
RO
)及一些其他
I
/O通信口集成于一塊芯片中。單片機又稱單片微控制器,它不是完成某一個邏輯功能的芯片,而是把一個計算機系統(tǒng)集成到一個芯片上。相當(dāng)于一個微型的計算機,和計算機相比,單片機只缺少了
I
/
O
設(shè)備。它具有攜帶方便、小巧輕便、價錢實惠等優(yōu)點,能夠幫助我們深入了解其應(yīng)用和開發(fā)提供方便。現(xiàn)在單片機的運用領(lǐng)域已經(jīng)非常普遍,如生活中的洗衣機、電風(fēng)扇等家庭器件,工業(yè)上的各種儀表等等都運用著單片機,這使單片機在現(xiàn)在越來越不可或缺。在單片機中主要包含
CPU
、只讀存儲器
ROM
和隨機存儲器
RAM
等,多樣化數(shù)據(jù)采集與控制系統(tǒng)能夠讓單片機完成各項復(fù)雜的運算,無論是對運算符號進行控制,還是對系統(tǒng)下達運算指令都能通過單片機完成。由此可見,單片機憑借著強大的數(shù)據(jù)處理技術(shù)和計算功能可以在智能電子設(shè)備中充分應(yīng)用。1.2設(shè)計目的簡易計算器具有顯示清晰直觀,讀數(shù)準確,保證讀數(shù)的客觀性與準確性,同時它符合人們的讀數(shù)習(xí)慣,能縮短讀數(shù)和記錄的時間,具備標志符顯示功能,包括測量項目符號、單位符號和特殊符號。準確度高,分辨率高,它是指所能顯示的最小數(shù)字(零除外)與最大數(shù)字的百分比。擴展能力強,測量速率快,輸入阻抗高,在測量時從被測電路上吸取的電流極小,不會影響被測信號源的工作狀態(tài),能減小由信號源內(nèi)阻引起的測量誤差??垢蓴_能力強,集成度高,微功耗。1.3設(shè)計內(nèi)容用51單片機完成設(shè)計。能夠進行兩位數(shù)加減乘除運算。具有復(fù)位和刪除功能。第2章總體設(shè)計方案2.1總體設(shè)計AT89C51單片機的介紹:AT89C51單片機是一種帶4K字節(jié)閃爍可編程可擦除只讀存儲器的低電壓、高性能CMOS
8位微處理器。在這次設(shè)計中我主要涉及到該單片機的MCS-51
兼容特性、實現(xiàn)16位定時器/計數(shù)器特性、實現(xiàn)可編程串行通道特性、低功耗的閑置和掉電模式等特性”。如圖
2-1所示為總體方案設(shè)計圖。圖2.1系統(tǒng)設(shè)計框圖2.2方案論證計算器電路包括四個部分:輸入部分,控制部分,轉(zhuǎn)換部分,輸出部分。具體如下:輸入部分:由按鍵開關(guān)構(gòu)成構(gòu)成矩陣鍵盤,能夠在GPIO有限的情況下,擴展盡可能多的按鍵??刂撇糠郑篈T89C51作為系統(tǒng)控制部分,其低頻范圍穩(wěn)定性好,操作方便,體積小,普及率高。轉(zhuǎn)換部分:以74LS138譯碼器為轉(zhuǎn)換部分,將輸入信號轉(zhuǎn)換為對應(yīng)輸出信號。輸出部分:7SEG-MPX8-CC由八個共陰二極管組成,其使用簡單,模式固定,便于移植到各種程序,且微功耗,體積小,顯示內(nèi)容豐富。
第3章硬件的選擇本課程設(shè)計的電路主要由單片機AT89C51、譯碼器74LS138,顯示器7SEG-MPX8-CC。3.1AT89C51AT89C51是美國INTEL公司生產(chǎn)的低電壓,高性能CM0S8位單片機,片內(nèi)含業(yè)4kbytes的可反復(fù)擦寫的只讀程序存儲器(PEROA1)和128bytes的隨機存取數(shù)據(jù)存儲器(RA),器件采用ATMEL公司的高密度、非易失性存儲技術(shù)生產(chǎn),兼容標準MCs-51指令系統(tǒng),片內(nèi)置通用8位中央處理器(CPU)和Flash存儲單元,功能強大AT89C51單片機能提供許多高性價比的應(yīng)用場合,可靈活應(yīng)用于各種控制領(lǐng)域。AT89C51管腳說明,如圖3.1所示:圖3.1AT89C51管腳圖P0口:P0口為一個8位漏級開路雙向I/O口,每腳可吸收8TTL門電流。當(dāng)P0口的管腳第一次寫1時,被定義為高阻輸入,P0能夠用于外部程序數(shù)據(jù)存儲器,它可以被定義為數(shù)據(jù)/地址的第八位。在FIASH編程時,P0口作為原碼輸入口,當(dāng)FIASH進行校驗時,P輸出原碼,此時P0外部必須被拉高。P1口:P1口是一個內(nèi)部提供上拉電阻的8位雙向I/O口,P1口緩沖器能接收輸出4TTL門電流。P1口管腳寫入1后,被內(nèi)部上拉為高,可用作輸入,P1口被外部下拉為低電平時,將輸出中流。P2口:P2口為一個內(nèi)部上拉電阻的8位雙向I/O口,P2口緩沖器可接收,輸出4個TTL門電流,當(dāng)P2口被寫“1”時,其管腳被內(nèi)部上拉電阻拉高,且作為輸入。并因此作為輸入時,P2口的管腳被外部拉低,將輸出電流。P2口當(dāng)用于外部程序存儲器或16位地址外部數(shù)據(jù)存儲器進行存取時,P2口輸出地址的高八位,在給出地址“1”時,利用內(nèi)部上拉優(yōu)勢,當(dāng)對外部八位地址數(shù)據(jù)存儲器進行讀寫時,P2口輸出其特殊功能寄存器的內(nèi)容。P2口在FLASH編程和校驗時接收高八位地址信號和控制信號。P3口:P3口管腳是8個帶內(nèi)部上拉電阻的雙向I/O口,可接收輸出4個TTL門電流。當(dāng)P3口寫入“1”后,它們被內(nèi)部上拉為高電平,并用作輸入。作為輸入,由于外部下拉為低電平,P3口將輸出電流(ILL)這是由于上拉的緣故。P3口也可作為AT89C51的一些特殊功能口。P3.0RXD(串行輸入口)P3.1TXD(串行輸出口)P3.2/INT0(外部中斷0)P3.3/INT1(外部中斷1)P3.4T0(記時器0外部輸入)P3.5T1(記時器1外部輸入)P3.6/WR(外部數(shù)據(jù)存儲器寫選通)P3.7/RD(外部數(shù)據(jù)存儲器讀選通)P3口同時為閃爍編程和編程校驗接收一些控制信號。
RST:復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時,要保持RST腳兩個機器周期的高電平時間。
ALE/PRO:當(dāng)訪問外部存儲器時,地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在FLASH編程期間,此引腳用于輸入編程脈沖。在平時,ALE端以不變的頻率周期輸出正脈沖信號,此頻率為振蕩器頻率的1/6。因此它可用作對外部輸出的脈沖或用于定時目的。然而要注意的是:每當(dāng)用作外部數(shù)據(jù)存儲器時,將跳過一個ALE脈沖。如想禁止ALE的輸出可在SFR8EH地址上置0。此時,ALE只有在執(zhí)行MOYX,MOVC指令是ALE才起作用。/PSEN:外部程序存儲器的選通信號。在由外部程序存儲器取指期間,每個機器周期兩次/PSEN有效。但在訪問外部數(shù)據(jù)存儲器時,這兩次有效的/PSEN信號將不出現(xiàn)。/EA/VPP:當(dāng)/EA保持低電平時,則在此期間外部程序存儲器(0000-FFFFH),不管是否有內(nèi)部程序存儲器。注意加密方式1時,/EA將內(nèi)部鎖定為RESET;當(dāng)/EA端保持高電平時,此間內(nèi)部程序存儲器。在FLASH編程期間,此引腳也用于施加12Y程電源(VPP)。
XTAL:反向振蕩放大器的輸入及內(nèi)部時鐘工作電路的輸入。XTAL2:來自反問振蕩器的輸出。3.2譯碼器74LS138譯碼器是一類多輸入多輸出組合邏輯電路器件,其可以分為:變量譯碼和顯示譯碼兩類。變量譯碼器一般是一種較少輸入變?yōu)檩^多輸出的器件,常見的有n線-2^n線譯碼和8421BCD碼譯碼兩類;顯示譯碼器用來將二進制數(shù)轉(zhuǎn)換成對應(yīng)的七段碼,一般其可分為驅(qū)動LED和驅(qū)動LCD兩類。變量譯碼器是一個將n個輸入變?yōu)?^n個輸出的多輸出端的組合邏輯電路。其中輸入變化的所有組合中,每個輸出為1的情況僅一次,由于最小項在真值表中僅有一次為1,所以輸出端為輸入變量的最小項的組合。74LS138是3-8線譯碼器。引腳功能:A0~A2:地址輸入端STA(E1):選通端/STB(/E2)、/STC(/E3):選通端(低電平有效)(低電平有效)/Y0~/Y7:輸出端VCC:電源正GND:地A0~A2對應(yīng)Y0——Y7;AO,A1,A2以二進制形式輸入,然后轉(zhuǎn)換成十進制,對應(yīng)相應(yīng)Y的序號輸出低電平,其他均為高電平。其引腳如圖3.2。功能表如圖3.3,。圖3.274LS138管腳圖圖3.374LS138功能表3.37SEG-MPX8-CC7SEG-MPX8-CC共陰極數(shù)碼管是一類數(shù)字形式的顯示屏,通過對其不同的管腳輸入相對的電流,會使其發(fā)亮,從而顯示出數(shù)字能夠顯示
時間、日期、溫度等所有可用數(shù)字表示的參數(shù)。由于它的價格便宜、使用簡單、在電器,特別是家電領(lǐng)域應(yīng)用極為廣泛,空調(diào)、熱水器、冰箱等等。絕大多數(shù)熱水器用的都是數(shù)碼管,其他家電也用液晶屏與熒光屏。如圖3.3所示。圖3.37SEG-MPX8-CC
第4章電路設(shè)計4.1單片主模塊機電路根據(jù)要求可以畫出主體單片機電路,如圖4.1所示。該電路模塊目的是為了嵌入程序之后控制系統(tǒng)的運行和對應(yīng)按鍵的操作。AT89C51有32個I
/
O
口線,兩個16位定時/計數(shù)器,其中該實訓(xùn)運用到了P0的所有口,P1的所有口,P3的3~5口。AT89C51可降至
OHz
的靜態(tài)邏輯操作,并支持兩種軟件可選的節(jié)電工作模式??臻e方式停止
CPU
的工作,但允許
RAM
,定時/計數(shù)器,串行通信口及中斷系統(tǒng)繼續(xù)工作。掉電方式保存
RAM
中的內(nèi)容,但振蕩器停止工作并禁止其它所有部件工作直到下一個硬件復(fù)位。圖4.1主體單片機電路4.2控制模塊電路由于需要滿足輸入不同信號的要求,再利用73LS138的轉(zhuǎn)換將信息傳送給主體單片機電路。如下圖3.2所示,控制電路。圖4.2控制電路4.3顯示模塊電路此設(shè)計運用7SEG-MPX8-CC,此外,
PO
口需要連接一個排阻
RESPACK
-8為了上拉電阻,主要是
PO
口不能輸出高電平且輸出電流達不到
ImA
,無法為其接的負載提供電流。具體顯示模塊電路如圖4.4所示。顯示模塊程序主要進行讀寫指令,以控制數(shù)碼顯像管的顯示。如下圖4.3所示,顯示模塊電路。圖4.3顯示模塊電路
4.4總電路設(shè)計主要運用
C
語言和單片機來進行編程,程序主要分為三個部分,分別是:主模塊、顯示模塊和控制模塊。主模塊程序主要是初始化設(shè)置,并且處理所輸入的按鍵。鍵盤模塊程序主要是與74LS138結(jié)合,讀取按鍵的情況。此電路以AT89C51為主體。將單片機電路,控制模塊電路,顯示模塊電路三個模塊連接起來,然后得到總電路,如圖4.4所示,總電路,其可實現(xiàn)想要達到的目的和要求。圖4.4總電路
第5章軟件設(shè)計5.1各功能模塊設(shè)計延時部分:voiddelay(u16t){u16x,y; for(x=t;x>0;x--) for(y=116;y>0;y--);譯碼器3進8出:voiddisplay(){LSA=0;LSB=0;LSC=0; GPIO_DIG=duanxuan[box[7]]; delay(5);GPIO_DIG=0x00;(略)矩陣按鍵(賦值):voidKeyDown(void){u16a=0;GPIO_KEY=0x0f;if(GPIO_KEY!=0x0f){delay(100);if(GPIO_KEY!=0x0f){GPIO_KEY=0x0f;switch(GPIO_KEY)是否松手:while((a<50)&&(GPIO_KEY!=0xf0)){delay(100);a++;}清零:elseif(KeyValue==14){for(i=0;i<8;i++)box[i]=0;display();}加法:elseif(KeyValue==10){a=box[0]+box[1]*10+box[2]*100+box[3]*1000+box[4]*10000+box[5]*100000+box[6]*1000000+box[7]*10000000; for(i=0;i<8;i++)box[i]=0; while(1)(略)
乘法:elseif(KeyValue==12){a=box[0]+box[1]*10+box[2]*100+box[3]*1000+box[4]*10000+box[5]*100000+box[6]*1000000+box[7]*10000000;for(i=0;i<8;i++)box[i]=0;while(1)(略) 減法:elseif(KeyValue==11){a=box[0]+box[1]*10+box[2]*100+box[3]*1000+box[4]*10000+box[5]*100000+box[6]*1000000+box[7]*10000000;for(i=0;i<8;i++)box[i]=0;while(1)(略)除法:elseif(KeyValue==13){a=box[0]+box[1]*10+box[2]*100+box[3]*1000+box[4]*10000+box[5]*100000+box[6]*1000000+box[7]*10000000;for(i=0;i<8;i++)box[i]=0;while(1)
第6章系統(tǒng)調(diào)試6.1第一次調(diào)試仿真系統(tǒng)關(guān)于加法運算的調(diào)試:圖6.1加法運算6.2第二次調(diào)試仿真系統(tǒng)關(guān)于乘法運算的調(diào)試:圖6.2乘法運算
6.3第三次調(diào)試仿真系統(tǒng)關(guān)于減法運算的調(diào)試:圖6.3減法運算6.4第四次調(diào)試仿真系統(tǒng)關(guān)于除法運算的調(diào)試:圖6.4
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026年南昌影視傳播職業(yè)學(xué)院單招職業(yè)適應(yīng)性考試題庫及答案詳解1套
- 2026年唐山職業(yè)技術(shù)學(xué)院單招職業(yè)傾向性考試題庫及參考答案詳解1套
- 2026年浙江師范大學(xué)行知學(xué)院單招職業(yè)傾向性測試題庫及參考答案詳解
- 2026年湖南電子科技職業(yè)學(xué)院單招職業(yè)技能測試題庫及參考答案詳解一套
- 天津市五區(qū)縣重點校聯(lián)考2024-2025學(xué)年高二上學(xué)期11月期中生物試題含答案
- 仲愷教師面試題及答案
- 云南省中醫(yī)院面試題及答案
- 2025年重慶標準件工業(yè)有限責(zé)任公司招聘28人備考題庫及完整答案詳解一套
- 2025年浙江浙商融資租賃有限公司招聘備考題庫及1套完整答案詳解
- 2025年中國黃金集團香港有限公司社會公開招聘備考題庫附答案詳解
- 2025年北京市建筑施工作業(yè)人員安全生產(chǎn)知識教育培訓(xùn)考核試卷E卷及答案
- 中鐵群安員培訓(xùn)
- 2024年云南省第一人民醫(yī)院招聘考試真題
- 2025急性高甘油三酯血癥胰腺炎康復(fù)期多學(xué)科管理共識解讀
- 思政大一考試試卷及答案
- 2025年事業(yè)單位面試熱點題目及答案解析
- 湖北省宜昌市秭歸縣2026屆物理八年級第一學(xué)期期末學(xué)業(yè)水平測試模擬試題含解析
- 采用煙氣擋板法再熱汽溫控制系統(tǒng)的研究
- 班組長培訓(xùn)課件(36張)
- 工程竣工預(yù)驗收會議紀要模板
- 公路水運工程施工企業(yè)主要負責(zé)人和安全生產(chǎn)管理人員模擬試題庫含答案
評論
0/150
提交評論