單片機(jī)期末課程設(shè)計(jì)報(bào)告_第1頁
單片機(jī)期末課程設(shè)計(jì)報(bào)告_第2頁
單片機(jī)期末課程設(shè)計(jì)報(bào)告_第3頁
單片機(jī)期末課程設(shè)計(jì)報(bào)告_第4頁
單片機(jī)期末課程設(shè)計(jì)報(bào)告_第5頁
已閱讀5頁,還剩28頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

《單片機(jī)與嵌入式系統(tǒng)》

課程設(shè)計(jì)報(bào)告

課題名稱:基于單片機(jī)控制的數(shù)字溫度計(jì)

學(xué)院:XXXXXXXXXXXXXXX學(xué)院

系:XXXXXXXXXXXXXXXXXXX系

班級(jí):XXXXXXX班

學(xué)號(hào):XXX

姓名:Xxx

【中文摘要】隨著科學(xué)技術(shù)的發(fā)展,單片機(jī)技術(shù)在人們

的生活中發(fā)揮著越來越重要的作用,其應(yīng)用的領(lǐng)域也在不斷

擴(kuò)大,在現(xiàn)代工業(yè)、科研、生活等各個(gè)領(lǐng)域得到了廣泛的應(yīng)

用,本文將介紹一種基于單片機(jī)控制的數(shù)字溫度計(jì),可以隨

時(shí)顯示當(dāng)前環(huán)境中的溫度,其附加功能是通過4x4鍵盤修改進(jìn)

入系統(tǒng)的密碼和退出系統(tǒng)。

【關(guān)鍵詞】AT89c51,溫度計(jì),DS18B20,AT24C02,12864

【英文摘要】Withthedevelopmentofscienceand

technology,SCMtechnologyinplayinganincreasingly

importantroleinpeople'slife,itsapplicationfieldsarealso

growing,livinginthemodernindustry,scientificresearch,and

otherfieldshasbeenwidelyused,thisarticleintroducesakind

ofdigitalthermometerbasedonsingle-chipmicrocomputer

control,candisplaythecurrentatanytimeintheenvironment

temperature,theadditionalfunctionismodifiedby4x4

keyboardenterthesystempasswordandexitsystem.

【關(guān)鍵詞】AT89c51,Thethermometer,DS18B20,

AT24C02,12864

目錄

引言4

第一章系統(tǒng)總體設(shè)計(jì)5

第二章硬件詳細(xì)設(shè)計(jì)5

2.1單片機(jī)主控模塊5

2.2按鍵輸入模塊9

2.3液晶顯不模塊10

2.4EEPROM模塊12

2.5溫度傳感器模塊14

第三章軟件詳細(xì)設(shè)計(jì)17

3.1系統(tǒng)主程序流程圖17

3.2按鍵輸入程序流程圖18

3.3液晶顯不程序流程圖19

3.4EEPROM讀寫程序流程圖20

3.5溫度采集程序流程圖22

第四章系統(tǒng)仿真23

4.1系統(tǒng)仿真原理圖23

4.2仿真結(jié)果23

第五章小結(jié)24

第六章附錄25

引言

隨著科學(xué)技術(shù)的發(fā)展,單片機(jī)技術(shù)在人們的生活中發(fā)揮著越

來越重要的作用,其應(yīng)用的領(lǐng)域也在不斷擴(kuò)大,在現(xiàn)代工業(yè)、科

研、生活等各個(gè)領(lǐng)域得到了廣泛的應(yīng)用,如工業(yè)測控、智能儀器

儀表、日用家電、通信產(chǎn)品,等等,這些都離不開單片機(jī)的應(yīng)用。

單片機(jī)已成為現(xiàn)代電子系統(tǒng)中最重要的智能化核心部件。

本課程設(shè)計(jì)是在學(xué)習(xí)了單片機(jī)的基本原理的基礎(chǔ)上進(jìn)行的,

綜合所學(xué)單片機(jī)知識(shí)完成一個(gè)單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)并進(jìn)行仿真,

從而加深對(duì)單片機(jī)知識(shí)的理解;進(jìn)一步熟悉和掌握單片機(jī)的內(nèi)部

結(jié)構(gòu)和工作原理,了解單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)的基本方法和步驟。

課程設(shè)計(jì)的目標(biāo)是用單片機(jī)和溫度傳感器及相關(guān)部件實(shí)現(xiàn)溫

度的測量和液晶顯示,并通過4x4鍵盤實(shí)現(xiàn)密碼的輸入及修改,

對(duì)各個(gè)功能模塊進(jìn)行相應(yīng)的設(shè)計(jì)和程序的編寫,最后在proteus軟

件上進(jìn)行仿真,實(shí)現(xiàn)目標(biāo)功能。

第一章系統(tǒng)總體設(shè)計(jì)

基于單片機(jī)控制的數(shù)字溫度計(jì)總體設(shè)計(jì)方框圖如下所示,主控

制器用AT89c51,溫度傳感器用DS18B20,用12864液晶顯示溫度信

息及相關(guān)設(shè)計(jì)信息,用4x4鍵盤實(shí)現(xiàn)進(jìn)入系統(tǒng)的密碼控制。

圖1;基于單片機(jī)控制的數(shù)字溫度計(jì)總體設(shè)計(jì)方框圖

第二章硬件詳細(xì)設(shè)計(jì)

2.1單片機(jī)主控模塊

2.1.1AT89C51簡要介紹

AT89C51是一種帶4K字節(jié)閃爍可編程可擦除只讀存儲(chǔ)器

(FPEROM一FalshProgrammableandErasableReadOnlyMemory)的

低電壓,高性能CMOS8位微處理器,俗稱單片機(jī)。該器件采用ATMEL

高密度非易失存儲(chǔ)器制造技術(shù)制造,與工業(yè)標(biāo)準(zhǔn)的MCS-51指令集和

輸出管腳相兼容。由于將多功能8位CPU和閃爍存儲(chǔ)器組合在單個(gè)

芯片中,ATMEL的AT89C51是一種高效微控制器,為很多嵌入式控制

系統(tǒng)提供了一種靈活性高且價(jià)廉的方案。

2.1.2引腳功能介紹

GND:接地。

P00:P0口為一個(gè)雙向8位三態(tài)I/O口,每個(gè)口可獨(dú)立控制,

內(nèi)部沒有上拉電阻,為高阻狀態(tài),不能正常地輸出高低電平,在使用

時(shí)務(wù)必要外接上拉電阻,一般選擇接入10千歐的上拉電阻。

Pl□:P1口是一個(gè)內(nèi)部提供上拉電阻的8位雙向I/O口,P1□

緩沖器能接收輸出4TTL門電流。P1口管腳寫入1后,被內(nèi)部上拉為

高,可用作輸入,P1口被外部下拉為低電平時(shí),將輸出電流,這是

由于內(nèi)部上拉的緣故。在FLASH編程和校驗(yàn)時(shí),P1口作為第八位地

址接收。

P2口:P2口為一個(gè)內(nèi)部上拉電阻的8位雙向I/O口,P2口緩沖

器可接收,輸出4個(gè)TTL門電流,當(dāng)P2口被寫“1”時(shí)一,其管腳被內(nèi)

部上拉電阻拉高,且作為輸入。并因此作為輸入時(shí),P2口的管腳被

外部拉低,將輸出電流。這是由于內(nèi)部上拉的緣故。P2口當(dāng)用于外

部程序存儲(chǔ)器或16位地址外部數(shù)據(jù)存儲(chǔ)器進(jìn)行存取時(shí),P2口輸出地

址的高八位。在給出地址“1”時(shí),它利用內(nèi)部上拉優(yōu)勢,當(dāng)對(duì)外部

八位地址數(shù)據(jù)存儲(chǔ)器進(jìn)行讀寫時(shí),P2口輸出其特殊功能寄存器的內(nèi)

容。P2口在FLASH編程和校驗(yàn)時(shí)接收高八位地址信號(hào)和控制信號(hào)。

P30:P3口管腳是8個(gè)帶內(nèi)部上拉電阻的雙向I/O口,可接收

輸出4個(gè)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(記時(shí)器0外部輸入)

P3.5T1(記時(shí)器1外部輸入)

P3.6/WR(外部數(shù)據(jù)存儲(chǔ)器寫選通)

P3.7/RD(外部數(shù)據(jù)存儲(chǔ)器讀選通)

P3口同時(shí)為閃爍編程和編程校驗(yàn)接收一些控制信號(hào)。

RST:復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時(shí),要保持RST腳兩個(gè)機(jī)器周

期的高電平時(shí)間。

ALE/PROG:當(dāng)訪問外部存儲(chǔ)器時(shí),地址鎖存允許的輸出電平用于

鎖存地址的地位字節(jié)。在FLASH編程期間,此引腳用于輸入編程脈沖。

在平時(shí),ALE端以不變的頻率周期輸出正脈沖信號(hào),此頻率為振蕩器

頻率的1/6。因此它可用作對(duì)外部輸出的脈沖或用于定時(shí)目的。然而

要注意的是:每當(dāng)用作外部數(shù)據(jù)存儲(chǔ)器時(shí),將跳過一個(gè)ALE脈沖。如

想禁止ALE的輸出可在SFR8EH地址上置0。此時(shí),ALE只有在執(zhí)行

MOVX,MOVC指令是ALE才起作用。另外,該引腳被略微拉高。如

果微處理器在外部執(zhí)行狀態(tài)ALE禁止,置位無效。

PSEN:外部程序存儲(chǔ)器的選通信號(hào)。在由外部程序存儲(chǔ)器取指期間,

每個(gè)機(jī)器周期兩次/PSEN有效。但在訪問外部數(shù)據(jù)存儲(chǔ)器時(shí),這兩次

有效的/PSEN信號(hào)將不出現(xiàn)。

EA/VPP:當(dāng)/EA保持低電平時(shí),則在此期間外部程序存儲(chǔ)器

(OOOOH-FFFFH),不管是否有內(nèi)部程序存儲(chǔ)器。注意加密方式1時(shí),

/EA將內(nèi)部鎖定為RESET;當(dāng)/EA端保持高電平時(shí),此間內(nèi)部程序存儲(chǔ)

器。在FLASH編程期間,此引腳也用于施加12V編程電源(VPP)o

XTAL1:反向振蕩放大器的輸入及內(nèi)部時(shí)鐘工作電路的輸入。

XTAL2:來自反向振蕩器的輸出。

2.1.3最小系統(tǒng)(晶振、復(fù)位)電路圖

最小系統(tǒng)(晶振、復(fù)位)電路圖如下圖所示。

P3.7TO

1±-P3.6/VVRHi

P3.5/T1

P3.4/T0Hi

1=P3.3)lNTrHi

D1土P3.2AWHg

R1P3.1/TXDl

P3.0^RXD

470R浸

<TEXT>LED-BIBYP2.7/A15

<TEXT>P2.6/A14

31

EAP2.5/A13Hi

ALEP2.4/A12

PSENP2.3/A11

P2.2/A10Hi

10uFP2.1/A9hg

<TEXT>P2.0/A8口

RSTP0.7/AD7Hi

P0.6/AD6嚏

P0.5/AD5

P|R2P0.4/AD4g

10kXTAL2P0.3/AD3

T<TEXT>

P0.2/AD2

P0.1/AD1

3L-aa.

>XTAL1P0.0/AD0

AT89C51

<TEXT>

X1

CRYSTAL

<TEXT>

C3C2

33pF33pF

<TEXT><TEXT>

圖2-1最小系統(tǒng)(晶振、復(fù)位)電路圖

2,2按鍵輸入模塊

2.2.1矩陣鍵盤與單片機(jī)硬件連接

下圖為protues中按鍵輸入模塊矩陣鍵盤與AT89C51連接的電路

圖,由圖可知,矩陣鍵盤的4行分別與單片機(jī)的PPO~P1A3相連,矩

2.2.2按鍵掃描原理

矩陣鍵盤兩端都與單片機(jī)的I/O口相連,在檢測時(shí)需認(rèn)為通過單

片機(jī)I/O口送出低電平。檢測時(shí),先拉低第一行的電平,檢測廠4列

有無鍵按下,如有則等待按鍵松開,返回鍵值,如無看第二行;拉低

第二行的電平,檢測1~4列有無鍵按下,如有則等待按鍵松開,返回

鍵值,如無看第三行;拉低第三行的電平,檢測廠4列有無鍵按下,

如有則等待按鍵松開,返回鍵值,如無看下行;拉低第四行的電平,

檢測1~4列有無鍵按下,如有則等待按鍵松開,返回鍵值,如無則返

回?zé)o鍵按下。

2.3液晶顯示模塊

簡要介紹12864引腳功能。

介紹12864與單片機(jī)的硬件連接。給出電路圖。

說明液晶顯示字符的原理。

2.3.112864引腳功能

12864引腳功能說明如下:

CS1,CS2一片選輸入信號(hào),分別用于選擇左屏和右屏,低電平有

GND一模塊的電源地

VCC一模塊的電源正端

VO—LCD驅(qū)動(dòng)電壓輸入端

DI—寄存器選擇控制線,Dl=l時(shí),表示進(jìn)行的是數(shù)據(jù)操作;DI=O

時(shí),表示進(jìn)行的是寫指令或者讀狀態(tài)操作

R/W一讀寫選擇信號(hào),R/W=l表示讀,R/W=O表示寫

E一讀寫使能信號(hào),在E的下降沿,數(shù)據(jù)被鎖存到列驅(qū)動(dòng)器

KS0108B,在E高電平期,數(shù)據(jù)被讀出

DB0~DB7—雙向數(shù)據(jù)總線,傳輸數(shù)據(jù)的通道

RST一復(fù)位,低電平有效

2.3.212864與單片機(jī)的硬件連接

下圖為protues中液晶顯示模塊12864液晶與AT89C51連接的電

路圖,由單片機(jī)的P2A3和P2A4引腳控制片選輸入信號(hào),DI、R/W、

E三個(gè)引腳分別由單片機(jī)的P2A0~P2A2三個(gè)引腳控制,DBCTDB7分別

與單片機(jī)的POAfTPO”相連。

LCD1

LGM12641BS1R

圖2-312864液晶與AT89C51連接的電路圖

2.3.3液晶顯示字符的原理

12864點(diǎn)陣液晶顯示模塊就是由128*64個(gè)液晶顯示點(diǎn)組成的一

個(gè)128歹『64行的陣列。每個(gè)顯示點(diǎn)對(duì)應(yīng)一位二進(jìn)制數(shù),1表示亮,0

表示滅。存儲(chǔ)這些點(diǎn)陣信息的RAM稱為顯示數(shù)據(jù)存儲(chǔ)器。要顯示某

個(gè)圖形或漢字就是將相應(yīng)的點(diǎn)陣信息寫入到相應(yīng)的存儲(chǔ)單元中。圖形

或漢字的點(diǎn)陣信息由自己設(shè)計(jì)?,問題的關(guān)鍵就是顯示點(diǎn)在液晶屏上的

位置(行和列)與其在存儲(chǔ)器中的地址之間的關(guān)系。

12864液晶屏實(shí)際上是由左右兩塊獨(dú)立的64*64液晶屏拼接而成,

每半屏有一個(gè)512*8bits顯示數(shù)據(jù)RAMo左右半屏驅(qū)動(dòng)電路及存儲(chǔ)器

分別由片選信號(hào)CS1和CS2選擇。

顯示點(diǎn)在64*64液晶屏上的位置由行號(hào)(line,0~63)與列號(hào)

(column,0-63)確定。512*8bitsRAM中某個(gè)存儲(chǔ)單元的地址由頁地

址(Xpage,0~7)和列地址(Yaddress,0~63)確定。每個(gè)存儲(chǔ)單元存儲(chǔ)

8個(gè)液晶點(diǎn)的顯示信息。為了使液晶點(diǎn)位置信息與存儲(chǔ)地址的對(duì)應(yīng)關(guān)

系更直觀關(guān),將64*64液晶屏從上至下8等分為8個(gè)顯示塊,每塊包

括8行*64列個(gè)點(diǎn)陣。每列中的8行點(diǎn)陣信息構(gòu)成一個(gè)8bits二進(jìn)制

數(shù),存儲(chǔ)在一個(gè)存儲(chǔ)單元中。存放一個(gè)顯示塊的RAM區(qū)稱為存儲(chǔ)頁。

即64*64液晶屏的點(diǎn)陣信息存儲(chǔ)在8個(gè)存儲(chǔ)頁中,每頁64個(gè)字節(jié),

每個(gè)字節(jié)存儲(chǔ)一列(8行)點(diǎn)陣信息。因此存儲(chǔ)單元地址包括頁地址

(Xpage,0~7)和列地址(Yaddress,0~63)o

2.4EEPROM模塊

2.4.1AT24C02的引腳

AT24co2的引腳如圖,各引腳功能如下:

SCL:串行時(shí)鐘輸入管腳,用于產(chǎn)生器件所有數(shù)據(jù)發(fā)送或接收的

時(shí)鐘。

SDA:雙向串行數(shù)據(jù)/地址管腳,用于器件所有數(shù)據(jù)的發(fā)送或接收。

AO、Al、A2:器件地址輸入端。這些輸入腳用于多個(gè)器件級(jí)聯(lián)

時(shí)設(shè)置器件地址,當(dāng)這些腳懸空時(shí)默認(rèn)值為0。使用AT24co2最大可

級(jí)聯(lián)8個(gè)器件,如果只有一個(gè)24co2被總線尋址,這三個(gè)地址輸入腳

AO、Al、A2可懸空或連接到VSS。

WP:寫保護(hù)。如果WP管腳連接到Vcc,所有的內(nèi)容都被寫保護(hù),

只能讀。當(dāng)WP管腳連接到Vss或懸空,允許器件進(jìn)行正常的讀/寫操

作。

VSS:電源地(GND)。

VCC:電源電壓(5V)

□vAT2482芯片有8個(gè)引腳,其中i

AQCPcc

至地址引期

27□WPA2~A0

SDA串行數(shù)據(jù)地址引劃,

36

A2J□SCLSCL串行時(shí)鐘?倒

Vss匚,2_□SOAWP因注到\區(qū)械寫保妒只能讀,連到

Yss或懸空允訐進(jìn)行正常的讀寫操作?

AT24O1菅腳示意圖VCC電源漏

GND接出t

2.4.2AT24C02與單片機(jī)的硬件連接

AT24C02的時(shí)鐘引腳和數(shù)據(jù)地址引腳分別接在單片機(jī)的P3A6引

腳和P3A7弓|腳,三個(gè)地址引腳和WP引腳直接接地。

圖2-4AT24C02與單片機(jī)的硬件連接

2.4.3AT24C02數(shù)據(jù)讀寫的原理

它通過SDA(串行數(shù)據(jù)線)及SCL串行時(shí)鐘線)兩根線在連到總線

上的器件之間傳送信息、,并根據(jù)地址識(shí)別每個(gè)器件。數(shù)據(jù)傳送:當(dāng)時(shí)

鐘線SCL為高電平時(shí),數(shù)據(jù)線SDA由高電平跳變?yōu)榈碗娖蕉x為“開

始”信號(hào),起始狀態(tài)應(yīng)處于任何其他命令之前;當(dāng)SCL線處于高電平

時(shí),SDA線發(fā)生低電平到高電平的跳變?yōu)椤敖Y(jié)束”信號(hào)。

2.5溫度傳感器模塊

2.5.1DS18B20引腳功能:

DS18B20引腳功能如下:

GND一電壓地

DQ一單數(shù)據(jù)總線

VDD—電源電壓

NC一空引腳

引腳排列

D4UJ0

引腳說明

GND-地

g-數(shù)據(jù)1加

依"可選VDD

MC-空腳

圖2-5DS18B20引腳圖

2.5.2DS18B20與單片機(jī)的硬件連接

DS18B20的DQ端與單片機(jī)的外部中斷0引腳相連,并通過上拉

電阻連到電源,VCC端連接電源,GND端接地。

P2.0/A8

P2.1/A9

P2.2/A10

P2.3/A11

P2.4/A12

P2.5/A13

P2.6/A14

P2.7/A15

P3.0/RXD

P3.1/TXD

P3.2)iNT0'

P3.3/iNlF

P3.4/T0

P3.5/I1

P3.6/WR

P3.7W

圖2-6DS18B20與單片機(jī)的硬件連接

2.5.3溫度采集的原理

DS18B20工作原理及應(yīng)用:DS18B20的溫度檢測與數(shù)字?jǐn)?shù)據(jù)輸

出全集成于一個(gè)芯片之上,從而抗干擾力更強(qiáng)。其一個(gè)工作周期可分

為兩個(gè)部分,即溫度檢測和數(shù)據(jù)處理。在講解其工作流程之前我們有

必要了解18B20的內(nèi)部存儲(chǔ)器資源。18B20共有三種形態(tài)的存儲(chǔ)器資

源,它們分別是:ROM只讀存儲(chǔ)器,用于存放DS18B20ID編碼,

其前8位是單線系列編碼(DS18B20的編碼是19H),后面48位是芯

片唯一的序列號(hào),最后8位是以上56的位的CRC碼(冗余校驗(yàn))。數(shù)

據(jù)在出產(chǎn)時(shí)設(shè)置不由用戶更改。DS18B2O共64位ROM。RAM數(shù)據(jù)

暫存器,用于內(nèi)部計(jì)算和數(shù)據(jù)存取,數(shù)據(jù)在掉電后丟失,DS18B20共

9個(gè)字節(jié)RAM,每個(gè)字節(jié)為8位。第1、2個(gè)字節(jié)是溫度轉(zhuǎn)換后的數(shù)

據(jù)值信息、,第3、4個(gè)字節(jié)是用戶EEPROM(常用于溫度報(bào)警值儲(chǔ)存)

的鏡像。在上電復(fù)位時(shí)其值將被刷新。第5個(gè)字節(jié)則是用戶第3個(gè)

EEPROM的鏡像。第6、7、8個(gè)字節(jié)為計(jì)數(shù)寄存器,是為了讓用戶得

到更高的溫度分辨率而設(shè)計(jì)的,同樣也是內(nèi)部溫度轉(zhuǎn)換、計(jì)算的暫存

單元。第9個(gè)字節(jié)為前8個(gè)字節(jié)的CRC碼。EEPROM非易失性記憶體,

用于存放長期需要保存的數(shù)據(jù),上下限溫度報(bào)警值和校驗(yàn)數(shù)據(jù),

DS18B2O共3位EEPROM,并在RAM都存在鏡像,以方便用戶操作。

DS18B20只需要接到控制器(單片機(jī))的一個(gè)I/O口上,由于單

總線為開漏所以需要外接一個(gè)4.7K的上拉電阻。如要采用寄生工作

方式,只要將-VDD電源引腳與單總線并聯(lián)即可。

第三章軟件詳細(xì)設(shè)計(jì)

3.1系統(tǒng)主程序流程圖

3.2按鍵輸入程序流程圖

3.3液晶顯示程序流程圖

3.4EEPROM讀寫程序流程圖

寫操作流程

讀操作流程

3.5溫度采集程序流程圖

第四章系統(tǒng)仿真

4.1系統(tǒng)仿真原理圖

4.2仿真結(jié)果

LCD1

LGU12G?1B81R

請(qǐng)輸入密碼:余丹

Z013Z56Z

簡易溫度計(jì)設(shè)計(jì)

x:N°oao-

g§5^5ziuiSS

bb—LLb]

■N)sE)■ftft3I3

IM□r,nwr-

二;

第五章小結(jié)

本系統(tǒng)實(shí)現(xiàn)了期末設(shè)計(jì)題目的所有要求,包括進(jìn)入系統(tǒng)前先輸

入密碼,判斷密碼正確再進(jìn)入系統(tǒng),進(jìn)入系統(tǒng)后顯示設(shè)計(jì)者信息,延

時(shí)顯示主菜單,按鍵選擇菜單內(nèi)容,按鍵修改系統(tǒng)密碼,按鍵退出系

統(tǒng)等功能。

在這次的課程設(shè)計(jì)中,我學(xué)到了很多東西。在畫protues仿真圖

前要先確定自己做的設(shè)計(jì)的目的功能,選好每個(gè)功能對(duì)應(yīng)的的函數(shù)模

塊需要的芯片,將芯片與單片機(jī)主控制模塊的引腳進(jìn)行正確有條理的

連接,最后再根據(jù)仿真圖以及各芯片的驅(qū)動(dòng)程序編寫源代碼。在編寫

程序的過程中,一定要注意各個(gè)引腳與單片機(jī)I/O口的對(duì)應(yīng)的連接,

否則即使源代碼寫好了仿真還會(huì)出錯(cuò),且很難找到錯(cuò)誤點(diǎn)O

老師是在四周前布置的期末設(shè)計(jì)作業(yè),在這四周中,老師也講

解了很多關(guān)于這個(gè)課程設(shè)計(jì)的思路以及代碼的編寫,在寫這份課程

設(shè)計(jì)報(bào)告的時(shí)候我還通過翻閱資料和查閱文庫加深了更多關(guān)于

AT24co2、DS18B20.12864液晶、4x4鍵盤等的硬件知識(shí)的了解。

但系統(tǒng)還有一些不足之處,比如在顯示溫度的時(shí)候第一次總會(huì)

顯示+85.0C,以自己目前的知識(shí)還不能做到將這個(gè)缺點(diǎn)進(jìn)行更好的改

正,我會(huì)在日后的學(xué)習(xí)中對(duì)此進(jìn)行更加完善的改進(jìn)。

第六章附錄

#include<reg51.h>

#include<string.h>

#defineucharunsignedchar

#defineuintundsignedint

externvoidLCDInitialize();

externvoidDisplayString(ucharp,ucharl,uchar*s);

externvoidClearScreen();

externfloatReadTemperature();

externvoidDisplayChar8X16(ucharp,ucharI,ucharc);

externvoidWriteString(ucharadd,uchar*s);

externvoidReadString(uchar*s,ucharadd.ucharn);

externucharkeyscan();

ucharPassword[7];

ucharUserPassword口="000000";〃使用者輸入的密碼

ucharkeyval;

ucharTempBuffer[]="+000.0C";

voidDelayxms(intx)

(

inti;

ucharj;

for(i=0;i<x;i++)

for(j=0;j<120;j++);

}

voidlnputPassword()

(

uchari,keyJine=O;

for(i=0;i<6;i++)

key=keyscan();

while(key>9)

key=keyscan();

)

UserPassword[i]=key+48;

DisplayChar8X16(2,line/*,);

line=line+8;

)

while(key!=15)

(

key=keyscan();

)

}

voidCheckPassword()

(

ReadStringfPassword.OxOO/G);

Delayxms(200);

while(strcmp(UserPassword,Password)!=0)

ClearScreen();

DisplayString(O,O,"密碼錯(cuò)誤");

Delayxms(2000);

ClearScreen();

Displaystring。。,"請(qǐng)重新輸入

lnputPassword();

)

ClearScreenf);

DisplayString(O,O,"密碼Right");

DisplayString(2,0,"歡迎進(jìn)入系統(tǒng)");

D

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論