影音先锋男人资源在线观看,精品国产日韩亚洲一区91,中文字幕日韩国产,2018av男人天堂,青青伊人精品,久久久久久久综合日本亚洲,国产日韩欧美一区二区三区在线

畢業(yè)設(shè)計(jì)(論文)-基于單片機(jī)的自行車(chē)碼表設(shè)計(jì).doc

上傳人:good****022 文檔編號(hào):116789817 上傳時(shí)間:2022-07-06 格式:DOC 頁(yè)數(shù):44 大?。?29KB
收藏 版權(quán)申訴 舉報(bào) 下載
畢業(yè)設(shè)計(jì)(論文)-基于單片機(jī)的自行車(chē)碼表設(shè)計(jì).doc_第1頁(yè)
第1頁(yè) / 共44頁(yè)
畢業(yè)設(shè)計(jì)(論文)-基于單片機(jī)的自行車(chē)碼表設(shè)計(jì).doc_第2頁(yè)
第2頁(yè) / 共44頁(yè)
畢業(yè)設(shè)計(jì)(論文)-基于單片機(jī)的自行車(chē)碼表設(shè)計(jì).doc_第3頁(yè)
第3頁(yè) / 共44頁(yè)

下載文檔到電腦,查找使用更方便

20 積分

下載資源

還剩頁(yè)未讀,繼續(xù)閱讀

資源描述:

《畢業(yè)設(shè)計(jì)(論文)-基于單片機(jī)的自行車(chē)碼表設(shè)計(jì).doc》由會(huì)員分享,可在線閱讀,更多相關(guān)《畢業(yè)設(shè)計(jì)(論文)-基于單片機(jī)的自行車(chē)碼表設(shè)計(jì).doc(44頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。

1、基于單片機(jī)的自行車(chē)碼表設(shè)計(jì)基于單片機(jī)的自行車(chē)碼表設(shè)計(jì)摘 要 隨著人們生活水平的不斷提高,自行車(chē)已經(jīng)不僅僅是運(yùn)輸、代步的工具,其輔助功能也變得越來(lái)越重要。因此,人們希望自行車(chē)的娛樂(lè)、休閑、鍛煉的功能越來(lái)越多,能帶來(lái)大家更多的健康與快樂(lè)。自行車(chē)碼表作為自行車(chē)的一大輔助工具迅速發(fā)展起來(lái)。科學(xué)、美觀、合理設(shè)計(jì)自行車(chē)?yán)锍瘫碛幸欢ǖ膶?shí)用價(jià)值。它能合理計(jì)算出速度及公里數(shù),使運(yùn)動(dòng)者運(yùn)動(dòng)適量,達(dá)到健康運(yùn)動(dòng)與代步的最佳效果。碼表能盡可能真實(shí)地反映騎行狀況,便于車(chē)手及時(shí)調(diào)整自己的舉動(dòng)。 本設(shè)計(jì)以AT89C51單片機(jī)為主控制芯片,128*64 LCD為顯示終端顯示自行車(chē)時(shí)速、里程等信息及系統(tǒng)設(shè)置等,統(tǒng)設(shè)置菜單能夠人工

2、設(shè)置設(shè)備安裝信息以提高測(cè)量精度,提供時(shí)速、里程、平均速度、時(shí)間等信息,時(shí)還附加一報(bào)警功能,當(dāng)行駛到預(yù)設(shè)里程和速度時(shí),系統(tǒng)會(huì)自動(dòng)報(bào)警,提醒已經(jīng)達(dá)到預(yù)設(shè)運(yùn)動(dòng)量。 本設(shè)計(jì)主要包括自行車(chē)輪脈沖采集、鍵盤(pán)輸入和數(shù)據(jù)顯示等部分,主程序用C語(yǔ)言編寫(xiě),完成各項(xiàng)功能及數(shù)據(jù)的處理,通過(guò)Keil C來(lái)完成程序的編寫(xiě)和下載,通過(guò)單片機(jī)實(shí)驗(yàn)開(kāi)發(fā)板具體實(shí)現(xiàn)自行車(chē)碼表各項(xiàng)功能。關(guān)鍵詞 ST1101 AT89C51 LCD ZLG7290 報(bào)警THE DESIGN OF BASING ON MCU BICYCLE STOPWATCHABSTRACT With the improvement of life level, bi

3、ke is not only the transport tool but also its auxiliary function become more and more import. Therefore, people hope that the function of amusement, leisure and exercise of bike become more and more; and bring more health and happy. As one import auxiliary function of bike stopwatch develops quickl

4、y. The design of stopwatch is scientific, reasonable and beautiful; and it also has its practical value. Stopwatch can calculate speed and distance, reflects true exercise state; based on this exerciser can adjusts exercise strength so that it can reach the best effect of healthy exercise. This proj

5、ect takes AT89C51 MCU as main control chip and takes 128*64 LCD as terminal display which displays speed per hour, distance and system set. In the system set menu people can set install information to improve measure precision. Besides, it appends alerting function. When reach the distance and speed

6、 set in advance, the system will alert automatically to remind exerciser that he has reached exercise strength set in advance. This project mainly includes bicycle wheel pulse acquisition, keyboard input and data shows. The main program is compiled by C language which is to do initialization and key

7、board dealing; the compiler and download of program are done by Keil C, and the various functions of the bicycle are realized concretely by the SCM experiment development board.KEY WORDS ST1101 AT89C51 LCD ZLG7290 alert40基于單片機(jī)的自行車(chē)碼表設(shè)計(jì)目 錄摘要IABSTRACTII前言11 緒論21.1 開(kāi)發(fā)背景及意義21.1.1 課題背景21.1.2 課題的意義21.2 Kei

8、l C 介紹21.3 設(shè)計(jì)內(nèi)容32 系統(tǒng)方案論證與分析42.1 系統(tǒng)方案42.1.1 系統(tǒng)概述42.1.2 系統(tǒng)原理42.2 采集信息部分以及傳感器的選擇52.3 主控芯片選擇62.4 數(shù)據(jù)處理并顯示模塊62.4.1 多位LED數(shù)碼管顯示62.4.2 128*64 LCD顯示72.5 鍵盤(pán)部分及所需芯片選擇82.5.1 鍵盤(pán)設(shè)計(jì)方案82.5.2 ZLG7290芯片特點(diǎn)93 系統(tǒng)硬件設(shè)計(jì)103.1 系統(tǒng)設(shè)計(jì)圖103.2 AT89C51主控芯片113.3 脈沖發(fā)生源133.3.1 輪脈沖檢測(cè)133.3.2 信號(hào)預(yù)處理電路133.3.3 E2PROM AT24C02 的應(yīng)用143.4 顯示模塊153

9、.4.1 顯示資料RAM(DDRAM)163.4.2 繪圖RAM(GDRAM)163.5 鍵盤(pán)及ZLG7290芯片173.5.1 芯片引腳及說(shuō)明173.5.2 引腳功能184 系統(tǒng)軟件設(shè)計(jì)194.1 軟件系統(tǒng)設(shè)計(jì)194.2 液晶顯示204.2.1 液晶顯示程序流程204.2.2 顯示器具體指令214.3 鍵盤(pán)輸入部分24致 謝26參考文獻(xiàn)27附 錄28前言 隨著人們生活水平的逐漸提高,人們對(duì)于生活質(zhì)量的要求也日益增加,尤其是對(duì)健身的要求。自行車(chē)在中國(guó)普遍作為代步工具。而在國(guó)外,自行車(chē)卻是一項(xiàng)十分受歡迎的健身運(yùn)動(dòng)。因?yàn)樗鼰o(wú)污染,價(jià)位低廉,老少皆宜。而且在運(yùn)動(dòng)過(guò)程中可以充分享受到大自然,對(duì)于忙碌的

10、現(xiàn)代人來(lái)說(shuō),無(wú)疑是一種較好的放松方法。在中國(guó)這種情況也在慢慢發(fā)生變化。因此愛(ài)好自行車(chē)運(yùn)動(dòng)的人十分學(xué)要一款能測(cè)速的裝置,以知道自己的運(yùn)動(dòng)情況。并根據(jù)外界條件,如溫度,風(fēng)速等進(jìn)行適當(dāng)?shù)恼{(diào)節(jié),已達(dá)到最佳運(yùn)動(dòng)的效果。而對(duì)于自行車(chē)運(yùn)動(dòng)員來(lái)說(shuō),最為關(guān)心的莫過(guò)于一段時(shí)間內(nèi)的訓(xùn)練效果。因?yàn)榻叹氁鶕?jù)一段時(shí)間內(nèi)運(yùn)動(dòng)員的訓(xùn)練效果進(jìn)行評(píng)估,從而進(jìn)行適當(dāng)?shù)恼{(diào)整已使運(yùn)動(dòng)員達(dá)到最佳的狀態(tài)。因此需要一種裝置進(jìn)行對(duì)訓(xùn)練中各種參數(shù)的測(cè)定記錄。 碼表主要針對(duì)那些業(yè)余愛(ài)好者,他們運(yùn)動(dòng)一般會(huì)選擇晴朗涼爽的天氣進(jìn)行運(yùn)動(dòng),所以溫度和風(fēng)速對(duì)運(yùn)動(dòng)員幾乎沒(méi)影響,只要能精確的測(cè)量速度和里程以及時(shí)間即可。并能在運(yùn)動(dòng)員達(dá)到預(yù)期運(yùn)動(dòng)量后能準(zhǔn)確提醒運(yùn)動(dòng)

11、員已達(dá)到預(yù)期要求。 本設(shè)計(jì)以AT89C51單片機(jī)為主控芯片,把霍爾傳感器傳來(lái)的脈沖信號(hào)進(jìn)行處理,預(yù)算,精確的計(jì)算出行駛的速度和里程,然后在傳送給LCD顯示器,從LCD上顯示出運(yùn)動(dòng)的一系列數(shù)據(jù),而且還可以通過(guò)顯示器進(jìn)行人機(jī)對(duì)話,可以通過(guò)顯示器和鍵盤(pán)進(jìn)行一些參數(shù)的設(shè)置,比如像將要安裝的自行車(chē)的輪圈的半徑設(shè)置,以及預(yù)設(shè)運(yùn)動(dòng)量的和時(shí)間的設(shè)置。這些都需要通過(guò)顯示器進(jìn)行設(shè)置,其中的時(shí)間是用芯片內(nèi)自帶的計(jì)數(shù)器進(jìn)行計(jì)數(shù)的。 本設(shè)計(jì)是以AT系列單片機(jī)為主控制芯片,采用霍爾元件檢測(cè)小車(chē)行駛速度。程序用C語(yǔ)言編寫(xiě),由主程序、外部中斷服務(wù)程序、定時(shí)器中斷服務(wù)程序、延時(shí)子程序等模塊組成。主程序主要完成程序的初始化和鍵盤(pán)

12、處理,外部中斷服務(wù)程序由測(cè)量、計(jì)算、讀數(shù)等部分組成。1 緒論1.1 開(kāi)發(fā)背景及意義1.1.1 課題背景 隨著人們生活水平的不斷提高,自行車(chē)已經(jīng)不僅僅是運(yùn)輸、代步的工具,其輔助功能也變得越來(lái)越重要。因此,人們希望自行車(chē)的娛樂(lè)、休閑、鍛煉的功能越來(lái)越多,能帶來(lái)大家更多的健康與快樂(lè)。在這個(gè)背景下,自行車(chē)?yán)锍瘫碜鳛樽孕熊?chē)的一大輔助工具迅速發(fā)展起來(lái).科學(xué)、美觀、合理設(shè)計(jì)自行車(chē)?yán)锍瘫碛幸欢ǖ膶?shí)用價(jià)值.它能合理計(jì)算出速度及公里數(shù),使運(yùn)動(dòng)者運(yùn)動(dòng)適量,達(dá)到健康運(yùn)動(dòng)與代步的最佳效果. 碼表能盡可能真實(shí)地反映騎行狀況,便于車(chē)手及時(shí)調(diào)整自己的舉動(dòng),也便于收集騎行數(shù)據(jù)供自己或隊(duì)友們進(jìn)行參考和對(duì)比。 自行車(chē)碼表一般由安裝

13、于前車(chē)圈鋼條上的感應(yīng)磁鐵、前叉上的感應(yīng)器、順著前叉蜿蜒而上的連接線、置于握把上面的碼表座和座上面的碼表。碼表的工作原理是:車(chē)圈旋轉(zhuǎn)時(shí)感應(yīng)器捕捉到感應(yīng)磁鐵帶來(lái)的信息,通過(guò)連接線傳輸至碼表,碼表對(duì)此進(jìn)行處理后計(jì)算出時(shí)速、里程等信息并顯示。它能夠讓我們比較精確的知道自己的當(dāng)前速度、騎行時(shí)間、單次里程、總里程、平均速度、最高速度等。1.1.2 課題的意義本設(shè)計(jì)就是針對(duì)普通運(yùn)動(dòng)員在運(yùn)動(dòng)中不能很好的把握自己達(dá)到了多大的速度,行駛了多遠(yuǎn)的距離而設(shè)計(jì)的。以往的碼表只能進(jìn)行測(cè)量速度,里程,時(shí)間,溫度等數(shù)據(jù),雖然能實(shí)現(xiàn)很多的功能,但是其中的一些功能不適合自行車(chē)業(yè)余愛(ài)好者,浪費(fèi)資源,而且性價(jià)比也低,而且也不能很好的

14、把握當(dāng)前運(yùn)動(dòng)量,從而不能很好的實(shí)現(xiàn)娛樂(lè)和鍛煉的效果。而本設(shè)計(jì)卻能實(shí)現(xiàn)娛樂(lè)和鍛煉的雙重效果,而且相對(duì)業(yè)余愛(ài)好者性價(jià)比更高。1.2 Keil C 介紹 Keil C51 Vision3集成開(kāi)發(fā)環(huán)境是Keil Software,Inc/Keil Elektronik GmbH開(kāi)發(fā)的基于80C51內(nèi)核的微處理器軟件開(kāi)發(fā)平臺(tái),內(nèi)嵌多種符合當(dāng)前工業(yè)標(biāo)準(zhǔn)的開(kāi)發(fā)工具,可以完成從工程建立到管理、編譯、鏈接、目標(biāo)代碼的生成、軟件仿真、硬件仿真等完整的開(kāi)發(fā)流程尤其是C編譯工具在產(chǎn)生代碼的準(zhǔn)確性和效率方面達(dá)到了較高的水平,而且可以附加靈活的控制選項(xiàng),在開(kāi)發(fā)大型項(xiàng)目時(shí)非常理想。 Keil C51集成開(kāi)發(fā)環(huán)境的主要功能有

15、以下幾點(diǎn): (1) Vision3是一個(gè)集成開(kāi)發(fā)環(huán)境,它將項(xiàng)目管理、源代碼編輯和程序調(diào)試等組合在一個(gè)功能強(qiáng)大的環(huán)境中。 (2) C51國(guó)際準(zhǔn)化C交叉編譯器,從C源代碼產(chǎn)生可重定位的目標(biāo)模塊。 (3) A51宏匯編器,從80C51匯編源代碼產(chǎn)生可重定位的目標(biāo)模塊。 (4) BL51鏈接器/定位器,組合由C51和A51產(chǎn)生的可重定位的目標(biāo)模塊,生成絕對(duì)目標(biāo)模塊。 (5) LIB51庫(kù)管理器,從目標(biāo)模塊生成連接器可以使用的庫(kù)文件。 (6) OH51目標(biāo)文件至HEX格式的轉(zhuǎn)換,從絕對(duì)目標(biāo)模塊生成Hex文件。 (7) RTX-51實(shí)時(shí)操作系統(tǒng),簡(jiǎn)化了復(fù)雜的實(shí)時(shí)應(yīng)用軟件項(xiàng)目的設(shè)計(jì)。 此軟件可以完成從工程建

16、立到管理、編譯、鏈接、目標(biāo)代碼的生成、軟件仿真、硬件仿真等完整的開(kāi)發(fā)流程尤其是C編譯工具在產(chǎn)生代碼的準(zhǔn)確性和效率方面達(dá)到了較高的水平。支持在線仿真,純軟件信仿真,多種調(diào)試方式(單步、全速等),其應(yīng)用相對(duì)簡(jiǎn)單,很容易就可以掌握該軟件的基本操作用法,可以用C語(yǔ)言和匯編兩種語(yǔ)言進(jìn)行編程,還可混編,支持C語(yǔ)言的編程對(duì)初學(xué)者提供了很大方便,在調(diào)試過(guò)程中,可通過(guò)相關(guān)工具,直接查看變量的即時(shí)結(jié)果,目標(biāo)代碼的生成也容易。1.3 設(shè)計(jì)內(nèi)容1. 以AT89C51單片機(jī)為主控制芯片。2. 以128*64 LCD為顯示終端顯示自行車(chē)時(shí)速、里程等信息及系統(tǒng)設(shè)置等系統(tǒng)設(shè)置菜單。3. 能夠人工設(shè)置設(shè)備安裝信息以提高測(cè)量精度

17、,提供時(shí)速、里程、平均速度、時(shí)間等信息。4. 能夠預(yù)設(shè)運(yùn)動(dòng)量(比如預(yù)設(shè)速度,里程),實(shí)現(xiàn)報(bào)警功能。2 系統(tǒng)方案論證與分析2.1 系統(tǒng)方案2.1.1 系統(tǒng)概述 系統(tǒng)總體設(shè)計(jì)框圖如圖2-1所示。本系統(tǒng)由信號(hào)預(yù)處理電路、單片機(jī)AT89C51、128*64LCD顯示模塊、鍵盤(pán)控制和系統(tǒng)軟件組成。其中信號(hào)預(yù)處理電路包含信號(hào)放大、波形變換和波形整形。對(duì)待測(cè)信號(hào)進(jìn)行放大的目的是降低對(duì)待測(cè)信號(hào)的幅度要求;波形變換和波形整形電路則用來(lái)將放大的信號(hào)轉(zhuǎn)換成可與單片機(jī)相連的TTL信號(hào);通過(guò)單片機(jī)的設(shè)置可使內(nèi)部定時(shí)器T1對(duì)脈沖輸入引腳T0進(jìn)行控制,這樣能精確地算出加到T0引腳的單位時(shí)間內(nèi)檢測(cè)到的脈沖數(shù);設(shè)計(jì)中速度顯示采

18、用LCD模塊,通過(guò)速度換算得來(lái)的里程數(shù)采用I2C總線并通過(guò)E2PROM來(lái)存儲(chǔ),既節(jié)省了所需單片機(jī)的口線和外圍器件,同時(shí)也簡(jiǎn)化了顯示部分的軟件編程。鍵盤(pán)控制信號(hào)放大器數(shù)字存儲(chǔ)電路單片機(jī)LCD顯示整形電路圖2-1 系統(tǒng)總體設(shè)計(jì)框圖2.1.2 系統(tǒng)原理 該設(shè)計(jì)能實(shí)時(shí)地將所測(cè)的速度與累計(jì)里程數(shù)顯示出來(lái),主要是將傳感器輸入到單片機(jī)的脈沖信號(hào)的頻率(傳感器將不同車(chē)速轉(zhuǎn)變成不同頻率的脈沖信號(hào))實(shí)時(shí)地測(cè)量出來(lái),考慮到信號(hào)的衰減、干擾等影響,在信號(hào)送入單片機(jī)前應(yīng)對(duì)其進(jìn)行放大整形,然后通過(guò)單片機(jī)計(jì)算出速度和里程,再將所得的數(shù)據(jù)存儲(chǔ)到串口數(shù)據(jù)存儲(chǔ)器,并由LCD 顯示模塊顯示所測(cè)速度與里程。本設(shè)計(jì)的里程數(shù)的算法是一種

19、大概的算法(假設(shè)在一定時(shí)間內(nèi)自行車(chē)是勻速行進(jìn),平均速度與時(shí)間的乘積即為里程數(shù))。設(shè)計(jì)時(shí),應(yīng)綜合考慮測(cè)速精度和系統(tǒng)反應(yīng)時(shí)間。本設(shè)計(jì)用測(cè)量脈沖頻率來(lái)計(jì)算速度,因而具有較高的測(cè)速精度。在計(jì)算里程時(shí)取了自行車(chē)的理想狀態(tài)。本設(shè)計(jì)的速度和里程值采用8 位顯示,并包含兩個(gè)小數(shù)位。2.2 采集信息部分以及傳感器的選擇 信息采集部分可以選用的傳感器種類(lèi)很多,例如磁感應(yīng)傳感器,光電感應(yīng)傳感器,金屬傳感器等,而考慮到實(shí)際可操作性以及設(shè)計(jì)要求方面,本設(shè)計(jì)選用的傳感器為光電傳感器。 霍爾傳感器由永久磁鐵和開(kāi)關(guān)型霍爾集成電路組成?;魻柤呻娐酚苫魻栐⒎糯笃?、整形電路及集電極開(kāi)路輸出等部分組成,其功能是把磁信號(hào)轉(zhuǎn)換成電

20、信號(hào),霍爾元件為磁敏元件,當(dāng)垂直于霍爾元件的磁場(chǎng)強(qiáng)度發(fā)生變化時(shí),其兩端的電壓就會(huì)發(fā)生變化,經(jīng)放大和整形即可輸出脈沖電信號(hào)。ST1101采用高輸出的紅外光電二極管與高靈敏度光敏晶體管組成,其特點(diǎn)是性能可靠,體積小,結(jié)構(gòu)簡(jiǎn)單,廣泛應(yīng)用于碼表,其主要參數(shù)如表2-1所示。表2-1 主要參數(shù)輸入正向電流IF50mA反向電壓Vr6v耗散功率P75mW輸出集-射電壓Vceo25V射-集電壓Veco6V集電極功耗Pc50mW2.3 主控芯片選擇碼表主要以單片機(jī)為主控芯片,而能實(shí)現(xiàn)其功能的芯片卻有很多,本設(shè)計(jì)選用的是AT89C51。AT89C51是一個(gè)低電壓,高性能CMOS 8位單片機(jī),帶有4K字節(jié)的可反復(fù)擦寫(xiě)

21、的程序存儲(chǔ)器(PENROM)和128字節(jié)的存取數(shù)據(jù)存儲(chǔ)器(RAM),這種器件采用ATMEL公司的高密度、不容易丟失存儲(chǔ)技術(shù)生產(chǎn),并且能夠與MCS-51系列的單片機(jī)兼容。片內(nèi)含有8位中央處理器和閃爍存儲(chǔ)單元,有較強(qiáng)的功能的AT89C51單片機(jī)能夠被應(yīng)用到控制領(lǐng)域中。AT89C51提供以下的功能標(biāo)準(zhǔn):4K字節(jié)閃爍存儲(chǔ)器,128字節(jié)隨機(jī)存取數(shù)據(jù)存儲(chǔ)器,32個(gè)I/O口,2個(gè)16位定時(shí)/計(jì)數(shù)器,1個(gè)5向量?jī)杉?jí)中斷結(jié)構(gòu),1個(gè)串行通信口,片內(nèi)震蕩器和時(shí)鐘電路。另外,AT89C51還可以進(jìn)行0HZ的靜態(tài)邏輯操作,并支持兩種軟件的節(jié)電模式。閑散方式停止中央處理器的工作,能夠允許隨機(jī)存取數(shù)據(jù)存儲(chǔ)器、定時(shí)/計(jì)數(shù)器、

22、串行通信口及中斷系統(tǒng)繼續(xù)工作。掉電方式保存隨機(jī)存取數(shù)據(jù)存儲(chǔ)器中的內(nèi)容,但震蕩器停止工作并禁止其它所有部件的工作直到下一個(gè)復(fù)位。2.4 數(shù)據(jù)處理并顯示模塊2.4.1 多位LED數(shù)碼管顯示 一、數(shù)碼管動(dòng)態(tài)顯示有多位LED數(shù)碼管顯示時(shí),為了簡(jiǎn)化電路,降低成本,將所有位的段選線并聯(lián)在一起,由FPGA的一個(gè)8位的I/O口控制,而每一位LED數(shù)碼管的公共陰極或者公共陽(yáng)極分別由FPGA的其它的I/O口線控制。對(duì)于8位的LED數(shù)碼管顯示,可用采用程序控制的方法,通過(guò)不斷的移位發(fā)送選中要顯示的數(shù)碼管??梢?jiàn)在整個(gè)顯示模塊中至少要9根I/O口線。因?yàn)槭莿?dòng)態(tài)顯示,所以需要定時(shí)刷新LED數(shù)碼管。為了穩(wěn)定的顯示,在多位L

23、ED數(shù)碼管顯示時(shí)需要有很高的數(shù)據(jù)刷新頻率,否則會(huì)導(dǎo)致顯示效果有些閃爍。二、數(shù)碼管靜態(tài)顯示在多位LED數(shù)碼管顯示時(shí),為了能夠顯示效果較好,簡(jiǎn)化電路,把每一位LED數(shù)碼管的公共陰極或公共陽(yáng)極通過(guò)串行限流電阻后接地或者接+5V,而每位LED數(shù)碼管的段選線(a、b、c、d、e、f、h)與一片74LS164的4位并行輸出口相連接。因?yàn)镕PGA是并行工作的,故此時(shí)FPGA同時(shí)發(fā)送36個(gè)數(shù)據(jù)用于鎖定9個(gè)顯示的數(shù)碼管。這樣不用通過(guò)不斷地刷新來(lái)改變顯示數(shù)據(jù),也沒(méi)有延時(shí),數(shù)碼管也不會(huì)因?yàn)轭l率低而閃爍,只有FPGA發(fā)送的數(shù)據(jù)改變時(shí)數(shù)碼管才發(fā)生相應(yīng)改變。2.4.2 128*64 LCD顯示一、128*64LCD串口方

24、式顯示當(dāng)PSB腳接低電位時(shí),模塊將進(jìn)入串行模式。從一個(gè)完整的串行傳輸流程來(lái)看,一開(kāi)始先傳輸起始字節(jié),它需先接收到五個(gè)連續(xù)的1(同步位字符串),在起始字節(jié),此時(shí)傳輸計(jì)數(shù)將被重置并且串行傳輸將被同步,再跟隨的兩位字符串分別指定傳輸方向位(RW)及寄存器選擇位(RS),最后第八位則為0。在接收到同步位及RW和RS資料的起始字節(jié)后,每一個(gè)八位的指令將被分為兩個(gè)字節(jié)接收到:高4位(DB7DB4)的指令資料將會(huì)被放在第一個(gè)字節(jié)的LSB(最低有效位)部分,而低4位(DB3DB0)的指令資料則會(huì)被放在第二個(gè)字節(jié)的LSB部分,至于相關(guān)的另四位則都為0。二、128*64LCD并口方式顯示當(dāng)PSB腳(OCMJ4X1

25、6A/B)接高電位時(shí),模塊將進(jìn)入并行模式,在并列模式下可由指令DL FLAG 來(lái)選擇8位或4位接口,主控制系統(tǒng)將配合(RS , RW , E , DB0DB7)來(lái)達(dá)成傳輸動(dòng)作。從一個(gè)完整的流程來(lái)看,當(dāng)下設(shè)定地址指令后(CGRAM,DDRAM)若要讀取數(shù)據(jù)時(shí)需先DUMMY READ一次,才會(huì)讀取到正確數(shù)據(jù),第二次讀取時(shí)則不需DUMMY READ ,除非再進(jìn)行下設(shè)定地址指令才需再次DUMMY READ。在4位傳輸模式中,每一個(gè)八位的指令或數(shù)據(jù)都將被分為兩個(gè)字節(jié)動(dòng)作:較高4位(DB7DB4)的資料將會(huì)被放在第一個(gè)字節(jié)的(DB7DB4)部分,而較低4位(DB3DB0)的資料則會(huì)被放在第二個(gè)字節(jié)的(DB

26、7DB4)部分,至于相關(guān)的另四位則在4位傳輸模式中DB3DB0接口未使用。鑒于串口口傳輸方式可以大大地減少系統(tǒng)的I/O口使用量,并且可以提高系統(tǒng)的準(zhǔn)確性,故采用串口傳輸方式。本設(shè)計(jì)采用的是128*64LCD液晶顯示。主要參數(shù):(1)工作電壓(VDD):4.55.5V;(2)邏輯電平:2.75.5V;(3)LCD驅(qū)動(dòng)電壓(Vo):07V;(4)工作溫度(Ta):055(常溫)/-2075(寬溫);(5)保存溫度(Tstg):-1065(常溫)/-3085(寬溫)。2.5 鍵盤(pán)部分及所需芯片選擇2.5.1 鍵盤(pán)設(shè)計(jì)方案鍵盤(pán)在單片機(jī)應(yīng)用系統(tǒng)中,實(shí)現(xiàn)輸入數(shù)據(jù)、傳送命令的功能,是人工干預(yù)的主要手段。鍵盤(pán)

27、分兩大類(lèi):編碼鍵盤(pán)和非編碼鍵盤(pán)。編碼鍵盤(pán):由硬件邏輯電路完成必要的鍵識(shí)別工作與可靠性措施。每按一次鍵,鍵盤(pán)自動(dòng)提供被按鍵的讀數(shù),同時(shí)產(chǎn)生一選通脈沖通知微處理器,一般還具有反彈跳和同時(shí)按鍵保護(hù)功能。這種鍵盤(pán)易于使用,但硬件比較復(fù)雜,對(duì)于主機(jī)任務(wù)繁重之情況。非編碼鍵盤(pán):只簡(jiǎn)單地提供鍵盤(pán)的行列與矩陣,其他操作如鍵的識(shí)別,決定按鍵的讀數(shù)等僅靠軟件完成,故硬件較為簡(jiǎn)單,但占用CPU較多時(shí)間。有:獨(dú)立式按鍵結(jié)構(gòu)、矩陣式按鍵結(jié)構(gòu)。首先,確定鍵盤(pán)編碼方案:采用編碼鍵盤(pán)或非編碼鍵盤(pán)。隨后,確定鍵盤(pán)工作方式:采用中斷或查詢方式輸入鍵操作信息。然后,設(shè)計(jì)硬件電路。非編碼鍵盤(pán)系統(tǒng)中,鍵閉合和鍵釋放的信息的獲取,鍵抖動(dòng)

28、的消除,鍵值查找及一些保護(hù)措施的實(shí)施等任務(wù),均由軟件來(lái)完成。鍵盤(pán)是單片機(jī)系統(tǒng)設(shè)計(jì)中一種主要的信息輸入接口,合理的設(shè)計(jì),不僅可以節(jié)省系統(tǒng)的設(shè)計(jì)成本,更可使儀器設(shè)備的操作變得更為簡(jiǎn)單、方便,很大程度上提高系統(tǒng)綜合性能。本設(shè)計(jì)中,碼表要設(shè)置很多參數(shù),所以需要輸入很多數(shù)據(jù),所以本設(shè)計(jì)中的鍵盤(pán)部分是選用的ZLG7290 I2接口鍵盤(pán)。鍵盤(pán)只需要12個(gè),分別為09十個(gè)數(shù)和小數(shù)點(diǎn)以及確認(rèn)鍵。2.5.2 ZLG7290芯片特點(diǎn) 選用的ZLG7290具有以下特點(diǎn):(1) I2C串行接口,提供鍵盤(pán)中斷信號(hào),方便與處理器接口;(2) 可驅(qū)動(dòng)8位共陰數(shù)碼管或64只獨(dú)立LED和64個(gè)按鍵;(3) 可控掃描位數(shù)可控任一數(shù)

29、碼管閃爍;(4) 提供數(shù)據(jù)譯碼和循環(huán),移位,段尋址等控制;(5) 8個(gè)功能鍵,可檢測(cè)任一鍵的連擊次數(shù);(6) 無(wú)需外接元件即直接驅(qū)LED,可擴(kuò)展驅(qū)動(dòng)電流和驅(qū)動(dòng)電壓;(7) 提供工業(yè)級(jí)器件,多種封裝形式PDIP24,SO24。 3 系統(tǒng)硬件設(shè)計(jì)3.1 系統(tǒng)設(shè)計(jì)圖圖3-1 系統(tǒng)電路圖128*64LCD顯示器ZLG7920芯片AT89C51主控芯片喇叭傳感器鍵盤(pán)AT24C02圖3-2 系統(tǒng)框圖系統(tǒng)電路圖如圖3-1所示,系統(tǒng)框圖如圖3-2所示。本設(shè)計(jì)采用的是128*64液晶顯示器,以ZLG7290作為控制芯片的鍵盤(pán),以AT89C51作為系統(tǒng)的主控芯片。3.2 AT89C51主控芯片AT89C51通用寄

30、存器如下:ACC:最重要的暫存器,運(yùn)算資料轉(zhuǎn)移都通過(guò)ACC。PC:程序計(jì)數(shù)器,記載著程序下一個(gè)待執(zhí)指令位址。B暫存器:用于乘法,除法指令的輔助暫存器。PSW程序狀態(tài)字組:記錄程序運(yùn)作時(shí),CPU各種狀態(tài)。SP堆棧指示器:重置(RESET)時(shí),堆棧指示器設(shè)為07H。DPTR數(shù)據(jù)指針暫存器:16位元暫存器,由DPH、DPL兩個(gè)8位元暫存器阻成。工作寄存器:共有 RB0、RB1、RB2、RB3四組工作寄存器。每個(gè)寄存器組有8個(gè)8位寄存器,分別為R0、R1、R2、R3、R4、R5、R6、R7。AT89C51最小系統(tǒng)電路圖如圖3-3所示。圖3-3 最小系統(tǒng)電路圖數(shù)據(jù)存儲(chǔ)結(jié)構(gòu)如表3-1所示:表3-1 系統(tǒng)結(jié)

31、構(gòu)存儲(chǔ)結(jié)構(gòu)FFH-80H8051特殊功能暫存器(SFR)或是8052的間接定址資料區(qū)7FH-30H使用者的一般資料存放區(qū)(亦可透過(guò)SP設(shè)定,存放堆疊資料)20H-2FH可位元定址區(qū)(20.0-20.7.2F.0.-2F.7)10H-1FH暫存器庫(kù) RB3(R0-R7)10H-17H暫存器庫(kù) RB2(R0-R7)08H-0FH暫存器庫(kù) RB1(R0-R7)00H-07H暫存器庫(kù) RB0(R0-R7)3.3 脈沖發(fā)生源3.3.1 輪脈沖檢測(cè)本設(shè)計(jì)采用了ST1101紅外光電傳感器,進(jìn)行非接觸式檢測(cè)。當(dāng)有物體擋在紅外光電發(fā)光二極管和高靈敏度的光電晶體管之間時(shí),傳感器將會(huì)輸出一個(gè)低電平,而當(dāng)沒(méi)有物體擋在

32、中間時(shí)則輸出為高電平,從而形成一個(gè)脈沖。該系統(tǒng)在自行車(chē)后輪的軸處保持著與輪子旋轉(zhuǎn)切面平行的方向延伸附加一個(gè)鋁盤(pán),在這個(gè)鋁盤(pán)的邊沿處挖出若干個(gè)圓形過(guò)孔,把傳感器的檢測(cè)部分放在圓孔的圓心位置。每當(dāng)鋁盤(pán)隨著后輪旋轉(zhuǎn)的時(shí)候,傳感器將向外輸出若干個(gè)脈沖。把這些脈沖通過(guò)一系列的波形整形成單片機(jī)可以識(shí)別的TTL電平,即可算出輪子即時(shí)的轉(zhuǎn)速。鋁盤(pán)的圓孔的個(gè)數(shù)決定了測(cè)量的精度,個(gè)數(shù)越多,精度越高。這樣就可以在單位時(shí)間內(nèi)盡可能多地得到脈沖數(shù)從而避免了因?yàn)閮蓚€(gè)過(guò)孔之間的距離過(guò)大,而車(chē)子正好在過(guò)孔之間或者是在下個(gè)過(guò)孔之前停止了,造成較大的誤差。本設(shè)計(jì)在鋁盤(pán)過(guò)孔的設(shè)計(jì)上采用11個(gè)過(guò)孔,從而留下了10個(gè)同等的間距這樣在以

33、后的軟件設(shè)計(jì)中能夠較為方便的計(jì)算出速度里程。脈沖發(fā)生源的硬件結(jié)構(gòu)圖如圖3-4所示。圖3-4 脈沖發(fā)生源硬件結(jié)構(gòu)圖(左為正視圖,右為側(cè)視圖)3.3.2 信號(hào)預(yù)處理電路如圖3-5所示,系統(tǒng)的信號(hào)預(yù)處理電路由二級(jí)電路構(gòu)成,第一級(jí)是由開(kāi)關(guān)三極管組成的零偏置放大器,采用開(kāi)關(guān)三極管可以保證放大器具有良好的高頻響應(yīng)。當(dāng)輸入信號(hào)為零或負(fù)電壓時(shí),三極管截止,電路輸出高電平;而當(dāng)輸入信號(hào)為正電壓時(shí),三極管導(dǎo)通,此時(shí)輸出電壓隨著輸入電壓的上升而下降,這使得速度里程表既可以測(cè)量任意方波信號(hào)的頻率,也可以測(cè)量正弦波信號(hào)的頻率。由于放大器的放大功能降低了對(duì)待測(cè)信號(hào)的幅度要求,因此,系統(tǒng)能對(duì)任意大于0.5V 的正弦波和脈沖

34、信號(hào)進(jìn)行測(cè)量。預(yù)處理電路的第二級(jí)采用帶施密特觸發(fā)器的反相器DM74LS14 來(lái)把放大器生成的單相脈沖轉(zhuǎn)換成與COMS 電平相兼容的方波信號(hào)(如圖3-6所示),同時(shí)將輸出信號(hào)加到單片機(jī)的P3.4口上。利用施密特觸發(fā)器狀態(tài)轉(zhuǎn)換過(guò)程中的正反饋?zhàn)饔茫梢园堰呇刈兓徛闹芷谛孕盘?hào)變換為邊沿很陡的矩形脈沖信號(hào)。輸入的信號(hào)只要幅度大于VT+,即可在施密特觸發(fā)器的輸出端得到同等頻率的矩形脈沖信號(hào)。從傳感器得到的矩形脈沖經(jīng)傳輸后往往發(fā)生波形畸變。當(dāng)傳輸線上的電容較大時(shí),波形的上升沿將明顯變壞;當(dāng)傳輸線較長(zhǎng),而且接受端的阻抗與傳輸線的阻抗不匹配時(shí),在波形的上升沿和下降沿將產(chǎn)生振蕩現(xiàn)象;當(dāng)其他脈沖信號(hào)通過(guò)導(dǎo)線間的

35、分布電容或公共電源線疊加到矩形脈沖信號(hào)時(shí),信號(hào)上將出現(xiàn)附加的噪聲。無(wú)論出現(xiàn)上述的那一種情況,都可以通過(guò)用施密特反相觸發(fā)器整形而得到比較理想的矩形脈沖波形。只要施密特觸發(fā)器的VT+ 和VT- 設(shè)置得合適,均能受到滿意的整形效果。圖3-5 信號(hào)預(yù)處理電路圖圖 圖3-6 信號(hào)處理波形圖3.3.3 E2PROM AT24C02 的應(yīng)用AT24C02是CMOS 2048位串行E2PROM,在內(nèi)部組織成256 8位。AT24C02的特點(diǎn)是具有允許在簡(jiǎn)單的二線總線上工作的串行接口和軟件協(xié)議。如圖3-7所示,在本設(shè)計(jì)中用芯片AT24C02的SDA端與單片機(jī)的P3.7 口相連,SCL端與單片機(jī)的P3.5口相連。

36、因?yàn)樵谶@個(gè)I2C總線上只有一個(gè)器件,所以把AT24C02的地址設(shè)為000,即把A0、A1、A2都接地。單片機(jī)計(jì)算出來(lái)的里程數(shù)據(jù)通過(guò)SDA、SCL向AT24C02資料傳輸與接口時(shí)序。當(dāng)存儲(chǔ)數(shù)據(jù)時(shí),單片機(jī)首先向AT24C02發(fā)送寫(xiě)信號(hào),當(dāng)確認(rèn)后從單片機(jī)內(nèi)部的數(shù)據(jù)儲(chǔ)存單元提取數(shù)據(jù)然后向AT24C02的內(nèi)部地址傳送數(shù)據(jù)。當(dāng)顯示里程時(shí),單片機(jī)首先向AT24C02發(fā)送讀信號(hào),然后確認(rèn)后,單片機(jī)從AT24C02內(nèi)部的地址向單片機(jī)的讀出單元字節(jié)讀出數(shù)據(jù),供顯示所用。圖3-7 AT24C02與單片機(jī)的接口電路圖3.4 顯示模塊 顯示器電路原理圖如圖3-8所示。圖3-8 顯示器電路原理圖3.4.1 顯示資料RAM

37、(DDRAM) 顯示數(shù)據(jù)RAM 提供64*2 個(gè)字節(jié)的空間,最多可以控制4行16字(64個(gè)字)的中文字型顯示,當(dāng)寫(xiě)入顯示資料RAM時(shí),可以分別顯示CGROM,HCGROM 與CGRAM 的字型;本系列模塊可以顯示三種字型, 分別是半寬的HCGROM 字型、 CGRAM 字型及中文CGROM 字型, 三種字型的選擇, 由在DDRAM 中寫(xiě)入的編碼選擇,在0000H0006H 的編碼中將選擇CGRAM 的自定字型,02H7FH 的編碼中將選擇半寬英數(shù)字的字型,至于A1 以上的編碼將自動(dòng)的結(jié)合下一個(gè)字節(jié),組成兩個(gè)字節(jié)的編碼達(dá)成中文字型的編碼BIG5(A140D75F) GB(A1A0F7FF)。詳細(xì)

38、各種字型編碼如下:一、顯示半寬字型:將8位資料寫(xiě)入DDRAM中,范圍為02H7FH的編碼。二、顯示CGRAM字型:將16位資料寫(xiě)入DDRAM中,總共有0000H,0002H,0004H,0006H 四種編碼。 三、顯示中文字形:將16位資料寫(xiě)入DDRAM中,范圍為A140HD75FH的編碼(BIG5),A1A0HF7FFH的編碼(GB)。將16位資料寫(xiě)入DDRAM方式為透過(guò)連續(xù)寫(xiě)入兩個(gè)字節(jié)的資料來(lái)完成,先寫(xiě)入高字節(jié)(D15D8)再寫(xiě)入低字節(jié)(D7D0)。3.4.2 繪圖RAM(GDRAM)繪圖顯示RAM 提供64*32個(gè)字節(jié)的記憶空間(由擴(kuò)充指令設(shè)定繪圖RAM地址),最多可以控制256x64點(diǎn)

39、的二維繪圖緩沖空間, 在更改繪圖RAM時(shí),由擴(kuò)充指令設(shè)定GDRAM地址先設(shè)垂直地址再設(shè)水平地址(連續(xù)寫(xiě)入兩個(gè)字節(jié)的數(shù)據(jù)來(lái)完成垂直與水平的坐標(biāo)地址),再寫(xiě)入兩個(gè)8位的資料到繪圖RAM,而地址計(jì)數(shù)器(AC)會(huì)自動(dòng)加一。整個(gè)寫(xiě)入繪圖RAM的步驟如下:一、先將垂直的字節(jié)坐標(biāo)(Y)寫(xiě)入繪圖RAM地址;二、再將水平的字節(jié)坐標(biāo)(X)寫(xiě)入繪圖RAM地址;三、將D15D8寫(xiě)入到RAM中(寫(xiě)入第一個(gè)Bytes);四、將D7D0寫(xiě)入到RAM中(寫(xiě)入第二個(gè)Bytes)。3.5 鍵盤(pán)及ZLG7290芯片3.5.1 芯片引腳及說(shuō)明 采用24引腳封裝引腳圖3-9所示,引腳說(shuō)明如表3-2所示。圖3-9 ZLG7290芯片管腳

40、圖表3-2 ZLG7290芯片管腳說(shuō)明引腳號(hào)引腳名稱引腳屬性引腳描述13,12,21,22,3 6Dig7 Dig0輸入/輸出LED顯示位驅(qū)動(dòng)及鍵盤(pán)掃描線10 7,2,1,24,23SegH SegA輸入/輸出LED顯示位驅(qū)動(dòng)及鍵盤(pán)掃描線20SDA輸入/輸出I2C總線接口數(shù)據(jù)/地址線19SCL輸入/輸出I2C總線接口時(shí)鐘線14/INT輸出中斷輸出端,低電平有效15、RES輸入復(fù)位輸入端,低電平有效17OSC1輸入連接晶體以產(chǎn)生內(nèi)部時(shí)鐘18OSC2輸出16VCC電源電源正(3.35 .5V)11GND電源電源地3.5.2 引腳功能ZLG7290可采樣64個(gè)按鍵或傳感器,檢測(cè)每個(gè)按鍵的連擊次數(shù)。其

41、基本功能如下:一、鍵盤(pán)去抖動(dòng)處理 當(dāng)鍵被按下和放開(kāi)時(shí),可能會(huì)出現(xiàn)電平狀態(tài)反復(fù)變化,鍵盤(pán)抖動(dòng)。若不作處理會(huì)引起按鍵盤(pán)命令錯(cuò)誤,所以要進(jìn)行去抖動(dòng)處理,讀取穩(wěn)定的鍵盤(pán)狀態(tài)為準(zhǔn)。 二、雙鍵互鎖處理 當(dāng)有兩個(gè)以上按鍵被同時(shí)按下時(shí),ZLG7290只采樣優(yōu)先級(jí)高的按鍵(優(yōu)先順序?yàn)镾1S2S64,如同時(shí)按下S2和S18時(shí)采樣到S2)。三、連擊鍵處理 當(dāng)某個(gè)按鍵按下時(shí),輸出一次鍵值后,如果該按鍵還未釋放,該鍵值連續(xù)有效,就像連續(xù)壓按該鍵一樣,這種功能稱為連擊連擊。四、功能鍵處理 功能鍵能實(shí)現(xiàn)2個(gè)以上按鍵同時(shí)按下來(lái)擴(kuò)展按鍵數(shù)目或?qū)崿F(xiàn)特殊功能。如圖3-10為鍵盤(pán)電路原理圖:圖3-10 鍵盤(pán)原理圖從上圖可以看出本設(shè)計(jì)

42、共選用了12個(gè)鍵盤(pán),從上到下,從左到右分別為1到9,0,小數(shù)點(diǎn),和設(shè)置鍵。4 系統(tǒng)軟件設(shè)計(jì)4.1 軟件系統(tǒng)設(shè)計(jì)開(kāi)始初始化數(shù)據(jù)讀出里程顯示頻率測(cè)量速度里程計(jì)算是報(bào)警報(bào)警是否否速度顯示速度顯示模塊圖4-1 系統(tǒng)流程圖系統(tǒng)流程圖如圖4-1所示。待測(cè)信號(hào)經(jīng)預(yù)處理電路后加至單片機(jī)的P3.4(T0)引腳可為單片機(jī)測(cè)量信號(hào)頻率提供有效的輸入信號(hào)。單片機(jī)通過(guò)檢測(cè)P3.4引腳電平來(lái)決定是否啟動(dòng)測(cè)量頻率程序。當(dāng)該引腳為高電平時(shí),系統(tǒng)處于等待狀態(tài),要一直到該引腳出現(xiàn)低電平時(shí)才開(kāi)始測(cè)頻率。我們可從硬件的鋁盤(pán)上知道兩個(gè)過(guò)孔之間在圓周上的距離。而這個(gè)距離M正好為計(jì)算速度和距離起到了基本的數(shù)據(jù)儲(chǔ)備作用。同時(shí)可以從TL0寄存

43、器知道在兩秒內(nèi)單片機(jī)檢測(cè)到的N個(gè)脈沖。而MN所得到的正是這兩秒內(nèi)鋁盤(pán)在圓周上所走得距離S。(此時(shí)假設(shè)在這個(gè)兩秒內(nèi)車(chē)子是勻速前進(jìn)的),距離S除以2秒的時(shí)間,就可以大概的算出這2秒內(nèi)鋁盤(pán)的線速度。再根據(jù)鋁盤(pán)與自行車(chē)的輪子保持著一樣的角速度,得到鋁盤(pán)的線速度與輪子線速度的關(guān)系,從而算出自行車(chē)在這2秒的平均速度。至于里程的計(jì)算,根據(jù)速度計(jì)算的相加即可得到目前的總里程數(shù)。通過(guò)單片機(jī)計(jì)算出來(lái)的速度和里程的數(shù)據(jù),輸出給顯示模塊??偫锍虜?shù)的顯示是設(shè)定出現(xiàn)在自行車(chē)開(kāi)動(dòng),單片機(jī)開(kāi)機(jī)經(jīng)過(guò)初始化后顯示出來(lái),這樣以來(lái)用戶可以清楚的知道自己的車(chē)子已經(jīng)運(yùn)行了多少公里了。而速度的顯示則是在計(jì)算出速度里程后立刻顯示出來(lái),體現(xiàn)實(shí)

44、時(shí)性。4.2 液晶顯示4.2.1 液晶顯示程序流程液晶顯示是本設(shè)計(jì)中比較重要的部分,因?yàn)樵O(shè)計(jì)的最終沒(méi)目的是要顯示行駛的里程、速度、時(shí)間等信息,以及安裝信息和預(yù)設(shè)運(yùn)動(dòng)量的設(shè)置都要通過(guò)本部分來(lái)完成。所以本部分的設(shè)計(jì)好壞也將影響到整個(gè)設(shè)計(jì)的最終結(jié)果。漢字字符顯示地址如表4-1所示。表4-1 DDRAM地址表X坐標(biāo)Line180H81H82H83H84H85H86H87HLine290H91H92H93H94H95H96H97HLine388H89H8AH8BH8CH8DH8EH8FHLine498H99H9AH9BH9CH9DH9EH9FH程序流程圖如圖4-2所示。設(shè)置下一個(gè)地址字?jǐn)?shù)是否超過(guò)8否是待

45、命、脫離睡眠開(kāi)顯示設(shè)置顯示地址寫(xiě)入數(shù)據(jù)開(kāi)始初始化,功能設(shè)定圖4-2 顯示控制流程圖4.2.2 顯示器具體指令1. 指令代碼為(01H)RSRWDB7DB6DB5DB4DB3DB2DB1DB0LLLLLLLLLL CODE: 功能:將 DDRAM填滿”20H”(空格),把DDRAM地址計(jì)數(shù)器調(diào)整為“00H”,重新進(jìn)入點(diǎn)設(shè)定將I/D設(shè)為”1”,光標(biāo)右移AC加1。2. 地址歸位(02H)RSRWDB7DB6DB5DB4DB3DB2DB1DB0LLLLLLLLHX CODE: 功能:把DDRAM地址計(jì)數(shù)器調(diào)整為“00H”,光標(biāo)回原點(diǎn),該功能不影響顯示DDRAM。3. 點(diǎn)設(shè)定(04H/05H/06H/0

46、7H)RSRWDB7DB6DB5DB4DB3DB2DB1DB0LLLLLLLHI/DS CODE:功能:設(shè)定光標(biāo)移動(dòng)方向并指定整體顯示是否移動(dòng)。I/D=1光標(biāo)右移,AC自動(dòng)加1;I/D=0光標(biāo)左移,AC自動(dòng)減1;SH=1且DDRAM為寫(xiě)狀態(tài),整體顯示移動(dòng),方向由I/D決定(I/D=1左移,I/D=0右移);SH=0或DDRAM為讀狀態(tài),整體顯示不移動(dòng)。4. 顯示狀態(tài) 開(kāi)/關(guān)(08H/0CH/ODH/0EH/0FH)RSRWDB7DB6DB5DB4DB3DB2DB1DB0LLLLLLHDCB CODE: 功能:D=1:整體顯示ON;D=0:整體顯示OFF;C=1:光標(biāo)顯示ON;C=0:光標(biāo)顯示O

47、FF;B=1:光標(biāo)位置反白且閃爍;B=0:光標(biāo)位置不反白閃爍。5. 光標(biāo)或顯示移位控制(10H/14H/18H/1CH)RSRWDB7DB6DB5DB4DB3DB2DB1DB0LLLLLHS/CS/LXX CODE: 功能:10H/14H:光標(biāo)左/右移動(dòng),AC減/加1;18H/1CH:整體顯示左/右移動(dòng),光標(biāo)跟隨移動(dòng),AC值不變。6. 功能設(shè)定(20H/24H/26H/30H/34H/36H)RSRWDB7DB6DB5DB4DB3DB2DB1DB0LLLLHDLXREXX CODE: 功能:DL=1:8-BIT控制接口;DL=0:4-BIT控制接口;RE=1:擴(kuò)充指令集動(dòng)作;RE=0:基本指令

48、集動(dòng)作。7. 設(shè)定CGRAM地址(40H-7FH)RSRWDB7DB6DB5DB4DB3DB2DB1DB0LLLHAC5AC4AC3AC2AC1AC0 CODE: 功能:設(shè)定CGRAM地址到地址計(jì)數(shù)器(AC),需確定擴(kuò)充指令中SR=0(卷動(dòng)地址或RAM地址選擇)。8. 設(shè)定DDRAM地址(80H-9FH)RSRWDB7DB6DB5DB4DB3DB2DB1DB0LLHAC6AC5AC4AC3AC2AC1AC0 CODE: 功能:設(shè)定 DDRAM 地址到地址計(jì)數(shù)器(AC)。9. 寫(xiě)資料到RAMRSRWDB7DB6DB5DB4DB3DB2DB1DB0HLD7D6D5D4D3D2D1D0 CODE:

49、功能:寫(xiě)入資料到內(nèi)部的RAM(DDRAM/CGRAM/GDRAM),每個(gè)RAM地址都要連續(xù)寫(xiě)入兩個(gè)字節(jié)的資料。10. 讀出RAM的值RSRWDB7DB6DB5DB4DB3DB2DB1DB0HHD7D6D5D4D3D2D1D0 CODE: 功能:從內(nèi)部RAM讀取數(shù)據(jù)(DDRAM/CGRAM/GDRAM),當(dāng)設(shè)定地址指令后,若需讀取數(shù)據(jù)時(shí)需先執(zhí)行一次空的讀數(shù)據(jù),才會(huì)讀取到正確數(shù)據(jù),第二次讀取時(shí)則不需要,除非又下設(shè)定地址指令。11. 反白選擇(04H-07H)RSRWDB7DB6DB5DB4DB3DB2DB1DB0LLLLLLLHR1R0 CODE: 功能:選擇4行中的任一行作反白顯示,并可決定反白

50、與否。4.3 鍵盤(pán)輸入部分鍵盤(pán)采集模塊采用了ZLG7290讀取芯片,20個(gè)引腳,引腳說(shuō)明如表4-2。表4-2 ZLG7290引腳說(shuō)明引腳號(hào)引腳名稱引腳屬性引腳說(shuō)明13、12、21、22、3、4、5、6Dig7Dig0I/O鍵盤(pán)掃描線10、9、8、7、2、1、23、24SegHSegAI/O鍵盤(pán)掃描線20SDAI/OI2C總線接口數(shù)據(jù)/地址線19SCLI/OI2C總線接口時(shí)鐘線14/INTI中斷輸出端、低有效15/RESI復(fù)位輸入端、低有效17OSIC1I連接晶體以產(chǎn)生內(nèi)部時(shí)鐘18OSIC2016VCC電源電源正(3.35.5V)11GND電源電源地該芯片可驅(qū)動(dòng)64個(gè)按鍵,能提供數(shù)據(jù)譯碼和循環(huán)、

51、移位、段尋址等控制,8個(gè)功能鍵,可檢測(cè)任一鍵的連擊次數(shù)。因?yàn)楸驹O(shè)計(jì)所用的按鍵數(shù)無(wú)需64個(gè),所以采用了其中的16個(gè)按鍵,用到了3、4、5、6、1、2、23、24八個(gè)引腳分別與ROW1ROW4、COL1COL4相連。當(dāng)有按鍵按下時(shí),中斷輸出端/INT變成低電平,芯片ZLG7290通過(guò)掃描將所按的鍵值存入寄存器,單片機(jī)通過(guò)讀取ZLG7290_Key寄存器的值可獲取所按下的鍵值,寄存器ZLG7290_Key所返回的鍵值是按64個(gè)按鍵所編排的,本設(shè)計(jì)只用了其中的16個(gè)鍵,并不是一一對(duì)應(yīng)于64鍵中的第116個(gè)鍵。通過(guò)C程序按圖4-2所示內(nèi)部重新設(shè)置返回值,以達(dá)到所按的鍵與圖3-10所示,在設(shè)計(jì)中,K1、K

52、2、K3、K4、K5、K6、K7、K8、K9、分別代表數(shù)字19的數(shù)字鍵,K0、K15、K16分別代表數(shù)字0和-2(通道1)與-16(通道2)。SDA(I2C總線接口數(shù)據(jù)/地址線)、SCL(I2C總線接口時(shí)鐘線)、/INT(中斷輸出端、低有效)三個(gè)引腳與單片面機(jī)相連,此三個(gè)連接線也是單片機(jī)控制其工作和采集其鍵值的接口,芯片的晶振(4MHZ)和工作電壓(+5V)及復(fù)位等由外部直接接入提供。鍵盤(pán)采集流程圖如圖4-3:是否是有鍵按下?鍵盤(pán)掃描鍵值保存產(chǎn)生中斷開(kāi)始鍵值是否被讀取否圖4-3 鍵盤(pán)采集流程圖當(dāng)輸入設(shè)備鍵盤(pán)有鍵按下是,ZLG7290通過(guò)掃描鍵盤(pán)將所按鍵對(duì)應(yīng)的鍵值(按8*8矩陣排序)保存與內(nèi)部寄

53、存器,同時(shí)將該芯片的中斷輸出口通知單片機(jī),單片機(jī)采集到外部中斷時(shí),停止當(dāng)前操作而去讀取ZLG7290保存在內(nèi)部寄存器KEY里的值。致 謝在這里,首先要感謝學(xué)院領(lǐng)導(dǎo)和老師能夠給予我這樣一個(gè)機(jī)會(huì),能夠做一個(gè)自己感興趣的課題,來(lái)給自己四年的學(xué)業(yè)畫(huà)上一個(gè)圓滿的句號(hào)。感謝我的指導(dǎo)老師丁老師。由于我去校外實(shí)習(xí)兩個(gè)月,所以關(guān)于畢業(yè)設(shè)計(jì)的一些事情都是丁老師特意通知的,而且在我實(shí)習(xí)回來(lái)后,對(duì)我的課題進(jìn)行批注和輔導(dǎo),再次感謝丁老師對(duì)我的悉心指導(dǎo)。感謝我的輔導(dǎo)員王老師。我們即將畢業(yè)離去,回首大學(xué)四年,不管是學(xué)習(xí)、工作、生活等方面遇到什么問(wèn)題,王老師都像我們的父母一樣關(guān)心著我們,教育我們?nèi)绾巫鋈俗鍪?。感謝我的同學(xué)。在

54、做畢業(yè)設(shè)計(jì)這段時(shí)間里,我遇到很多難題,同學(xué)給予我很大的幫助,如果沒(méi)有他們,我的畢業(yè)設(shè)計(jì)就無(wú)法完成。感謝我的父母。他們時(shí)時(shí)刻刻在我的身后支持著我,不管遇到什么困難和挫折,他們永遠(yuǎn)都是我溫暖的避風(fēng)港,給予我支持和幫助。千言萬(wàn)語(yǔ)也無(wú)法訴說(shuō)我內(nèi)心的感謝,在我以后的道理上,我不會(huì)忘記他們對(duì)我的支持和幫助,最后,衷心的說(shuō)一聲:謝謝你們!參考文獻(xiàn)1 馬忠梅.單片機(jī)的C 語(yǔ)言應(yīng)用程序設(shè)計(jì)M.北京: 北京航空航天大學(xué)出版社, 20012 孟立凡,藍(lán)金輝.傳感器原理與應(yīng)用.北京:電子工業(yè)出版社,2007.83 張俊謨.單片機(jī)中級(jí)教程(第二版).北京:北京航空航天大學(xué)出版社, 2007.94 李維堤,郭強(qiáng).液晶顯示

55、應(yīng)用技術(shù)M.北京: 電子工業(yè)出版社, 19965 高吉祥,唐朝京.數(shù)字系統(tǒng)與自動(dòng)控制系統(tǒng)設(shè)計(jì).北京:電子工業(yè)出版社, 2007.66 船倉(cāng)一郎,土屋堯,堀桂太郎.機(jī)器人控制電子學(xué):北京:科學(xué)出版社,004.57 蔡美琴,等.MCS-51系列單片機(jī)系統(tǒng)及其應(yīng)用(第二版).北京;高等教育出版社, 2004.68 趙負(fù)圖,傳感器集成電路手冊(cè),第一版,化學(xué)工業(yè)出版社,2004,5905919 馬建國(guó).電子系統(tǒng)設(shè)計(jì).北京:高等教育出版社,2004.110 譚浩強(qiáng).C程序設(shè)計(jì)(第三版).北京:清華大學(xué)出版社,2005.711 王建校. 51系列單片機(jī)及C51程序設(shè)計(jì)M . 北京:科學(xué)出版社, 2002.1

56、2 霍孟友.單片機(jī)原理與應(yīng)用M .北京:機(jī)械工業(yè)出版社,2004.13 何立民,單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì),北京:航天航空大學(xué)出版社,25,465014 李廣弟,單片機(jī)基礎(chǔ),北京:北京航空航天大學(xué)出版社,2001,566415 何希才,新型實(shí)用電子電路400例,電子工業(yè)出版社,2000年,606516 Wolf W, 孫玉芳等譯. 嵌入式計(jì)算系統(tǒng)設(shè)計(jì)原理. 北京: 機(jī)械工業(yè)出版社, 2002 17 鄭人杰. 計(jì)算機(jī)軟件測(cè)試技術(shù). 北京: 清華大學(xué)出版社, 1992 18 胡漢才. 單片機(jī)原理及系統(tǒng)設(shè)計(jì). 北京:清華大學(xué)出版社, 200219 Silicon Storage Technology Inc

57、, SST39VF800A Datasheet.200120 Integrated Silicon Solution Inc. IS61LVI2816 Datasheet.200221 Texas Instruments Inc. TPS767D318 Datasheet. 1999附 錄源程序(用C51編寫(xiě)的,keil C51編譯器)/*多功能自行車(chē)速度計(jì)程序。AT89C51單片機(jī),24M晶振,LCD同時(shí)顯示自行車(chē)速度、行程和時(shí)鐘,并有超速報(bào)警功能。通過(guò)鍵盤(pán)輸入可對(duì)準(zhǔn)時(shí)鐘,也可隨時(shí)對(duì)時(shí)鐘和行程復(fù)位,時(shí)鐘復(fù)位時(shí)即進(jìn)入計(jì)時(shí)模式。*/#include#defineuchar unsigned char#defineuint unsigned int/*將表格數(shù)據(jù)存于ROM中*/ucharcode start1= WELCOME! *; /開(kāi)機(jī)界面ucharcode chart=0 x30,0 x31,0 x32,0 x33,0 x34,0 x35,0 x36,0 x37,0 x38,0 x39; /數(shù)據(jù)09的ASCII存于ROM中ucharcodegroup214=c4.5,c4.6,c4.7,c4.8,c

展開(kāi)閱讀全文
溫馨提示:
1: 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
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ì)自己和他人造成任何形式的傷害或損失。

相關(guān)資源

更多
正為您匹配相似的精品文檔
關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號(hào):ICP2024067431號(hào)-1 川公網(wǎng)安備51140202000466號(hào)


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺(tái),本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請(qǐng)立即通知裝配圖網(wǎng),我們立即給予刪除!