心率測試儀設(shè)計(jì)與制作.docx_第1頁
心率測試儀設(shè)計(jì)與制作.docx_第2頁
心率測試儀設(shè)計(jì)與制作.docx_第3頁
心率測試儀設(shè)計(jì)與制作.docx_第4頁
心率測試儀設(shè)計(jì)與制作.docx_第5頁
已閱讀5頁,還剩17頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、心率測試儀設(shè)計(jì)與制作摘要:脈搏波所呈現(xiàn)出來地形態(tài)、強(qiáng)度、速率和節(jié)律等方面地綜合信息,能反映出人體心血管系統(tǒng)中許多生理疾病地血流特征.本系統(tǒng)采用AT89S52 單片機(jī)為核心而制作地一種實(shí)用型脈搏測量儀 .采用紅外發(fā)射和接收二極管作為傳感器對人體地脈搏心率警醒數(shù)據(jù)采集.得到地信號經(jīng)過整形和放大后送入AT89S52 單片機(jī)進(jìn)行處理.單片機(jī)將采集到地脈搏心率在LCD液晶顯示器上實(shí)時(shí)顯示出來,同時(shí)還設(shè)置了脈搏測量儀地上下限報(bào)警電路.本文首先描述本設(shè)計(jì)地整體思路,然后介紹各個(gè)部分設(shè)計(jì)中地細(xì)節(jié)問題,最后提出一些完善本設(shè)計(jì)地改進(jìn)意見 .關(guān)鍵字:脈搏計(jì)單片機(jī) AT89S52 人體脈搏信號實(shí)時(shí)顯示目錄1.系統(tǒng)方案

2、選擇與論證31.1 任務(wù)31.2 要求31.3 系統(tǒng)基本方案31.3.1 各部分電路地方案選擇及論證41.3.2系統(tǒng)各模塊地最終方案52.系統(tǒng)硬件設(shè)計(jì)62.1信號采集整形部分設(shè)計(jì)62.2 矩陣鍵盤地設(shè)計(jì)72.3 液晶顯電路73系統(tǒng)軟件設(shè)計(jì)83.1 系統(tǒng)主程序地設(shè)計(jì)83.2 脈搏波動(dòng)頻率測量子程序地設(shè)計(jì)93.3 鍵盤掃描子程序124.調(diào)試與分析135.收獲與體會(huì)13附錄 1(硬件電路原理圖):14附錄 2(主要程序):141.系統(tǒng)方案選擇與論證1.1 任務(wù)設(shè)計(jì)并制作一個(gè)脈搏檢測器1.2 要求( 1)、通過脈搏傳感器采樣脈搏信號,設(shè)計(jì)脈搏波檢測電路,通過示波器顯示出來( 2)、將整形后地脈沖波送入

3、單片機(jī),采用單片機(jī)構(gòu)成脈搏檢測儀,要求實(shí)時(shí)顯示脈率變化,脈率超限時(shí)用蜂鳴器報(bào)警,報(bào)警范圍可以通過鍵盤設(shè)定.1.3 系統(tǒng)基本方案根據(jù)題目地要求系統(tǒng)模塊可以基本劃分為:脈搏傳感器部分、信號放大整形電路部分、單片機(jī)處理電路部分及顯示電路部分.為實(shí)現(xiàn)各模塊地功能,分別做了幾種不同地設(shè)計(jì)方案病進(jìn)行了論證1.3.1 各部分電路地方案選擇及論證(1)脈搏傳感器部分傳感器又稱為換能器、變換器等.脈搏傳感器是脈搏檢測系統(tǒng)中重要地組成部分,其基本功能是將切脈壓力和橈動(dòng)脈搏動(dòng)壓力這樣一些物理量(非電量 ) 轉(zhuǎn)換成為便于測量地電量.脈搏傳感器地精度、靈敏度、抗干擾能力及安裝方式?jīng)Q定了脈搏測量精度,因此其選型對整個(gè)設(shè)計(jì)

4、具有決定性地作用.目前,脈搏信號地測量方式主要有:1、光電脈搏波傳感器.血管不受壓力時(shí),血流均勻,反射光也比較均勻,故傳感器無脈搏信號輸出;當(dāng)血管受壓血液不流動(dòng)時(shí),傳感器也無輸出信號;只有當(dāng)血管受到擠壓,血管中地血液斷續(xù)流動(dòng)時(shí),反射光也隨之變化,這時(shí)傳感器輸出脈搏信號,達(dá)到了測量脈搏地作用 .這種傳感器地特點(diǎn)是結(jié)構(gòu)簡單、可靠性高、抗干擾能力強(qiáng),主要用于測量脈搏地跳動(dòng)次數(shù) .人體不同部位地脈搏波波形存在差異,光電脈搏波傳感器不適合用于提取不同部位地脈搏波信號.2、力傳感器測量.其測量原理是,將測力傳感器地受力端壓在人體橈動(dòng)脈處,模仿人地指頭 .這種方式通常采用壓阻式傳感器,它具有抗干擾能力強(qiáng)地特

5、點(diǎn),但由于動(dòng)脈血管產(chǎn)生地力很小,故量程小,抗沖擊力不強(qiáng).3、脈搏信號還表現(xiàn)為皮膚振動(dòng),因此可以用加速度傳感器進(jìn)行檢測,其特點(diǎn)是結(jié)構(gòu)簡單、體積小、波形測量精度較高.本設(shè)計(jì)中,采用第一種脈搏傳感器,即廣電脈搏波傳感器.(2)信號放大整形電路部分脈搏傳感器出來地電壓信號較弱,一般在毫伏級,需要對其進(jìn)行放大. 所以,設(shè)計(jì)信號放大電路,將脈搏傳感器出來地信號進(jìn)行放大,使之成為一個(gè)幅值適當(dāng)?shù)匦盘?,便于后續(xù)電路地處理 .由于本設(shè)計(jì)對于脈搏波地整形要求比較低,只需要將每個(gè)脈搏波整形成為一個(gè)標(biāo)準(zhǔn)地方波,送入單片機(jī)中進(jìn)行計(jì)數(shù),即可.所以這部分電路采用了比較簡單地方法,只需用 6 個(gè)反向器對從傳感器得到地信號進(jìn)行放

6、大和整形就可以地了.(3)單片機(jī)選擇(推薦使用51 單片機(jī))本設(shè)計(jì)作為一個(gè)簡單脈搏測量儀,最后需給出脈搏波動(dòng)頻率.以單片機(jī)作為信息處理中心,通過對單片機(jī)進(jìn)行編程,完成信號輸入檢測、信息分析處理及信息顯示.1、 AVR單片機(jī)AVR單片機(jī)是ATMEL公司生產(chǎn)地單片機(jī).高速度(50ns)、低功耗,硬件應(yīng)用Harward結(jié)構(gòu),具有預(yù)取指令功能,使得指令可以在一個(gè)時(shí)鐘周期內(nèi)執(zhí)行,而MSC-51要12 個(gè)時(shí)鐘周期執(zhí)行一條指令.AVR單片機(jī)如LPC2131等.2、凌陽單片機(jī)凌陽是臺灣凌陽公司推出地單片機(jī),具有高速度、低價(jià)、可靠、實(shí)用、體積小、功耗低和簡單易學(xué)等特點(diǎn),如SPCE061 等 .3、 51 單片機(jī)

7、51 單片機(jī)是INTEL公司生產(chǎn)地.它具有結(jié)構(gòu)簡單,價(jià)格便宜,易于開發(fā)地特點(diǎn).通用型,有總線擴(kuò)展,有較強(qiáng)地位處理功能,有全雙工異步串行通信口.但是其功能相對較少,訪問外部數(shù)據(jù)有瓶頸,作電壓范圍窄.本設(shè)計(jì)中,單片機(jī)只需要對脈搏信號地波動(dòng)頻率進(jìn)行測量、計(jì)算和顯示,對單片機(jī)地要求不是很高 .而對 51 單片機(jī),本人比較熟悉,所以,本設(shè)計(jì)中選擇 51 單片機(jī)作為信息處理中心 .在 51 系列單片機(jī)中,AT89 系列單片機(jī)是美國ATMEL公司推出地一種新型高性能低價(jià)位、低電壓低功耗地8 位 CMOS 微型計(jì)算機(jī) .AT89S52 就是其中一款,它可以完全滿足本設(shè)計(jì)地設(shè)計(jì)要求,而且,AT89S52 地價(jià)格

8、較低 .( 4)鍵盤與顯示部分根據(jù)題目要求,設(shè)計(jì)出來地系統(tǒng)是可以設(shè)定報(bào)警地范圍地.對鍵盤和顯示部分采用以下方案:采用液晶顯示屏和通用矩陣鍵盤.液晶顯示屏(LCD )具有功耗小、輕薄短小無輻射危險(xiǎn),平面直角顯示以及影象穩(wěn)定不閃爍,可視面積大,畫面效果好,抗干擾能力強(qiáng),并可靈活地現(xiàn)實(shí)多種狀態(tài).根據(jù)以上論述,51 單片機(jī)資源豐富,根據(jù)需要,我們選用方案一.1.3.2系統(tǒng)各模塊地最終方案根據(jù)以上分析,結(jié)合器件和設(shè)備等因素,確定如下方案:1. 采用 AT89S52 單片機(jī)作為控制器,分別對輸入、顯示、信號地處理控制.2. 傳感器部分采用光電脈搏傳感器,該器件結(jié)構(gòu)簡單、可靠性高、抗干擾能力強(qiáng)3. 信號地處

9、理采用六個(gè)反向器對其進(jìn)行放大和整形4. 顯示用 LCD 液晶顯示實(shí)時(shí)脈搏數(shù)和報(bào)警上下限數(shù)值.系統(tǒng)地基本框圖如下圖所示 .顯脈 搏信號單 片 機(jī)傳 感放大示處 理 電器電路電路路2.系統(tǒng)硬件設(shè)計(jì)鍵盤輸入報(bào)警電路2.1信號采集整形部分設(shè)計(jì)本部分由傳感器部分和整形電路部分組成.傳感器由紅外線發(fā)射二極管和接收而以機(jī)關(guān)組成,測量原理如下:由于手指放在光地傳遞路徑中,血管中血液地飽和度地變化將引起光地傳遞強(qiáng)度變化,此變化和心跳地節(jié)拍相對應(yīng),因此紅外接收二極管地電流也跟著心跳地節(jié)拍改變,使得紅外接收二極管輸出與心跳節(jié)拍相對應(yīng)地脈沖信號.該脈沖信號經(jīng)過U7U5 ,R3R5 ,C1 、 C2 等組成地低通放大器

10、放大,U4 、 R6、R7 、C3 組成地放大器進(jìn)一步放大后,送給由U3 、U2 、 RV1、 R8 等組成地施密特觸發(fā)器整形后輸出,作為單片機(jī)地外部中斷信號 .電路中地可變電阻RV1 用來調(diào)整施密特觸發(fā)器地靈敏度,RV1 越小,該觸發(fā)器就會(huì)越靈敏 .2.2 矩陣鍵盤地設(shè)計(jì)由于控制鍵位較多,方便程序設(shè)計(jì),硬件安全可靠,我們設(shè)計(jì)44 矩陣鍵盤,與單片機(jī) P1 口相連,電路如圖2.2 所示 .圖 2.2 矩陣鍵盤電路2.3 液晶顯電路我們用單片機(jī)P0口作為1602地?cái)?shù)據(jù)傳輸口,P2.0為數(shù)據(jù)命令選擇端、P2.1讀寫、P2.2 使能端.硬件電路如圖2.3 所示 .圖 2.3 液晶硬件電路圖3系統(tǒng)軟件

11、設(shè)計(jì)3.1 系統(tǒng)主程序地設(shè)計(jì)系統(tǒng)主程序控制單片機(jī)系統(tǒng)按預(yù)定地操作方式運(yùn)行,是單片機(jī)系統(tǒng)程序地框架.系統(tǒng)主程序流程圖如圖:開始系統(tǒng)初始化NP3.2 是否為上升沿?Y脈搏波動(dòng)頻率測量子程LCD 顯示圖系統(tǒng)主程序流程圖上電后,首先進(jìn)行整機(jī)初始化處理.主程序地初始化模塊主要完成儀器硬件、軟件地初態(tài)設(shè)置,單片機(jī)內(nèi)專用寄存器地設(shè)定,單片機(jī)工作方式及各端口地工作狀態(tài)地規(guī)定.整機(jī)初始化結(jié)束后,檢測P3.2 口地狀態(tài),如果檢測到上升沿,則進(jìn)入脈搏波動(dòng)頻率測量子程序,測得脈搏波動(dòng)頻率之后,送到LCD 顯示單元進(jìn)行顯示.3.2 脈搏波動(dòng)頻率測量子程序地設(shè)計(jì)本設(shè)計(jì)中對脈搏頻率地測量采用周期測量法.可將單片機(jī)內(nèi)定時(shí)/計(jì)

12、數(shù)器 T0 定為 16 位定時(shí)器,對內(nèi)部機(jī)器周期計(jì)數(shù),即方式控制字為#01H. 定時(shí)器地開關(guān)由程序根據(jù)P3.2 口上地狀態(tài)進(jìn)行控制,檢測到上升沿時(shí)開T0 計(jì)數(shù),當(dāng)緊接著地另一個(gè)上升沿被檢測到時(shí)關(guān)T0 計(jì)數(shù) .T0 中地計(jì)數(shù)值為nx ,則被測脈搏信號周期(對于12MHz晶振,Ts=1 s),每分鐘跳動(dòng)次數(shù).考慮到脈搏地頻率很低,大約為1HZ 左右,而16 位定時(shí) /計(jì)數(shù)器地最高計(jì)數(shù)值為65535,這樣定時(shí) /計(jì)數(shù)器將發(fā)生溢出,且最后脈搏波動(dòng)頻率地計(jì)算涉及到雙字節(jié)除法,編程較復(fù)雜 .為此,采用定時(shí)器中斷方式,即在一個(gè)脈搏周期內(nèi),隔一段時(shí)間 T1, T1 即為中斷周期,且 T165535 ,就將 T

13、H0 , TL0 清零 .設(shè) N 為每分鐘脈搏跳動(dòng)次數(shù),T 為脈搏跳動(dòng)周期,則本設(shè)計(jì)中,設(shè)定顯示地每分鐘脈搏跳動(dòng)次數(shù)誤差不超過1 次,則若 T=2,則定時(shí)器周期T 不超過 1/15 秒.若 T=1,則定時(shí)器周期T 不超過 1/60 秒.取 T=1 ,即定時(shí)器周期T 不超過 1/60 秒 .設(shè)中斷周期為T1,中斷次數(shù)為n,則:為方便計(jì)算,?。? 由于定時(shí)器周期T 不超過1/60 秒,即,故取m=7. 即中斷周期為,此時(shí), TH0=1EH ,TL0=84H. 每分鐘脈搏跳動(dòng)次數(shù),為方便計(jì)算,取.脈搏波動(dòng)頻率測量子程序流程圖如下圖所示.0 R3EC TH0,78 TL0TR0 置 1,開始計(jì)數(shù)N是

14、否TH0=0 ,TL0=0 ?YTR0 置1,開始計(jì)數(shù)n 加 1NP3.2 是否為上跳沿?YTR0 置 0 ,定時(shí)器停止工計(jì)算1 分鐘內(nèi)地脈搏數(shù)結(jié)束脈搏頻率測量中斷服務(wù)程序流程圖3.3 鍵盤掃描子程序開始鍵盤掃描功能鍵是否按下?是否設(shè)置上下限脈搏次數(shù)主函數(shù)鍵盤子程序流程圖4.調(diào)試與分析經(jīng)過一番地努力和奮斗后,終于在限定地時(shí)間中把程序和硬件部分都完全做出來了.但是做出來了并不代表能夠使用,每一個(gè)作品都需要上千次地調(diào)試.第一次調(diào)試地時(shí)候,接通電源, LCD 液晶顯示屏燈亮了,但是并沒有字體顯示.原因:液晶顯示屏地對比度調(diào)得太高了,以至于全部地字體都無法顯示,經(jīng)過調(diào)整滑動(dòng)變阻器地阻值大小,終于能夠清

15、晰地顯示出來了 .第二次調(diào)試,程序地顯示不正常,經(jīng)常發(fā)生程序跑飛地情況.原因:單片機(jī)主機(jī)部分電路復(fù)位電容沒有接好,以至于出現(xiàn)這樣地問題.經(jīng)過后來重新把電容焊好后,就沒有再出現(xiàn)這樣地情況了 .5.收獲與體會(huì)本次實(shí)驗(yàn)由我和隊(duì)員共同完成,在這個(gè)過程中使我受益匪淺.在確定各模塊電路地過程中,不但訓(xùn)練了我們查找資料地能力,更是一次很好考驗(yàn)我們用所學(xué)地模擬電子技術(shù)基礎(chǔ)和數(shù)字電子技術(shù)基礎(chǔ)等相關(guān)知識來判斷電路正確與否地機(jī)會(huì).通過此次課程設(shè)計(jì)地鍛煉,自己地動(dòng)手能力有了很大地提高,查找問題、解決問題地能力也有了相應(yīng)地進(jìn)步.當(dāng)然,這次實(shí)驗(yàn)也讓我看到了我們地很多缺陷.首先就是在畫原理圖地時(shí)候沒有看清反向器地管腳,以致

16、差點(diǎn)出現(xiàn)做出了一塊無用地電路板地情況.還有就是在確定方案之前,沒有在實(shí)驗(yàn)板上認(rèn)真搭建電路,事前摸清放大模塊地工作情況.總地來說,本次設(shè)計(jì)有苦也有甜. 設(shè)計(jì)思路是最重要地,只要你地設(shè)計(jì)思路是成功地,那你地設(shè)計(jì)已經(jīng)成功了一半,因此我們應(yīng)該在設(shè)計(jì)前做好充分地準(zhǔn)備.同時(shí)在實(shí)踐地過程中,一定不能半途而廢,或者是中途改設(shè)計(jì)思路.因?yàn)檫@樣不僅會(huì)浪費(fèi)大量地時(shí)間與精力,還會(huì)讓你自己沒有了一往直前地勇氣.因此,在做這些設(shè)計(jì)地時(shí)候一定需要耐心和勇氣去克服在中途遇到地困難和阻力 .同時(shí)熟練地掌握課本上地知識,這對實(shí)驗(yàn)中出現(xiàn)地問題進(jìn)行分析解決也是相當(dāng)重要地 . 這次設(shè)計(jì)留給我們印象最深地是要設(shè)計(jì)一個(gè)成功地電路,必須要有

17、耐心,更要有堅(jiān)持地毅力 .附錄 1(硬件電路原理圖):附錄 2(主要程序):主程序:unsigned char key_value 。/ 存放鍵盤返回unsigned char key_flag=0 。 / 定義有鍵按下地標(biāo)志unsigned char i,j,t,m,DispBuf10=M,a,i,B,o,:,0,0,0,0unsigned int n,mb,w,f 。void display_times() 。#include reg52.h#include lcd.c#include hardware.c#include user1.h#include key.csbit P3_0=P3

18、0 。void main()EA=0 。sys_init() 。LCD_Initial() 。delay_20ms(10) 。LCD_Write(0,0x01) 。/ 清屏LCD_Print(5,0,Welcome!)。delay_20ms(10) 。LCD_Print(0,0,MaiBoCeLiang)。LCD_Print(0,1,e Control!)。delay_20ms(10) 。LCD_Write(0,0x01) 。/ 清屏LCD_Print(0,0,LSTC) 。LCD_Print(0,1,by LWL&MZL)。delay_20ms(10) 。LCD_Write(0,0x01)

19、。/ 清屏LCD_Print(0,0,XuanZe FanWei:)。LCD_Print(0,1,MoRenwei:50120)。while(1) unsigned int w=0 。 key_value=kbscan() 。 if(key_flag=1)key_command(key_value) 。w=1 。if(w=1)break。LCD_Write(0,0x01) 。/ 清屏delay_20ms(10) 。displayHL() 。LCD_Print(0,1,Testing.)。delay_20ms(20) 。LCD_Write(0,0x01) 。/ 清屏displayHL()。TMO

20、D=0x01 。 / 定時(shí)器 T0 工作于方式1TH0=0xec 。TL0=0x78 。/T0定時(shí)時(shí)間為5msIE=0x83 。IT0=1 。TR0=1 。/開中斷/外部中斷/開定時(shí)器0 為邊沿觸發(fā)方式T0for( 。 )/脈搏指示燈控制if(P3_0=0)delay_20ms(50) 。P3_0=1。/useralarm()。external0() interrupt 0/ 外部中斷服務(wù)程序P3_0=0。/ 點(diǎn)亮指示燈if(n=0)mb=0。elsemb=12000/n 。/ 計(jì)算每分鐘脈搏數(shù)f=mb 。DispBuf8=mb%10+0x30。 /取個(gè)位數(shù)mb=mb/10 。DispBuf7

21、=mb%10+0x30。 /取十位數(shù)DispBuf6=mb/10+0x30。 /取百位數(shù)LCD_Print(3,1,DispBuf)。n=0。Timer0() interrupt 1/ 定時(shí)中斷服務(wù)程序TH0=0xec 。TL0=0x78 。n+。if(n=2000)/10 秒鐘測不到心率,n 復(fù)位n=0。鍵盤掃描程序:#include #include unsigned char key_value 。unsigned char key_flag 。 char code tab44= /7,8,9, E UP.,1,4,7,0,2,5,8,/4,5,6, D downF,3,6,9,/1,2

22、,3 , C SETB,C,D,E。/0 到 F 地 16 個(gè)鍵植void delay(unsigned char a)unsigned char i。while(a-)for(i=100 。 i0 。 i-) 。unsigned char kbscan()/ 鍵盤掃描unsigned char hang,lie,key 。key_flag=0 。P1=0x0f 。if(P1!=0x0f)delay(10) 。if(P1!=0x0f)key_flag=1 。P1=0x0f 。switch(P1&0x0f)case 0x0e:lie=0。 break。case 0x0d:lie=1。 break

23、。case 0x0b:lie=2。 break。case 0x07:lie=3。 break。P1=0xf0 。switch(P1&0xf0)case 0xe0:hang=0。 break。case 0xd0:hang=1。 break。case 0xb0:hang=2。 break。case 0x70:hang=3。 break。P1=0x0f 。while(P1!=0x0f) 。key=tabhanglie 。return (key) 。/A .,0,F +/- ,B OKelse return(key_value) 。void setmaibo(void)unsigned char i

24、。LCD_Write(0,1) 。GotoXY(0,0) 。Print(H_Maibo:) 。for(i=0 。 i3 。 i+)key_flag=0 。while(key_flag=0)key_value=kbscan() 。while(1)if(key_value!=B&key_value!=C&key_value!=D&key_value!=E&key_value!=F&k ey_value!=.) break 。else key_value=kbscan() 。get_hti=key_value 。LCD_Write(1,key_value+0x30)。GotoXY(0,1) 。Pri

25、nt(L_Maibo:)。for(i=0 。 i2 。 i+)key_flag=0 。while(key_flag=0)key_value=kbscan() 。while(1)if(key_value!=B&key_value!=C&key_value!=D&key_value!=E&key_value!=F&k ey_value!=.) break 。else key_value=kbscan() 。get_lti=key_value 。LCD_Write(1,key_value+0x30)。while(1)key_value=kbscan() 。if(key_value=C) break

26、。mh=get_ht0*100+get_ht1*10+get_ht2。ml=get_lt0*10+get_lt1。LCD_Write(0,0x01) 。GotoXY(0,0) 。Print(Set Sucess!) 。delay_20ms(50) 。LCD_Write(0,0x01) 。void key_command(unsigned char key_value)switch (key_value)case C:setmaibo()。 break。default:break 。液晶顯示程序:#include /Port Definitions*sbit LcdRssbit LcdRw= P

27、20。= P21。sbit LcdEn= P22。sfr DBPort= 0x80 。/P0=0x80,P1=0x90,P2=0xA0,P3=0xB0.數(shù)據(jù)端口void lcd_delay(unsigned char t) unsigned char i,j 。 for(i=0 。 it 。 i+)for(j=0 。 j100 。 j+) 。/內(nèi)部等待函數(shù)*void LCD_Wait(void)/讀忙狀態(tài)LcdRs=0。LcdRw=1 。 _nop_()。LcdEn=1 。 _nop_() 。LcdEn=0 。/向 LCD 寫入命令或數(shù)據(jù)*#define LCD_COMMAND0 / Comm

28、and#define LCD_DATA1/ Data#define LCD_CLEAR_SCREEN 0x01/ 清屏#define LCD_HOMING0x02/ 光標(biāo)返回原點(diǎn)void LCD_Write(bit style, unsigned char input)/寫數(shù)據(jù)1/命令0LcdEn=0 。LcdRs=style 。LcdRw=0 。 _nop_()。DBPort=input。 _nop_() 。LcdEn=1 。 _nop_()。lcd_delay(10) 。 LcdEn=0 。 _nop_() 。LCD_Wait()。/設(shè)置顯示模式*#define LCD_SHOW0x04/

29、 顯示開#define LCD_HIDE0x00/ 顯示關(guān)#define LCD_CURSOR0x02/顯示光標(biāo)#define LCD_NO_CURSOR0x00/ 無光標(biāo)#define LCD_FLASH0x01/ 光標(biāo)閃動(dòng)#define LCD_NO_FLASH0x00/ 光標(biāo)不閃動(dòng)void LCD_SetDisplay(unsigned char DisplayMode)LCD_Write(LCD_COMMAND,0x08|DisplayMode)。/設(shè)置輸入模式*#define LCD_AC_UP0x02#define LCD_AC_DOWN0x00/ default#define LCD_MOVE0x01/ 畫面可平移#define LCD_NO_MOVE0x00/defaultvoid LCD_SetInput(unsigned char InputMode)LCD_Write(LCD_COMMAND,0x04|InputMode)。/初始化 LCD*void LCD_Initial(void)/初始化LCDLCD_Write(0,0x38) 。LCD_Write(0,0x38) 。 /8 位數(shù)據(jù)端口 ,2 行顯示 ,5*7 點(diǎn)陣lcd_delay(300) 。LCD_SetDispl

溫馨提示

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

最新文檔

評論

0/150

提交評論