LCD1602籃球比賽計時計分器本科畢業(yè)設(shè)計_第1頁
LCD1602籃球比賽計時計分器本科畢業(yè)設(shè)計_第2頁
LCD1602籃球比賽計時計分器本科畢業(yè)設(shè)計_第3頁
LCD1602籃球比賽計時計分器本科畢業(yè)設(shè)計_第4頁
LCD1602籃球比賽計時計分器本科畢業(yè)設(shè)計_第5頁
已閱讀5頁,還剩34頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、本科畢業(yè)設(shè)計題 目 lcd1602籃球比賽計時計分器 學(xué) 院 管理科學(xué)與工程學(xué)院 專 業(yè) 電子信息工程 摘要本課題設(shè)計采用單片機at89c51為核心,設(shè)計出籃球計分計時系統(tǒng),可以實現(xiàn)單節(jié)比賽12分鐘倒計時、24秒進攻時間倒計時、開始/暫停倒計時、改變節(jié)次、單節(jié)結(jié)束報警、兩隊比分分別加1分、加2分、加3分等各種顯示效果。本系統(tǒng)利用lcd1602液晶顯示器作為顯示器件,顯示節(jié)次、12分鐘倒計時、24秒倒計時、主客隊雙方比分,通過3*3矩陣鍵盤來控制計時器和計數(shù)器工作,單節(jié)比賽結(jié)束時led發(fā)光二極管閃爍報警。該設(shè)計采用lcd1602液晶顯示器,因為其微功耗、小體積、使用靈活等諸多優(yōu)點在袖珍式儀表和低

2、功耗應(yīng)用系統(tǒng)中得到越來越廣泛的應(yīng)用,通過仿真基本上實現(xiàn)了上述功能,操作簡單,性能穩(wěn)定,符合一般籃球計分器的工作要求。關(guān)鍵詞:at89c51;矩陣鍵盤;lcd1602;計數(shù)器;計時器abstractthis design project using at89c51 microcontroller as the core, design basketball scoring timing system, countdown to a single game of 12 minutes, 24 seconds shot clock countdown, start / pause and chang

3、e the section, a single end alarm, the teams were, respectively, add 1 point, 2 points, plus 3 grading a variety of display.this system uses the lcd1602 lcd monitor as a display, display session, 12 minutes 24 seconds of the countdown, countdown to the main visiting team score by 3 * 3 matrix keyboa

4、rd to control the timer and counter, led blinks when a single end of the game alarm.the design uses lcd1602 lcd display to get more and more widely in the pocket-sized instrument and low-power applications because of its micro-power, small size, the use of flexible and many other advantages through

5、simulation basically realize the above functions, the operation simple, stable performance, in line with the general basketball scoring requirements.key word: at89c51;matrix keyboard;lcd1602;counter;timer目 錄1引言11.1 本課題選取的目的及意義11.2 本系統(tǒng)的主要研究內(nèi)容22系統(tǒng)分析32.1 系統(tǒng)構(gòu)成32.2 系統(tǒng)工作原理33系統(tǒng)硬件設(shè)計43.1 系統(tǒng)硬件總體設(shè)計43.2 at89c51

6、單片機53.2.1 at89c51簡介53.2.2 主要特性63.2.3 管腳說明73.2.4 芯片擦出93.2.5 空閑節(jié)電模式93.2.6 掉電模式103.2.7 程序儲存器的加密113.2.8 at89c51的極限參數(shù)113.3 lcd1602液晶顯示模塊113.3.1顯示器介紹113.4 3*3矩陣鍵盤模塊153.5 時鐘電路模塊163.6 復(fù)位電路模塊173.7 元件清單174系統(tǒng)軟件設(shè)計185 protues isis軟件仿真225.1 proteus運行流程225.2 proteus功能仿真225.3 proteus仿真結(jié)果236結(jié)論24參考文獻(xiàn)25致謝26附錄271引言進入21

7、世紀(jì),伴隨著電子、信息技術(shù)的應(yīng)用與迅速普及,人們對電子技術(shù)的要求越來越高。當(dāng)今社會,科學(xué)技術(shù)日新月異,時代前進的步伐越邁越寬,應(yīng)用自動化設(shè)備,計算機處理,現(xiàn)代化通訊,數(shù)字化信息,現(xiàn)代化顯示設(shè)備等高新技術(shù)而建立的現(xiàn)代化智能。目前單片機滲透到我們生活的各個領(lǐng)域,幾乎很難找到哪個領(lǐng)域沒有單片機的蹤跡。導(dǎo)彈的導(dǎo)航裝置,飛機上各種儀表的控制,計算機的網(wǎng)絡(luò)通訊與數(shù)據(jù)傳輸,工業(yè)自動化過程的實時控制和數(shù)據(jù)處理,廣泛使用的各種智能ic卡,民用豪華轎車的安全保障系統(tǒng),錄像機、攝像機、全自動洗衣機的控制,以及程控玩具、電子寵物等等,這些都離不開單片機。更不用說自動控制領(lǐng)域的機器人、智能儀表、醫(yī)療器械了。因此,單片機

8、的學(xué)習(xí)、開發(fā)與應(yīng)用將造就一批計算機應(yīng)用與智能化控制的科學(xué)家、工程師。通過此次基于單片機設(shè)計的籃球計時計分系統(tǒng),我們可以更清楚詳細(xì)的了解單片機程序設(shè)計的基本指令功能、編程步驟和技巧來講述單片機編程,并對at89s51單片機的結(jié)構(gòu)和原理進行講述,以及基于單片機開發(fā)應(yīng)用的相關(guān)芯片的工作原理,和相關(guān)外圍電路的設(shè)計和調(diào)試過程進一步了解,有助于今后的工作和學(xué)習(xí)生活。 1.1 本課題選取的目的及意義體育比賽計時計分系統(tǒng)是對體育比賽過程中所產(chǎn)生的時間,比分等數(shù)據(jù)信息進行快速采集記錄、加工處理、傳遞和利用的系統(tǒng)。根據(jù)運動項目的不同,比賽規(guī)則要求也不同,體育比賽的計時計分系統(tǒng)包括測量類,評分類,命中類,制勝類和得

9、分類等多種類型?;@球比賽是根據(jù)運動隊員在規(guī)定的比賽時間里得分多少來決定勝負(fù)的,因此,籃球比賽的計時計分系統(tǒng)是一種得分類型的系統(tǒng)。籃球比賽的計時計分系統(tǒng)由計時器、計分器等多種電子設(shè)備組成的,同時,根據(jù)目前高水平籃球比賽要求,完善的籃球比賽計時計分系統(tǒng)設(shè)備應(yīng)能夠與現(xiàn)場成績處理,現(xiàn)場大屏幕,電視轉(zhuǎn)播車等多種設(shè)備相聯(lián),以便實現(xiàn)激烈的比賽現(xiàn)場感和表演娛樂等功能目標(biāo)。由于單片機的集成度高,功能強,通用性好,特別是它具有體積小,重量輕,能耗低,價格便宜,可靠性高,抗干擾能力強和使用方便等獨特的優(yōu)點,使單片機迅速得到了推廣應(yīng)用,目前已經(jīng)成為測量控制應(yīng)用系統(tǒng)中的優(yōu)選機種和新電子產(chǎn)品的關(guān)鍵部位。世界各大電氣廠家,

10、測控技術(shù)企業(yè),機電行業(yè),競相把單片機應(yīng)用于產(chǎn)品更新,作為實現(xiàn)數(shù)字化,智能化的核心部件?;@球計時計分器就是以單片機為核心的計時計分系統(tǒng),由計時器,計分器,綜合控制器和24秒控制器等組成。1.2 本系統(tǒng)的主要研究內(nèi)容隨著單片機在各個領(lǐng)域的廣泛應(yīng)用,許多用單片機做控制的球賽計時計分系統(tǒng)也應(yīng)運而產(chǎn)生,如用單片機控制lcd液晶顯示器計時計分器,用單片機控制led七段顯示器計時計分器等?;@球比賽計時計分器是為了解決籃球比賽時計分與計時準(zhǔn)確的問題。此裝置利用單片機at89c51完成了計時和計分的功能。本文詳細(xì)地介紹了系統(tǒng)硬件與軟件的設(shè)計過程,采用該裝置可根據(jù)實際情況進行比分修改和時間的準(zhǔn)確顯示,具有低功耗,

11、可靠性,安全性以及低成本等特點。本次設(shè)計用由at89c51編程控制lcd作顯示的球賽計時計分系統(tǒng)。該系統(tǒng)具有賽程時間倒計時、暫停,及時刷新甲、乙雙方的成績等功能。它具有價格低廉,性能穩(wěn)定,操作方便并且易于攜帶等特點。廣泛適合各類學(xué)?;蛘咝⌒蛨F體作為賽程計時計分。通過本次基于c51系列籃球計時計分器的設(shè)計,可以了解、熟悉有關(guān)單片機開發(fā)設(shè)計的過程,并加深對單片機的理解和應(yīng)用以及掌握單片機與外圍接口的一些方法和技巧,這主要表現(xiàn)在以下一些方面:(1) 籃球賽計時計分系統(tǒng)包含了8051系列單片機的最小應(yīng)用系統(tǒng)的構(gòu)成,同時在此基礎(chǔ)上擴展了一些使用性強的外圍接口。(2) 可以了解到lcd顯示器的結(jié)構(gòu)、工作原

12、理以及這種顯示器的接口實例與具體連接與編程方法。(3) 怎樣利用串行口來擴展顯示接口等。2系統(tǒng)分析 2.1系統(tǒng)構(gòu)成主機顯示電路復(fù)位電路鍵盤電路時鐘電路報警電路圖2.1 系統(tǒng)構(gòu)成框圖本系統(tǒng)的基本電路模塊有:51單片機控制模塊,時鐘電路模塊,復(fù)位電路模塊,3*3矩陣鍵盤電路模塊,lcd顯示電路模塊。2.2系統(tǒng)工作原理打開proteus仿真電路圖,按下軟件下方的“開始”圖標(biāo),啟動系統(tǒng),再按下矩陣鍵盤上第一行第一列的“開始”按鍵,系統(tǒng)開始工作,這時,lcd1602液晶顯示器依次從上到下分別顯示“1”、“12:00”、“24”、“a:000b:000”,分別表示“第1節(jié)”、“每一節(jié)的比賽時間12分鐘倒計

13、時”、“每一隊的進攻時間倒計時24秒”、“a和b兩隊的比分”。當(dāng)按下第一行第二列的“暫?!辨I時,兩個倒計時都暫停,再按下“開始”按鍵,倒計時繼續(xù)進行,當(dāng)?shù)谝还?jié)比賽結(jié)束時,12分鐘倒計時和24秒倒計時到0,這是led發(fā)光二極管快速地閃爍幾次,這時按下第一行第三列的“改變節(jié)次”按鍵,節(jié)次加1,到第二節(jié),依次可以顯示第1節(jié)到第4節(jié)。lcd1602液晶顯示器中下一行的a隊與b隊的比分可以通過矩陣鍵盤第二行第三行的6個按鍵分別控制,依次為a隊加1分、a隊加2分、a隊加3分、b隊加1分、b隊加2分、b隊加3分。通過以上操作,從而實現(xiàn)籃球計時計分器的基本操作。3系統(tǒng)硬件設(shè)計3.1 系統(tǒng)硬件總體設(shè)計at89c

14、51控制器時鐘電路復(fù)位電路3*3矩陣鍵盤電路lcd液晶顯示電路led二極管報警圖3.1 系統(tǒng)整體電路圖將設(shè)計的通信系統(tǒng)硬件進行模塊化設(shè)計,主要由以下模塊構(gòu)成:a : at89c51 單片機最小系統(tǒng),控制的核心部件;b : 3*3矩陣鍵盤電路;c : lcd1602液晶顯示電路;d : led發(fā)光二極管報警電路;e : 復(fù)位電路;f : 時鐘電路。3.2 at89c51單片機3.2.1 at89c51簡介mcs51是指由美國intel公司生產(chǎn)的一系列單片機的總稱,這一系列單片機包括了很多品種,如8031,8051,8751,8032,8052,8752等,其中8051是最早最典型的產(chǎn)品,該系列其

15、它單片機都是在8051的基礎(chǔ)上進行功能的增、減、改變而來的,所以人們習(xí)慣于用8051來稱呼mcs51系列單片機,而8031是前些年在我國最流行的單片機,所以很多場合會看到8031的名稱。intel公司將mcs51的核心技術(shù)授權(quán)給了很多其它公司,所以有很多公司在做以8051為核心的單片機,當(dāng)然,功能或多或少有些改變,以滿足不同的需求,其中89c51就是這幾年在我國非常流行的單片機,它是由美國atmel公司開發(fā)生產(chǎn)的。本課題中用到的芯片就是at系列中的at89c51單片機芯片。at89c51是一個低電壓,高性能cmos 8位單片機,片內(nèi)含4k bytes的可反復(fù)擦寫的flash只讀程序存儲器和12

16、8 bytes的隨機存取數(shù)據(jù)存儲器(ram),器件采用atmel公司的高密度、非易失性存儲技術(shù)生產(chǎn),兼容標(biāo)準(zhǔn)mcs-51指令系統(tǒng),內(nèi)置功能強大的微型計算機的at89c51提供了高性價比的解決方案。at89c51具有pdip、pqfp/tqfp及plcc等三種封裝形式,以適應(yīng)不同產(chǎn)品的需求。它是一個低功耗高性能單片機,40個引腳,32個外部雙向輸入/輸出(i/o)端口,同時內(nèi)含2個外中斷口,2個16位可編程定時計數(shù)器,2個全雙工串行通信口,at89c51可以按照常規(guī)方法進行編程,也可以在線編程。其將通用的微處理器和flash存儲器結(jié)合在一起,特別是可反復(fù)擦寫的flash存儲器可有效地降低開發(fā)成本

17、。如圖所示,圖3.2為at89c51單片機基本構(gòu)造,其基本性能介紹如下:圖3.2 at89c51引腳圖at89c51本身內(nèi)含40個引腳,32個外部雙向輸入/輸出(i/o)端口,同時內(nèi)含2個外中端口,2個16位可編程定時計數(shù)器,2個全雙工串行通信口,at89c51可以按照常規(guī)方法進行編程,也可以在線編程。其將通用的微處理器和flash存儲器結(jié)合在一起,特別是可反復(fù)擦寫的flash存儲器可有效地降低開發(fā)成本。3.2.2 主要特性at89c51的主要特性如下表所示:兼容mcs51指令系統(tǒng)4k可反復(fù)擦寫(1000次)flash rom32個雙向i/o口可編程uarl通道兩個16位可編程定時/計數(shù)器全靜

18、態(tài)操作0-24mhz1個串行中斷128x8bit內(nèi)部ram兩個外部中斷源共6個中斷源可直接驅(qū)動led3級加密位低功耗空閑和掉電模式軟件設(shè)置睡眠和喚醒功能表3.1 at89c51主要功能描述3.2.3 管腳說明vcc:供電電壓。gnd:接地。p0口:p0口為一個8位漏級開路雙向i/o口,每腳可吸收8ttl門電流。當(dāng)p1口的管腳第一次寫1時,被定義為高阻輸入。p0能夠用于外部程序數(shù)據(jù)存儲器,它可以被定義為數(shù)據(jù)/地址的第八位。在fiash編程時,p0 口作為原碼輸入口,當(dāng)fiash進行校驗時,p0輸出原碼,此時p0外部必須被拉高。p1口:p1口是一個內(nèi)部提供上拉電阻的8位雙向i/o口,p1口緩沖器能

19、接收輸出4ttl門電流。p1口管腳寫入1后,被內(nèi)部上拉為高,可用作輸入,p1口被外部下拉為低電平時,將輸出電流,這是由于內(nèi)部上拉的緣故。在flash編程和校驗時,p1口作為第八位地址接收。p2口:p2口為一個內(nèi)部上拉電阻的8位雙向i/o口,p2口緩沖器可接收,輸出4個ttl門電流,當(dāng)p2口被寫“1”時,其管腳被內(nèi)部上拉電阻拉高,且作為輸入。并因此作為輸入時,p2口的管腳被外部拉低,將輸出電流。這是由于內(nèi)部上拉的緣故。p2口當(dāng)用于外部程序存儲器或16位地址外部數(shù)據(jù)存儲器進行存取時,p2口輸出地址的高八位。在給出地址“1”時,它利用內(nèi)部上拉優(yōu)勢,當(dāng)對外部八位地址數(shù)據(jù)存儲器進行讀寫時,p2口輸出其特

20、殊功能寄存器的內(nèi)容。p2口在flash編程和校驗時接收高八位地址信號和控制信號。p3口:p3口管腳是8個帶內(nèi)部上拉電阻的雙向i/o口,可接收輸出4個ttl門電流。當(dāng)p3口寫入“1”后,它們被內(nèi)部上拉為高電平,并用作輸入。作為輸入,由于外部下拉為低電平,p3口將輸出電流(ill)這是由于上拉的緣故。p3口也可作為at89c51的一些特殊功能口,如下表所示:表3-2 at89c51特殊功能表:端口引腳第二功能p3.0rxd(串行輸入口)p3.1txd(串行輸出口)p3.2/int0(外部中斷0)p3.3/int1(外部中斷1)p3.4t0(記時器0外部輸入)p3.5t1(記時器1外部輸入)p3.6

21、/wr(外部數(shù)據(jù)存儲器寫選通)p3.7/rd(外部數(shù)據(jù)存儲器讀選通)p3口同時為閃爍編程和編程校驗接收一些控制信號。rst:復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時,要保持rst腳兩個機器周期的高電平時間。ale/prog:當(dāng)訪問外部存儲器時,地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在flash編程期間,此引腳用于輸入編程脈沖。在平時,ale端以不變的頻率周期輸出正脈沖信號,此頻率為振蕩器頻率的1/6。因此它可用作對外部輸出的脈沖或用于定時目的。然而要注意的是:每當(dāng)用作外部數(shù)據(jù)存儲器時,將跳過一個ale脈沖。如想禁止ale的輸出可在sfr8eh地址上置0。此時, ale只有在執(zhí)行movx,movc指

22、令是ale才起作用。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行狀態(tài)ale禁止,置位無效。/psen:外部程序存儲器的選通信號。在由外部程序存儲器取指期間,每個機器周期兩次/psen有效。但在訪問外部數(shù)據(jù)存儲器時,這兩次有效的/psen信號將不出現(xiàn)。/ea/vpp:當(dāng)/ea保持低電平時,則在此期間外部程序存儲器(0000h-ffffh),不管是否有內(nèi)部程序存儲器。注意加密方式1時,/ea將內(nèi)部鎖定為reset;當(dāng)/ea端保持高電平時,此間內(nèi)部程序存儲器。在flash編程期間,此引腳也用于施加12v編程電源(vpp)。xtal1:反向振蕩放大器的輸入及內(nèi)部時鐘工作電路的輸入。xtal2:來自反

23、向振蕩器的輸出。3.2.4 芯片擦出整個perom陣列和三個鎖定位的電擦除可通過正確的控制信號組合,并保持ale管腳處于低電平10ms 來完成。在芯片擦操作中,代碼陣列全被寫“1”且在任何非空存儲字節(jié)被重復(fù)編程以前,該操作必須被執(zhí)行。此外,at89c51設(shè)有穩(wěn)態(tài)邏輯,可以在低到零頻率的條件下靜態(tài)邏輯,支持兩種軟件可選的掉電模式。在閑置模式下,cpu停止工作。但ram,定時器,計數(shù)器,串口和中斷系統(tǒng)仍在工作。在掉電模式下,保存ram的內(nèi)容并且凍結(jié)振蕩器,禁止所用其他芯片功能,直到下一個硬件復(fù)位為止。3.2.5 空閑節(jié)電模式at89c51有兩種可用軟件編程的省電模式,它們是空閑模式和掉電工作模式。

24、這兩種方式是控制專用寄存器pcon(電源控制寄存器)中的pd(pcon.1)和idl(pcon.0)位來實現(xiàn)的。pd是掉電模式,當(dāng)pd=1時,激活掉電工作模式,單片機進入掉電工作狀態(tài),idl是空閑等待狀態(tài),當(dāng)idl=1時,激活空閑工作模式,單片機進入睡眠狀態(tài),如需同時進入兩種工作模式,即pd和idl同時為1,則先激活掉電工作模式。在空閑工作模式狀態(tài),cpu保持睡眠狀態(tài)而所有片內(nèi)的外設(shè)仍保持激活狀態(tài),這種方式由軟件產(chǎn)生。此時,片內(nèi)ram和所有特殊功能寄存器的內(nèi)容保持不變??臻e模式可由任何允許的中斷請求或者硬件復(fù)位終止。終止空閑工作模式的方法有兩種其一是任何一條被允許中斷的事件被激活,idl(pc

25、on.0)被硬件清除,即刻終止空閑工作模式。程序會首先響應(yīng)中斷,進入中斷服務(wù)程序,執(zhí)行完中斷服務(wù)程序并緊隨reti(中斷返回)指令后,下一條要執(zhí)行的指令就是使單片機進入空閑模式那條指令后面的一條指令。其二是通過硬件復(fù)位也可以將空閑工作模式終止。需要注意的是,當(dāng)由硬件復(fù)位來終止空閑工作模式時,cpu通常是從激活模式那條指令的下一條指令開始繼續(xù)執(zhí)行程序的,要完成內(nèi)部復(fù)位操作,硬件復(fù)位脈沖要保持兩個機器周期(24個時鐘周期)有效,在這種情況下,內(nèi)部禁止cpu訪問片內(nèi)ram,而允許訪問其他端口。為了避免對端口產(chǎn)生意外寫入,激活空閑模式的那條指令的后一條指令不應(yīng)是一條對端口或者外部存儲器的寫入指令。3.

26、2.6 掉電模式在掉電模式下,振蕩器停止工作,進入掉電模式的指令是最后一條被執(zhí)行的指令,片內(nèi)ram和特殊功能寄存器的內(nèi)容在終止掉電模式前被凍結(jié)。推出掉電模式的唯一方法是硬件復(fù)位。復(fù)位后將重新定義全部特殊功能寄存器但不改變ram中的內(nèi)容,在vcc恢復(fù)到正常工作電平前,復(fù)位應(yīng)無效,且必須保持一定時間以使振蕩器重新啟動并且穩(wěn)定的工作??臻e和掉電模式外部引腳狀態(tài)如表2-3所示:表3-3 外部引腳狀態(tài)表模式空閑模式空閑模式掉電模式掉電模式程序存儲器內(nèi)部外部內(nèi)部外部ale1100/prog1100p0數(shù)據(jù)浮空數(shù)據(jù)浮空p1數(shù)據(jù)數(shù)據(jù)數(shù)據(jù)數(shù)據(jù)p2數(shù)據(jù)數(shù)據(jù)數(shù)據(jù)數(shù)據(jù)p3浮空浮空數(shù)據(jù)數(shù)據(jù)3.2.7 程序儲存器的加密a

27、t89c51可使用對芯片上的三個加密位lb1、lb2、lb32進行編程(p)或者不進行編程(u)。當(dāng)加密位lb1被編程時,在復(fù)位期間,ea斷的邏輯電平被采樣并鎖存,如果單片機上電后一直沒有服位,則鎖存起的初始值是一個隨機數(shù),這個隨機數(shù)會保存到真正復(fù)位為止。3.2.8 at89c51的極限參數(shù)表3-4 極限參數(shù)表工作溫度-55c to +125c儲藏溫度-65c to +150c任一引腳對地電壓-1.0v to +7.0 v最高工作電壓6.0v直流輸出電流15.0ma3.3 lcd1602液晶顯示模塊3.3.1 顯示器介紹顯示器是最常用的輸出設(shè)備,其種類繁多,但在單片機系統(tǒng)設(shè)計中最常用的是發(fā)光二

28、極管顯示器(led)和液晶顯示器(lcd)兩種。由于這兩種顯示器結(jié)構(gòu)簡單,價格便宜,接口容易實現(xiàn),因而得到廣泛的應(yīng)用。發(fā)光二極管led,組成的顯示屏,每個點都是一個或多個發(fā)光二極管,通過控制電路控制二極管的亮與滅來控制點的發(fā)光,從而使整個大屏幕顯示圖案。 液晶顯示器lcd最常見的就是tft類型的,它是由光源,液晶光柵,和控制芯片組成,他的光源是常亮的白色強光,當(dāng)光線通過液晶光柵(液晶屏)的時候,通過電壓改變液晶顆粒濾光方向,從而改變每個點的顏色和強度來顯示圖案。液晶顯示器分很多種類,按顯示方式可分為段式,行點陣式和全點陣式。段式與數(shù)碼管類似,行點陣式一般是英文字符,全點陣式可顯示任何信息, 如

29、漢字、圖形、圖表等。兩者之間的區(qū)別:(1)二極本身發(fā)光, 液晶本身不發(fā)光,只是透射光。 (2)二極管體積大,圖像質(zhì)量一般,適合作室外大屏幕,價格較低。液晶成本較高,面積無法做得很大,但圖像質(zhì)量很好,適合做顯示器。 (3)二極管耗電大,液晶耗電小。(4)二極管圖像刷新率低,液晶的高。二者的檔次相差比較大,一般來講在一些圖像簡單,對成本控制較嚴(yán)格的場合,用二極管,比如商場、銀行等服務(wù)部門的電子提示窗,街道、百貨公司外面的廣告宣傳窗;而液晶一般都是作計算機顯示器、電視、手持設(shè)備等對圖像質(zhì)量要求高的場合。下面介紹lcd1602液晶顯示的結(jié)構(gòu)、工作原理及其接口電路。市面上字符液晶絕大多數(shù)是基于hd447

30、80液晶芯片的,控制原理是完全相同的,因此hd44780寫的控制程序可以很方便地應(yīng)用于市面上大部分的字符型液晶。字符型lcd通常有14條引腳線或16條引腳線的lcd,多出來的2條線是背光電源線vcc(15腳)和地線gnd(16腳),其控制原理與14腳的lcd完全一樣,本設(shè)計采用lm016l同時顯示16x02即32個字符(16列2行),各引腳功能定義如下表所示:管腳號名稱電平功能描述1vss0v電源地2vdd5.0v電源正極3vee液晶顯示偏壓信號4rsh/lh:數(shù)據(jù)線上為數(shù)據(jù)信號,l:數(shù)據(jù)線上為指令信號5rwh/lh:讀數(shù)據(jù)模式,l:寫數(shù)據(jù)信號6eh/l使能信號端714db0db7h/l數(shù)據(jù)線

31、表3-5 lm016l引腳說明表hd44780內(nèi)置了ddram、cgrom和cgram。ddram就是顯示數(shù)據(jù)ram,用來寄存待顯示的字符代碼。共80個字節(jié),其地址和屏幕的對應(yīng)關(guān)系如下表:顯示位置123456740ddram地址第一行00h01h02h03h04h05h06h27h第二行40h41h42h43h44h45h46h67h表3-6 ddram地址與屏幕對應(yīng)關(guān)系要在lcd1602屏幕的第一行第一列顯示一個a字,就要向ddram的00h地址寫入“a”字的代碼就行了。但具體的寫入是要按lcd模塊的指令格式來進行的。在1602中我們就用前16個就行了。第二行也一樣用前16個地址。對應(yīng)如下:

32、00h01h02h03h04h05h06h07h08h09h0ah0bh0ch0dh0eh0fh40h41h42h43h44h45h46h47h48h49h4ah4bh4ch4dh4eh4fh表3-7 ddram地址與顯示位置的對應(yīng)關(guān)系文本文件中每一個字符都是用一個字節(jié)的代碼記錄的。一個漢字是用兩個字節(jié)的代碼記錄。在pc上我們只要打開文本文件就能在屏幕上看到對應(yīng)的字符是因為在操作系統(tǒng)里和bios里都固化有字符字模。字模就代表了是在點陣屏幕上點亮和熄滅的信息數(shù)據(jù)。例如“a”01110 10001 10001 10001 11111 10001 10001圖3-3 a的字模上圖左邊的數(shù)據(jù)就是字模數(shù)

33、據(jù),右邊就是將左邊數(shù)據(jù)用“”代表0,用“”代表1。在lcd模塊上也固化了字模存儲器,這就是cgrom和cgram。hd44780內(nèi)置了192個常用字符的字模,存于字符產(chǎn)生器cgrom(character generator rom)中,另外還有8個允許用戶自定義的字符產(chǎn)生ram,稱為cgram(character generator ram)。下圖說明了cgrom和cgram與字符的對應(yīng)關(guān)系。表38 cgrom中字符碼與字模關(guān)系對照表從上圖可以看出,“a”字的對應(yīng)上面高位代碼為0100,對應(yīng)左邊低位代碼為0001,合起來就是01000001,也就是41h??梢娝拇a與我們pc中的字符代碼是基

34、本一致的。因此我們在向ddram寫c51字符代碼程序時甚至可以直接用p1a這樣的方法。pc在編譯時就把“a”先轉(zhuǎn)為41h代碼了。在lcd顯示電路中at89c51的 p0 口作為8 位數(shù)據(jù)的輸出端,p1.5、p1.6、p1.7 作為控制信號的輸出端,連接完成的電路如圖3.16所示。該顯示器的rs,rw,e端與p2相連,引腳的作用分別是:rs=0輸入指令,rs=1輸入數(shù)據(jù),rw=0向lcd寫入指令或數(shù)據(jù),rw=1從lcd讀取信息,e是使能信號。d0d7與p0相連是數(shù)據(jù)總線。respack-8排阻,阻值為10k,作為上拉電阻。圖3.4 lcd1602液晶顯示led發(fā)光二極管顯示電路如下,正極接p24

35、,負(fù)極接地,當(dāng)p24為低電平時,發(fā)光二極管不亮,當(dāng)p24為高電平時,發(fā)光二極管亮。圖3.5 發(fā)光二極管電路3.4 3*3矩陣鍵盤模塊本設(shè)計共有9個設(shè)置按鍵,分別為開始,暫停,改變節(jié)次,a加1分,a加2分,a加3分,b加1分,b加2分,b加3分。分別表示啟動系統(tǒng)倒計時,暫停倒計時,改變節(jié)次顯示,a隊比分加1分,a隊比分加2分,a隊比分加3分,b隊比分加1分,b隊比分加2分,b隊比分加3分,按鍵與p1口相接。其電路圖如圖3.6。圖3.6 3*3矩陣鍵盤3輸入與門and_3用來控制p10,p11,p12三列中斷,當(dāng)這三列中任何一列有鍵按下時,產(chǎn)生低電平,與門輸出為0,表示有鍵按下;反之,當(dāng)這三列中沒

36、有任一按鍵被按下時,與門輸入全1,輸出為1,表示沒有鍵被按下。其電路圖如圖3.7。圖3.7 3輸入與門and_33.5 時鐘電路模塊時鐘電路在單片機系統(tǒng)中起著非常重要的作用,是為保證系統(tǒng)正常工作的基礎(chǔ),在一個單片機系統(tǒng)中,時鐘是保障系統(tǒng)正常工作的基準(zhǔn)震蕩定時信號。圖3.8是晶振電路,主要有晶振和外圍電路組成,晶振頻率大小決定單片機的快慢,我們這里采用的是12mhz,另外有2個33p的電容。其中接地用來削減諧波對電路的穩(wěn)定性的影響。圖3.8 時鐘電路3.6 復(fù)位電路模塊單片機系統(tǒng)的復(fù)位電路我們采用的是上電加按鈕的復(fù)位電路形式,電阻采用220歐的阻值,采用22的電容。其電路連接方式如圖3.9。當(dāng)單

37、片機的復(fù)位引腳reset出現(xiàn)2個機器周期以上的高電平時,單片機就執(zhí)行復(fù)位操作。圖3.9 復(fù)位電路3.7 元件清單單片機at89c511液晶顯示器lm016l1排阻respack-81按鍵9 與門and_31發(fā)光二極管led-yellow1電阻10k1晶振11.0592m1電容33pf2電容10uf14系統(tǒng)軟件設(shè)計籃球比賽計分計時器其實就是一個計數(shù)器,本課程設(shè)計就是利用單片機中的定時/計數(shù)器來實現(xiàn)其計時的功能,利用按鍵實現(xiàn)其計分的功能。在51單片機中有兩個16位的定時/計數(shù)器to、t1,分別由th0、tl0和th1、tl1組成,它們均是8位寄存器,在特殊功能寄存器中占地址8ah-8dh。它們用于

38、存放定時或計數(shù)的初始值。此外,內(nèi)部還有一個8位的方式寄存器tmod和一個8位的控制寄存器tcon,用于選擇和控制定時/計數(shù)器的工作,其格式見下面兩表:表4.1 方式寄存器tmodgatec/tm1m0gatec/tm1m0門控開關(guān)計數(shù)/定時方式選擇門控開關(guān)計數(shù)/定時方式選擇 表4.2 控制寄存器tcontf1tr1tf0tr0ie1it1ie0it0t1請求有無t1工作啟/停t0請求有無t0工作啟/停int1請求有無int1方式下沿int0請求有無int0方式下沿籃球比賽計分器利用單片機的計數(shù)器進行工作,計數(shù)器隊脈沖電平進行加一計數(shù),直至計滿回零。作為可編程器件,單片機中的定時/計數(shù)器初始化編

39、程步驟如下:根據(jù)定時時間要求或計數(shù)要求計算計數(shù)器初值:將工作方式控制字寫入tmod寄存器;將計數(shù)初值寫入thx和tlx寄存器;啟動定時器/計數(shù)器,即將trx置位。如果工作于中斷方式,需置位ea(中斷總開關(guān))及etx(允許定時/計數(shù)器中斷),并編寫中斷服務(wù)程序。本次課程設(shè)計程序是用c語言編寫的,因為設(shè)計的功能較為簡單,所以程序中只用到一個主程序就實現(xiàn)了其功能。本單片機的按鍵采用矩陣形式,3*3的行列矩陣,共9個按鍵,可以完成多種控制功能。鍵盤控制流程如下:開始有按鍵?獲取鍵值顯示鍵值按鍵處理返回yn系統(tǒng)初始化程序包括定時器to、t1初始化、lcd初始化、全局變量初始化,初始化步驟如下:開始定時器

40、t0、t1初始化lcd初始化全局變量初始化返回系統(tǒng)啟動時,先要進行定時器t0,t1及l(fā)cd的初始化,t0控制每一小節(jié)12分鐘和24秒的倒計時時間,t1控制按鍵延時掃描。按鍵與p1口相接,讀取p1口的數(shù)據(jù)判斷是否有按鍵按下,若沒有按鍵按下則繼續(xù)返回讀取p1口的數(shù)據(jù)。若有按鍵按下就判斷是哪個鍵按下,各個鍵的作用是:開始,暫停,節(jié)次加一;a隊加一分,a隊加二分,a隊加三分;b隊加一分,b隊加二分,b隊加三分。等待按鍵釋放并將時間,分?jǐn)?shù),節(jié)次經(jīng)p0,p2口輸出在lcd上顯示。每一節(jié)12分鐘和24秒倒計時結(jié)束時,led發(fā)光二極管閃爍報警,其總的流程圖如下圖4.1。定時器t0,t1,lcd初始化顯示當(dāng)前時

41、間讀取p1口的值是否有鍵按下?哪個鍵按下?y開始暫停節(jié)次a加一a加二a加三b加一b加二b加三等按鍵釋放將時間、分?jǐn)?shù)、節(jié)次經(jīng)p0、p2口輸出顯示n開始圖4.1 總的程序流程圖5 protues isis軟件仿真5.1 proteus運行流程proteus isis的工作界面是一種標(biāo)準(zhǔn)的windows界面,如圖所示。包括:標(biāo)題欄、主菜單、標(biāo)準(zhǔn)工具欄、繪圖工具欄、狀態(tài)欄、對象選擇按鈕、預(yù)覽對象方位控制按鈕、仿真進程控制按鈕、預(yù)覽窗口、對象選擇器窗口、圖形編輯窗口。運行proteus程序后,進入軟件的主界面。通過左側(cè)工具欄中的p(從庫中選擇元件命令)命令,在pick devices 左側(cè)窗口中選擇所需

42、元件的關(guān)鍵字,然后放置元件并調(diào)整方向和位置以及參數(shù)設(shè)置,最后進行連線。圖5.1 proteus isis的工作界面5.2 proteus功能仿真proteus仿真時,單片機需要加載程序,加載程序為.hex文件。本設(shè)計利用keil vision2,在新建keil項目時選擇at89c52單片機作為cpu,將c語言源程序?qū)?,在“options for target”對話窗口中,選中“output”選項中的“create hex file”,編譯鏈接后就可以生成 .hex文件。在proteus isis中,選中at89c51并單擊鼠標(biāo)左鍵,對at89c51進行設(shè)置,設(shè)置單片機時鐘頻率為12mhz,按

43、照正確的文件路徑加載.hex文件。對單片機設(shè)置完畢后就可以開始仿真了。仿真過程中如有硬件問題可在proteus isis中直接修改,如有軟件問題可在keil vision2中直接修改,通過keil與proteus的聯(lián)合調(diào)試就可以得到滿意的結(jié)果。最后載入hex文件后可以進行模擬仿真,可以全速運行也可以單步調(diào)試運行。單擊play按鈕,進入仿真狀態(tài)仿真按鈕如圖5-2所示,其中按鈕1為開始運行,按鈕2為step,按鈕3為暫停,按鈕4為停止。圖5.2 仿真按鈕單擊運行按鈕,啟動 proteus isis 仿真。5.3 proteus仿真結(jié)果圖5.3 仿真結(jié)果6 結(jié)論在本次畢業(yè)設(shè)計,我通過基于典型單片機a

44、t89c51的設(shè)計和應(yīng)用,對于單片機工作原理,功能有了宏觀的了解,并對單片機匯編程序的應(yīng)用有了新的、進一步的認(rèn)識。在本次設(shè)計的過程中,我發(fā)現(xiàn)很多的問題,給我的感覺就是下手很難,很不順手,看似很簡單的電路,要動手把它給設(shè)計出來,是很難的一件事,主要原因是我們沒有經(jīng)常動手設(shè)計過電路。另外單片機系統(tǒng)的知識似懂非懂,而且很多知識當(dāng)時弄明白了,現(xiàn)在要用的時候又不記得,造成我用了大量的時間去查閱各種資料和程序命令,因此整個過程時間安排不合理。由于設(shè)計的計劃沒有安排好,設(shè)計的時間極為倉促,尤其是在硬件調(diào)試的過程中出現(xiàn)了很大的問題。另外資料的查找也是一大難題,這就要求我們在以后的學(xué)習(xí)中,應(yīng)該注意到這一點,更重

45、要的是我們要學(xué)會把從書本中學(xué)到的知識和實際的電路聯(lián)系起來,這不論是對我們以后的就業(yè)還是學(xué)習(xí),都會起到很大的促進和幫助。在利用單片機設(shè)計lcd液晶顯示屏的整個設(shè)計過程中,從電路的設(shè)計,元器件的采購,電路的調(diào)試,程序的編寫以及最后的電路板的制作,我都親自參與了設(shè)計與制作,這對我對于理論和實際相結(jié)合有了新的認(rèn)識。參考文獻(xiàn)1 郭天祥新概念51單片機c語言教程:入門、提高、開發(fā)、拓展全攻略北京:電子工業(yè)出版社,20092高衛(wèi)東51單片機原理與實踐.北京航空航天大學(xué)出版社,20113彭偉單片機c語言程序設(shè)計實訓(xùn)100例電子工業(yè)出版社,20114潘永雄新編單片機原理及應(yīng)用西安電子科技大學(xué)出版社,20085張

46、毅剛,彭喜元新編mcs-51單片機應(yīng)用設(shè)計,20096杜洋愛上單片機人民郵電出版社,20127于永51單片機c語言常用模塊與綜合系統(tǒng)設(shè)計電子工業(yè)出版社,20128張俊匠人手記:一個單片機工作者的實踐與思考北京航空航天大學(xué)出版社,20089周航慈單片機應(yīng)用程序設(shè)計北京航空航天大學(xué)出版社,200310牛昱光.單片機原理與接口技術(shù).電子工業(yè)出版社,200811蔣力培.單片機微機系統(tǒng)實用教程.機械工業(yè)出版社,200712王為青,程國鋼.單片機keilcx5應(yīng)用開發(fā)技術(shù).人民郵電出版社,200713賈巍.單片機仿真開發(fā)軟件的應(yīng)用.中國水運出版社,200714唐德禮,王襄. 單片機學(xué)習(xí)機及編程器的設(shè)計與制

47、作.電子工業(yè)出版社,200515俞時.單片機集成仿真系統(tǒng)的開發(fā).中國紡織大學(xué)學(xué)報,201116趙克剛,易帝文,張治強,萬為.單片機仿真實驗平臺設(shè)計實踐.科技咨詢導(dǎo)報.2007致謝值此論文完成之際,謹(jǐn)向給予我指導(dǎo)、關(guān)心和幫助的老師、同學(xué)、朋友、親人表示最衷心的感謝。本研究及學(xué)位論文是在我的導(dǎo)師謝道平老師的親切關(guān)懷和悉心指導(dǎo)下完成的。他嚴(yán)肅的科學(xué)態(tài)度,嚴(yán)謹(jǐn)?shù)闹螌W(xué)精神,精益求精的工作作風(fēng),以及對細(xì)節(jié)問題的深思及解決辦法,深深地感染和激勵著我,使我對待問題、解決問題的態(tài)度更加嚴(yán)謹(jǐn)。從課題的選擇到項目的最終完成,謝老師都始終給予我細(xì)心的指導(dǎo)和不懈的支持。在此謹(jǐn)向謝老師致以誠摯的謝意和崇高的敬意!在此,我

48、還要感謝在一起愉快的度過本科生活的信工2班各位同學(xué),正是由于你們的幫助和支持,我才能克服一個一個的困難和疑惑,直至本文的順利完成。在論文即將完成之際,我的心情無法平靜,從開始進入課題到論文的順利完成,有多少可敬的師長、同學(xué)、朋友給了我無言的幫助,在這里請接受我誠摯的謝意!最后我還要感謝培養(yǎng)我長大含辛茹苦的父母,謝謝你們!附錄主程序:#include#include#define uchar unsigned char#define uint unsigned intsbit led=p24;/每節(jié)結(jié)束時警報extern void initialize_lcd(); /lcd初始化extern

49、void set_lcd_pos(uchar pos);/向lcd寫地址extern void write_lcd_data(uchar dat);/向lcd寫數(shù)據(jù)extern void print_1602();/顯示固定字符uchar tcount_t0=0; /定時器0的變量uchar tcount_t1=0; /定時器1的變量uchar keyboardcode=0xef,0xdf,0xbf;/按鍵掃描列char t_24=24;char t_12_fen=12;char t_12_miao=0;uchar jie=1;uchar a_bifen=0,b_bifen=0;uchar k

50、ey_result=0;/讀到的按鍵值 08uchar keypressdown=0;/按鍵按下標(biāo)志uchar flag_led=0;/燈亮標(biāo)志uchar flag_finish=0;/一節(jié)次結(jié)束標(biāo)志 void delay_s(uint ms)/1ms延時uchar i;while(ms-)for(i=0;i120;i+);uchar key_scan() /鍵盤掃描uchar result_temp=0;uchar lie,hang;ex0=0;for(lie=0;lie3;lie+)p1=keyboardcodelie;result_temp=p1&0x0f;if(result_temp!=0x0f)switch(result_temp)case 0x0e:hang=0;break;case 0x0d:hang=1;break;case 0x0b:hang=2;break;break;p1=0x0f;ex0=1;return hang*3+lie;void process(uchar po)/對讀到的按鍵值進行處理if(flag_finish=1)flag_finish=0;tr0=1;t_24=23;t_12_fen=11;t_12_miao=58;switch(po)case 0:tr0=1

溫馨提示

  • 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)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論