點(diǎn)陣led模塊顯示屏設(shè)計(jì)方案_第1頁
點(diǎn)陣led模塊顯示屏設(shè)計(jì)方案_第2頁
點(diǎn)陣led模塊顯示屏設(shè)計(jì)方案_第3頁
點(diǎn)陣led模塊顯示屏設(shè)計(jì)方案_第4頁
點(diǎn)陣led模塊顯示屏設(shè)計(jì)方案_第5頁
已閱讀5頁,還剩28頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、目錄摘要I目錄II第一章 緒論11.1課題來源11.2設(shè)計(jì)任務(wù)及要求1第二章 系統(tǒng)方案設(shè)計(jì)32.1系統(tǒng)的總體設(shè)計(jì)32.2各模塊的設(shè)計(jì)。32.2.1核心控制模塊的的設(shè)計(jì)32.2.2光筆設(shè)計(jì)32.2.3顯示方案的設(shè)計(jì)42.2.4點(diǎn)陣顯示模式設(shè)計(jì)4第三章 系統(tǒng)硬件設(shè)計(jì)53.1光筆的設(shè)計(jì)53.2 3232LED點(diǎn)陣的連接63.3 3232LED點(diǎn)陣的驅(qū)動控制電路73.4 顯示電路部分功能及原理73.5 鍵盤的使用及設(shè)計(jì)83.6 光照的檢測與控制9第四章 系統(tǒng)軟件設(shè)計(jì)114.1主程序設(shè)計(jì)114.2 外中斷0服務(wù)程序(坐標(biāo)檢測)124.3.外中斷1服務(wù)程序(按鍵處理)134.4LCM103驅(qū)動程序設(shè)計(jì)13

2、第五章 系統(tǒng)測試與結(jié)果155.1 劃亮反顯擦除拖移的測試和結(jié)果155.2屏亮自動調(diào)節(jié)測試和結(jié)果155.3 超時關(guān)顯示節(jié)電測試和結(jié)果15總結(jié)及展望16致謝17參考文獻(xiàn)18附錄1 總電原理圖(單片機(jī)系統(tǒng)與點(diǎn)陣驅(qū)動電路)19附錄2 總電原理圖(3232點(diǎn)陣連接電路)20附錄3 源程序21第一章緒論1.1課題來源本課題來源于全國大學(xué)生電子設(shè)計(jì)競賽LED點(diǎn)陣書寫顯示屏,它是一種控制半導(dǎo)體發(fā)光二極管的顯示裝置,其主要功能是實(shí)現(xiàn)“點(diǎn)亮、劃亮、反顯、整屏擦除、筆畫擦除、連寫多字、對象拖移”等書寫顯示。1.2設(shè)計(jì)任務(wù)及要求設(shè)計(jì)并制作一個基于3232點(diǎn)陣LED模塊的書寫顯示屏,其系統(tǒng)結(jié)構(gòu)如圖1-1所示。在控制器的

3、管理下,LED點(diǎn)陣模塊顯示屏工作在人眼不易覺察的掃描微亮和人眼可見的顯示點(diǎn)亮模式下;當(dāng)光筆觸及LED點(diǎn)陣模塊表面時,先由光筆檢測觸及位置處LED點(diǎn)的掃描微亮以獲取其行列坐標(biāo),再依據(jù)功能需求決定該坐標(biāo)處的LED是否點(diǎn)亮至人眼可見的顯示狀態(tài),從而在屏上實(shí)現(xiàn)“點(diǎn)亮、劃亮、反顯、整屏擦除、筆畫擦除、連寫多字、對象拖移”等書寫顯示功能??刂破?232 LED 點(diǎn)陣模塊 光筆 圖1-1LED點(diǎn)陣書寫顯示屏系統(tǒng)結(jié)構(gòu)示意圖設(shè)計(jì)的最終要求是:在點(diǎn)亮功能下當(dāng)光筆接觸屏上某點(diǎn)LED時,能即時點(diǎn)亮該LED;在劃亮功能下當(dāng)光筆快速劃過時,能同步點(diǎn)亮劃過的各LED,其速度要求2S內(nèi)能劃過并點(diǎn)亮40點(diǎn)LED;在反顯功能下能

4、對屏上顯示的信息實(shí)現(xiàn)反向顯示;在屏幕擦除功能下能實(shí)現(xiàn)對屏上所顯示信息整屏擦除;在筆畫擦除功能下,能用光筆擦除屏上所顯漢字的筆畫;在連寫多字功能下,能結(jié)合自選的擦除方式,在30S內(nèi)以劃亮方式寫出四個漢字且存入機(jī)內(nèi);在對象拖移功能下,能用光筆將選定顯示內(nèi)容在屏上進(jìn)行拖移,先用光筆以劃亮方式在屏上圈定欲拖移顯示對象,再用光筆將該對象拖移到屏上另一位置;當(dāng)光強(qiáng)改變時,能自動連續(xù)調(diào)節(jié)屏上顯示亮度;當(dāng)光筆連續(xù)未接觸屏面的時間超過1-5MIN時,自動關(guān)閉屏上顯示,并使系統(tǒng)進(jìn)入休眠模式。第二章系統(tǒng)方案設(shè)計(jì)2.1系統(tǒng)的總體設(shè)計(jì)根據(jù)課題要求,LED點(diǎn)陣書寫顯示屏由主控模塊,按鍵電路、LED點(diǎn)陣模塊、光筆電路及LE

5、D點(diǎn)陣驅(qū)動顯示等部分組成。系統(tǒng)框圖如圖2-1所示:按鍵MCU驅(qū)動電 路LED點(diǎn)陣光筆檢 測LCD顯示光強(qiáng)檢 測 圖2-1系統(tǒng)框圖2.2各模塊的設(shè)計(jì)。2.2.1核心控制模塊的的設(shè)計(jì)核心控制模塊是系統(tǒng)的大腦,控制著系統(tǒng)的所有輸入輸出、計(jì)算、判斷與決策?!癓ED點(diǎn)陣書寫顯示屏”檢測精度要求高且數(shù)據(jù)存儲容量大,選擇適合的控制模塊,能確保其快速是實(shí)現(xiàn)穩(wěn)定及達(dá)到系統(tǒng)要求的基本條件。使用STC系列單片機(jī),該系列單片機(jī)是高集成單片機(jī),功能和性能都要比51系列強(qiáng)大很多。比如STC11F32是1T單片機(jī),速度是AT89S51的12倍。而且內(nèi)部集成了內(nèi)置振蕩器和復(fù)位,EEPROM、ADC、PWM、四態(tài)I/O接口。2

6、.2.2光筆設(shè)計(jì)光筆設(shè)計(jì)的關(guān)鍵是選擇合適的傳感器件,只有具有很高的靈敏度和一定的響應(yīng)時間的傳感器才能完成系統(tǒng)的要求及功能。方案一:采用核心部件為光敏電阻制成的光筆檢測系統(tǒng)。光敏電阻是將光能轉(zhuǎn)換為電能的一種傳感器件,它是構(gòu)成光電式傳感器的主要部件。光敏電阻結(jié)構(gòu)簡單、使用方便、價格便宜,但經(jīng)調(diào)試發(fā)現(xiàn)其響應(yīng)時間長,不易檢測。方案二:采用光敏二極管,與光敏電阻相比有較好的高頻特性,具有一定的可靠性,功耗低.相比于光敏電阻而言靈敏度較差,需要較高倍數(shù)的放大器才能實(shí)現(xiàn)精準(zhǔn)識別的效果。方案三:采用光敏三極管,其工作原理與光敏二極管相似。但光敏三極管除了具有光敏二極管能將光信號轉(zhuǎn)換成電信號的功能外,還有對電信

7、號放大的功能。所以其靈敏度更高,響應(yīng)時間快?;谝陨戏治?,我們采用光敏三極管作為光筆的檢測部件。2.2.3顯示方案的設(shè)計(jì)采用LCD液晶顯示器。LCD有明顯的優(yōu)點(diǎn):微功耗、尺寸小,超薄輕巧、顯示信息量大、字跡清晰、美觀、視覺舒適。使整個控制系統(tǒng)更加人性化。采用LCM301液晶顯示器,其是串行口顯示,所需I/O口較少,節(jié)省了資源,焊接電路時也較為方便。2.2.4點(diǎn)陣顯示模式設(shè)計(jì)將點(diǎn)陣的驅(qū)動電源分為兩路,一路為正常電壓,另一路通過硬件電路調(diào)節(jié)恰好能使點(diǎn)陣處于微亮狀態(tài)。結(jié)合軟件實(shí)現(xiàn)點(diǎn)陣的顯示模式的改變。這樣節(jié)省了資源的同時,也節(jié)約了時間第三章系統(tǒng)硬件設(shè)計(jì)3.1光筆的設(shè)計(jì)光筆用光電三極管3DU33型光敏

8、三極管檢測點(diǎn)陣屏發(fā)光的強(qiáng)弱變化電壓信號,LM393為比較器。由于點(diǎn)陣的光強(qiáng)相對較弱,通過光電三極管的電流很小,通過串接硅二極管來提升光電三極管發(fā)射極電壓,方便后級比較器作業(yè),便于單片機(jī)檢測信號。光筆原理圖如下圖3-1所示:圖3-1光筆原理圖在一空的筆殼內(nèi),將光敏三極管放置在筆殼底端,光敏三極管的引腳從一個與其直徑等寬的空管引出至空管的頂部,并在其中一引腳中接一彈片,在接近的地方用銅片貫穿空管且正好卡在筆管的內(nèi)部。與此同時,用一彈簧套在空管外部,并將其底不固定,這樣,當(dāng)筆管在點(diǎn)陣屏上上下抖動時,內(nèi)部光敏三極管就能很好的檢測了。其結(jié)構(gòu)如圖3-2所示:圖3-2 光筆的結(jié)構(gòu)圖3.2 3232LED點(diǎn)陣

9、的連接經(jīng)分析要想得到3232的點(diǎn)陣需要用16個共陽型88點(diǎn)陣(其引腳圖如圖3-3所示)來構(gòu)建。其方法是將點(diǎn)陣對應(yīng)的行線和列線分別進(jìn)行連接,使每一條行線引腳接一行32個LED,列線也相同。圖3-3LED點(diǎn)陣3.33232LED點(diǎn)陣的驅(qū)動控制電路3232 LED點(diǎn)陣的行信息控制用2片74HC154,構(gòu)成532譯碼器,單片機(jī)口線控制其譯碼輸出。列的微亮掃描、點(diǎn)亮也分別用2片74HC154,4個片選分別單獨(dú)控制,微亮掃描(2.5V)、點(diǎn)亮(5V)電源分別通過三極管構(gòu)成的開關(guān)加到點(diǎn)陣的列控制端。由于整屏顯示是1024個燈循環(huán)亮,為提高顯示亮度,限流電阻取51歐姆(取消也可以,但為了防止制作調(diào)試過程中燒壞

10、LED燈,不取消為好),電路如圖3-4所示。微亮掃描時流過LED的電流為: (2.5-1.8)/51=13.7mA點(diǎn)亮點(diǎn)陣時流過LED的電流為: (5-1.8)/51=62.7mA流過LED電流雖然比較大,但時間很短,因此不會燒壞LED燈。 圖3-4LED驅(qū)動電路3.4顯示電路部分功能及原理為了滿足系統(tǒng)在工作時能準(zhǔn)確顯示光筆對應(yīng)亮點(diǎn)所處的行列坐標(biāo)值,我們采用型號為LCM103的液晶顯示器顯示。LCM103為10位多功能通用型8段式液晶顯示模塊,內(nèi)含看門狗時鐘發(fā)生器2種頻率的蜂鳴驅(qū)動電路內(nèi)置顯示RAM,可顯示任意字段筆畫劃3-4線串行接口可與任何單片機(jī)接口。其接口應(yīng)用模塊如圖3-5所示:引腳排列

11、圖如表3-1所示。引腳符號說明輸入/輸出1VDD正電源,必須接!輸入2VLCDLCD 屏工作電壓調(diào)整,可調(diào)整視角對比度,必須接!。輸入3/INTWDT/定時器輸出,集電極開路輸出,不用可不接。輸出4LED不用輸入5BZ壓電陶瓷蜂鳴片驅(qū)動 +極輸出6/BZ壓電陶瓷蜂鳴片驅(qū)動 極 輸出7/CS模塊片選,內(nèi)部上拉,必須接! 輸入8/RD模塊數(shù)據(jù)讀出控制線,內(nèi)部上拉輸入9/WR模塊數(shù)據(jù)/指令寫入控制線,內(nèi)部上拉,必須接! 輸入10DATA數(shù)據(jù)輸入/輸出,內(nèi)部上拉,必須接! 輸入/輸出11VSS負(fù)電源,接地線,必須接!圖3-5 LCD接口應(yīng)用模塊表3-1 LED接口引腳排列圖注:B 處焊盤為用戶需降低功

12、耗時外加32.768KHz 晶體。A 處兩焊盤分別接VDD 與VLCD。3.5鍵盤的使用及設(shè)計(jì)鍵盤是使用比較簡單的獨(dú)立式鍵盤,而且具有發(fā)光二極管指示功能模塊。在程序中采用中斷掃描的方式,在沒有鍵操作時CPU執(zhí)行正常程序,只在有鍵操作時才處理鍵盤程序。其電路如圖3-6所示:圖3-6 獨(dú)立式鍵盤電路圖按鍵功能:按鍵一:實(shí)現(xiàn)點(diǎn)亮等功能;按鍵二:修改休眠時間;按鍵三:實(shí)現(xiàn)多姿連寫時的保存與回放;按鍵四:實(shí)現(xiàn)整屏擦除于休眠喚醒3.6光照的檢測與控制經(jīng)分析,想要實(shí)現(xiàn)當(dāng)環(huán)境光強(qiáng)改變時能自動連續(xù)調(diào)節(jié)屏上顯示亮度的要求,其關(guān)鍵是對點(diǎn)陣周圍環(huán)境光照的檢測與控制。我們通過硬件電路很好的完成了對光照的檢測?;驹硎?/p>

13、用LM358與光敏電阻夠成一恒流源并于三極管的基極連接,當(dāng)光敏電阻因光強(qiáng)的變化而改變其自身阻值時,三極管的基極電壓也會隨著變化。與其集電極連接的發(fā)光二極管的亮度也會伴隨著改變,以此判斷周圍光強(qiáng)的變化。電路如圖3-7所示:。圖3-7 光照檢測電路第四章系統(tǒng)軟件設(shè)計(jì)4.1主程序設(shè)計(jì)主程序包括系統(tǒng)初始化,點(diǎn)陣掃描控制,液晶顯示,以及“反顯”、“擦除”等功能下數(shù)據(jù)處理程序,流程圖如圖4-1所示。其中點(diǎn)陣掃描控制程序,微亮掃描控制由單片機(jī)口控制對以譯碼器的片選和地址輸入,使點(diǎn)陣按行列有規(guī)律地循環(huán)點(diǎn)亮,由圖3-3知點(diǎn)亮顯示的列控制信息譯碼地址與微亮連接在一起,控制點(diǎn)亮的工作過程是通過判斷點(diǎn)陣顯示緩沖內(nèi)容對

14、應(yīng)位的信息,控制其片選,當(dāng)需要點(diǎn)亮?xí)r,控制片選有效,反之,控制片選無效,利用微亮掃描過程實(shí)現(xiàn)點(diǎn)亮控制。圖4-1 主程序框圖4.2 外中斷0服務(wù)程序(坐標(biāo)檢測)外中斷0是作為光筆的檢測使用,由圖3-2知,光筆碰觸顯示屏過程中,遇到發(fā)光點(diǎn)輸出翻轉(zhuǎn)的跳變信號,送給單片機(jī)中斷,作為中斷的觸發(fā)信號,由于中斷程序優(yōu)先執(zhí)行,打斷微亮掃描過程,在中斷服務(wù)程序中根據(jù)此時的行列掃描的序號,就可判斷光點(diǎn)的坐標(biāo),進(jìn)而為其他功能的實(shí)現(xiàn)提供依據(jù),流程圖如圖4-2所示圖4-2圖4-2 中斷程序框圖4.3.外中斷1服務(wù)程序(按鍵處理)外中斷1為按鍵操作處理程序,如圖4-3所示:圖4-3 外中斷1服務(wù)程序框圖4.4LCM103

15、驅(qū)動程序設(shè)計(jì)LCM103采用的是串行接口,所有數(shù)據(jù)都是在脈沖的作用下一位一位按順序?qū)懭肽K內(nèi)部,由時序圖知數(shù)據(jù)線上信息是在脈沖上升沿寫入。寫命令的數(shù)據(jù)格式是12位,單個寫數(shù)據(jù)的格式是13位,寫數(shù)據(jù)也可以連續(xù)寫,由于每個字位占用內(nèi)部3個RAM空間存放字段碼,因此寫數(shù)據(jù)采用連續(xù)寫方式比較好。在數(shù)據(jù)連續(xù)寫格式中,前面9位為模式位和模塊內(nèi)部RAM的起始地址,后面數(shù)據(jù)格式是每3位加1個0,取三個一組構(gòu)成一個字位的信息,也是12位,這樣就可以將所有寫操作(命令和數(shù)據(jù))分為寫9位信息和寫12位信息兩個功能程序。顯示字段的排列方式與LED數(shù)碼管一致,每位字段編碼由8段構(gòu)成(顯示RAM筆畫表),占用連續(xù)的3個地

16、址空間,但在寫入格式中每個數(shù)據(jù)是4位,編寫字符的字段碼時要給每個數(shù)據(jù)后加0,09顯示字符的字段碼如表4-1所示。表4-1 09顯示字符的字段碼字符二進(jìn)制十六進(jìn)制D0 D1 D2 D3D0 D1 D2 D3D0 D1 D2 D301 0 0 00 1 1 01 1 1 086EH11 0 0 00 0 1 00 0 0 0820H21 0 0 01 1 0 01 0 1 08CAH31 0 0 01 1 1 00 0 1 08E2H41 0 0 01 0 1 00 1 0 08A4H50 0 0 01 1 1 00 1 1 00e6H60 0 0 01 1 1 01 1 1 00EEH71 0

17、0 00 1 1 00 0 0 0860H81 0 0 01 1 1 01 1 1 08EEH91 0 0 01 1 1 00 1 1 08E6H地址低高在寫數(shù)據(jù)送顯示之前,先按照初始化步驟進(jìn)行初始化,然后寫數(shù)據(jù),程序見附錄。第五章系統(tǒng)測試與結(jié)果5.1 劃亮反顯擦除拖移的測試和結(jié)果各模塊均調(diào)通,將調(diào)好的模塊連在一起,加上5v電壓源,啟動進(jìn)行系統(tǒng)初始化。按鍵進(jìn)入點(diǎn)亮模式,用光電筆在LED點(diǎn)陣書寫顯示屏上接觸,可以看到接觸的點(diǎn)點(diǎn)亮,LCD上顯示亮點(diǎn)的精確坐標(biāo)。用光筆快速的在書寫顯示屏上劃過,發(fā)現(xiàn)劃過的地方變亮,多次操作都能實(shí)現(xiàn)。再次按鍵,進(jìn)入反顯模式,光筆劃過,發(fā)現(xiàn)經(jīng)過的地方?jīng)]有亮其他的部分高亮,

18、反顯測試正常。再次按鍵進(jìn)入擦除模式,用光筆在屏幕上劃過,顯示屏亮的地方變暗了。再按一次鍵可以看到整屏由亮變暗,實(shí)現(xiàn)了擦除這一功能。最后進(jìn)入多字連寫模式和區(qū)域拖動模式用光筆在LED點(diǎn)陣顯示屏上寫四個字,最后在屏上循環(huán)顯示。最后對寫的字用筆圈起來可以用筆移動。實(shí)現(xiàn)了對象拖移功能。經(jīng)過反復(fù)的測試,所有的功能都能很好的實(shí)現(xiàn),系統(tǒng)正常。5.2屏亮自動調(diào)節(jié)測試和結(jié)果外部光環(huán)境人為地改變后,測試LED點(diǎn)陣書寫顯示屏的亮度是否發(fā)生變化如果發(fā)生變化,則表明能夠自動調(diào)節(jié),結(jié)果屏亮隨外部環(huán)境的變化而改變,系統(tǒng)正常。5.3 超時關(guān)顯示節(jié)電測試和結(jié)果加5v電壓啟動系統(tǒng),對系統(tǒng)初始化。設(shè)定待機(jī)關(guān)顯示的時間,在測試點(diǎn)接入萬

19、用表,不進(jìn)行任何操作到設(shè)定的時間,看顯示屏是否自動關(guān)閉。結(jié)果書寫顯示屏自動關(guān)閉,電路板測試點(diǎn)上的電流小于5mA。表明測試正常,完成系統(tǒng)要求??偨Y(jié)及展望本作品完成了題目的基本要求和發(fā)揮部分的全部要求,系統(tǒng)性能良好。通過對作品的各項(xiàng)進(jìn)行了優(yōu)化,使系統(tǒng)的性能有了提高。應(yīng)用74HC154譯碼器設(shè)計(jì)3232點(diǎn)陣的行列驅(qū)動控制信號,掃描速度滿足設(shè)計(jì)要求。雖然這次設(shè)計(jì)滿足了課題的要求,但在很多方面都有許多的不足,還不能滿足正常的書寫需求,但在設(shè)計(jì)的過程中提高了自己學(xué)習(xí)思考的能力,讓自己能更好的去面對未來的工作。致謝通過這次畢業(yè)設(shè)計(jì),綜合的應(yīng)用并學(xué)習(xí)了自己的專業(yè)知識,得到了許多平時很難道道的知識及經(jīng)驗(yàn)。在設(shè)計(jì)

20、的過程中我得到了很多其他老師和同學(xué)的幫助,從人才完成了這次設(shè)計(jì)。在本論文的寫作過程中,我的導(dǎo)師徐江海老師傾注了大量的心血,從選題到開題報告,從寫作提綱,到一遍又一遍地指出每稿中的具體問題,嚴(yán)格把關(guān),循循善誘,在此我表示衷心感謝。同時我還要感謝在我學(xué)習(xí)期間給我極大關(guān)心和支持的各位老師以及關(guān)心我的同學(xué)和朋友。參考文獻(xiàn)1周航慈,周立功,朱旻等PHILIPS 51LPC系列單片機(jī)原理及應(yīng)用設(shè)計(jì)M北京:北京航空航天大學(xué)出版社,20012何立民單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)M北京:北京航空航天大學(xué)出版社,19993徐江海,單片機(jī)實(shí)用教程M,北京:機(jī)械工業(yè)出版社,20084張毅剛,MCS-51單片機(jī)應(yīng)用設(shè)計(jì)M,哈爾濱,

21、哈爾濱工業(yè)大學(xué)出版社,1992附錄1 總電原理圖(單片機(jī)系統(tǒng)與點(diǎn)陣驅(qū)動電路)附錄2 總電原理圖(3232點(diǎn)陣連接電路)附錄3 源程序#include reg52.h#includeintrins.h#define uchar unsigned char#define uint unsigned intsbit cs103=P10; / 液晶sbit wr103=P11; / 液晶sbit da103=P12; / 液晶sbit csH=P26;/sbit p14=P14;sbit p15=P15;sbit p16=P16;sbit p17=P17;uint idata zb322=0; /點(diǎn)亮

22、存儲單元uint xdata zb1322=0; /第一個字存儲uint xdata zb2322=0; /第二個字存儲uint xdata zb3322=0; / 第三個字存儲uint xdata zb4322=0; / 第四個字存儲uchar xsdy0=2; / 顯示緩沖,低位uchar xsdy1=1;uchar xsdy2=11;uchar xsdy3=3;uchar xsdy4=10;uchar xsdy5=5;uchar xsdy6=6;uchar xsdy7=11;uchar xsdy8=8;uchar xsdy9=9; / 顯示緩沖,高位uchar hsmcs=0; /行掃描

23、控制uchar lsmcs=0; /列掃描控制uchar p0hc; /P0緩沖uchar p2hc; /P2緩沖bit bxzb=0; /bit bhzl=0;bit blzl=0; /bit f_x_flag; /反顯狀態(tài)標(biāo)志bit zp_cc_flag; /整屏擦除狀態(tài)標(biāo)志bit bh_cc_flag; /筆畫擦除標(biāo)志bit lz_dx_flag; /連字多寫標(biāo)志bit shijiang_flag; /時間設(shè)置標(biāo)志bit xz_bc_flag; /寫字保存標(biāo)志bit hx_flag; /喚醒標(biāo)志bit xm_flag; /休眠bit yjxs_flag;uchar js_5ms;ucha

24、r js_s;uchar js_fen;uchar js_fen_set=5;uchar clzl=0;uint dlzbw; /點(diǎn)亮坐標(biāo)位uint dlzbw1; /點(diǎn)亮坐標(biāo)位緩沖uchar z_t=0; /顯示方式狀態(tài)uchar xzgs;/寫字個數(shù)uchar xs_s;/字符顯示時間uchar xs_weishu;sfr AUXR = 0x8e; /擴(kuò)展RAM的SFRuint code lcd= /字段編碼0x86e0,0x8200,0x8ca0,0x8e20,0x8a40,0x0e60,0x0ee0,0x8600,0x8ee0,0x8e60,0x0000,0x0800;/ 0 1 2

25、3 4 5 6 7 8 9 空 -void delay(uint x) /12MHZ晶振延時Xms的子函數(shù) uint y=0; while(x0) while(y1000) y+; x-; void del() /延時函數(shù) uchar j; for(j=0;j10;j+);void write12(int data1) /液晶寫12位數(shù)據(jù) uchar i; for(i=0;i12;i+) wr103=0; /wr=0 if(data1&0x8000)!=0)/最高位為1 da103=1; /輸出1 else /最高位為0 da103=0; /輸出0 del(); wr103=1; /上升沿de

26、l(); data1=1; /數(shù)據(jù)整體左移1位 void write9(int data1) /液晶寫9位數(shù)據(jù) uchar i; for(i=0;i9;i+) wr103=0; /wr=0 if(data1&0x8000)!=0)/最高位為1 da103=1; /輸出1 else /最高位為0 da103=0; /輸出0 del(); wr103=1; /上升沿 del(); data1=1; /數(shù)據(jù)整體左移1位 void yjcsh() /液晶初始化 uint k; for(k=0;k2000;k+); cs103=0; /cs=0 del();write12(0x8480); /定義模塊

27、del(); cs103=1; /cs=1 del(); cs103=0; /cs=0 del(); write12(0x8300); /定義內(nèi)部振蕩方式 del(); cs103=1; /cs=1 del(); cs103=0; /cs=0 del(); write12(0x8020); /開振蕩器 del(); cs103=1; /cs=1del();cs103=0; /cs=0 del(); write12(0x8060); /開顯示器 del();cs103=1; /cs=1void yjxs() /液晶顯示 cs103=0; /cs=0 del(); write9(0xa000);

28、/連續(xù)寫,從地址00000開始 write12(lcdjs_s%10); write12(lcdjs_s/10); write12(lcdxsdy2); write12(lcdjs_fen); write12(lcdxsdy4); write12(lcdxsdy5); write12(lcdxsdy6); write12(lcdxsdy7); write12(lcdxsdy8); write12(lcdxsdy9); del(); cs103=1; /cs=1,寫結(jié)束void del1() /掃描延時函數(shù) uchar j; for(j=0;j30;j+);void lsm() /列掃描函數(shù) u

29、charj; dlzbw=0x0001; lsmcs=0; / 列次數(shù)初值 p0hc=p0hc&0xf0;/p0緩沖低4位清0p0hc=p0hc|lsmcs;/p0緩沖添列信息P0=p0hc; /微亮輸出列 for(j=0;j16;j+) /zbhsmcs /點(diǎn)亮信息 if(bhzl) dlzbw1=zbhsmcs+16clzl&dlzbw; else dlzbw1=zbhsmcsclzl&dlzbw; if (dlzbw1=0) /不亮 p0hc=p0hc|0xc0; else /點(diǎn)亮 if(bhzl) /高 p0hc=p0hc|0x40; p0hc=p0hc&0x7f; else /低 p

30、0hc=p0hc|0x80; p0hc=p0hc&0xbf; p0hc=p0hc&0xf0;/p0緩沖低4位清0p0hc=p0hc|lsmcs;/p0緩沖添列信息P0=p0hc; /微亮輸出列del1(); /亮延時 lsmcs+; dlzbw = _irol_(dlzbw,1); /左移1位 lsmcs=15; p0hc=p0hc&0xf0;/p0緩沖低4位清0p0hc=p0hc|lsmcs;/p0緩沖添列信息P0=p0hc; /微亮輸出列void dzsm() uchark; p0hc=p0hc|0x20;/ / 微亮片選低位 p0hc=p0hc&0xef;/ / 微亮片選低位 P0=p0hc; bhzl=0; /行小于16 hsmcs=0; /行次數(shù)初值 for(k=0;k16;k+) /行循環(huán)16次 015行 blzl=0; /列小于16 clzl=0; p2hc=p2hc&0xbf; /p26 p2hc=p2hc&0xf0; / p2hc=p2hc|hsmcs;/p0緩沖添列信息 P2=p2hc; /微亮輸出列 lsm(); /調(diào)列掃描函數(shù) blzl=1; /列大于16 clzl=1; p2hc=p2hc|0x40; /p26 p2hc=p2hc|hsmcs;/p0緩沖添列信息 P

溫馨提示

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

評論

0/150

提交評論