版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、課題名稱(chēng) 智能型充電器的電源和顯示的設(shè)計(jì) 摘 要本文對(duì)基于單片機(jī)的lcd液晶顯示器控制系統(tǒng)進(jìn)行了研究。首先在緒論中介紹了本課題的課題背景、研究意義及完成的功能。本系統(tǒng)是以單片機(jī)的基本語(yǔ)言匯編語(yǔ)言來(lái)進(jìn)行軟件設(shè)計(jì),指令的執(zhí)行速度快,節(jié)省存儲(chǔ)空間。軟件的設(shè)計(jì)采用模塊化結(jié)構(gòu),使程序設(shè)計(jì)的邏輯關(guān)系更加簡(jiǎn)潔明了。正文中首先簡(jiǎn)單描述系統(tǒng)硬件工作原理,且附以系統(tǒng)硬件設(shè)計(jì)框圖,其次闡述了程序的流程和實(shí)現(xiàn)過(guò)程。本文撰寫(xiě)的主導(dǎo)思想是軟、硬件相結(jié)合,以硬件為基礎(chǔ),來(lái)進(jìn)行各功能模塊的編寫(xiě)。關(guān)鍵詞 單片機(jī);微處理器;lcd; 8279第一章概述1.1.1課題背景如今,隨著越來(lái)越多的手持式電器的出現(xiàn),對(duì)高性能、小尺寸、重量
2、輕的電池充電器的需求也越來(lái)越大。電池技術(shù)的持續(xù)進(jìn)步也要求更復(fù)雜的充電算法以實(shí)現(xiàn)快速、安全的充電。因此需要對(duì)充電過(guò)程進(jìn)行更精確的監(jiān)控,以縮短充電時(shí)間、達(dá)到最大的電池容量,并防止電池?fù)p壞。與此同時(shí),對(duì)充電電池的性能和工作壽命的要求也不斷地提高。從20世紀(jì)60年代的商用鎳鎘和密封鉛酸電池到近幾年的鎳氫和鋰離子技術(shù),可充電電池容量和性能得到了飛速的發(fā)展。目前各種電器使用的充電電池主要有鎳鎘電池(nicd)、鎳氫電池(nimh)、鋰電池(li-ion)和密封鉛酸電池(sla)四種類(lèi)型。1.1.2常見(jiàn)充電電池特性及其充電方式電池的安全充電 現(xiàn)代的快速充電器( 即電池可以在小于3 個(gè)小時(shí)的時(shí)間里充滿(mǎn)電,通常
3、是一個(gè)小時(shí)) 需要能夠?qū)卧妷?、充電電流和電池溫度進(jìn)行精確地測(cè)量,在充滿(mǎn)電的同時(shí)避免由于過(guò)充電造成的損壞。充電方法 sla 電池和鋰電池的充電方法為恒定電壓法要限流; nicd 電池和nimh 電池的充電方法為恒定電流法,且具有幾個(gè)不同的停止充電的判斷方法。最大充電電流 最大充電電流與電池容量(c) 有關(guān)。最大充電電流往往以電池容量的數(shù)值來(lái)表示。例如,電池的容量為750 mah,充電電流為750 ma,則充電電流為1c (1 倍的電池容量)。若涓流充電時(shí)電流為c/40,則充電電流即為電池容量除以40。過(guò)熱 電池充電是將電能傳輸?shù)诫姵氐倪^(guò)程。能量以化學(xué)反應(yīng)的方式保存了下來(lái)。但不是所有的電能都轉(zhuǎn)
4、化為了電池中的化學(xué)能。一些電能轉(zhuǎn)化成了熱能,對(duì)電池起了加熱的作用。當(dāng)電池充滿(mǎn)后,若繼續(xù)充電,則所有的電能都將轉(zhuǎn)化為電池的熱能。在快速充電時(shí)這將使電池快速升溫,若不及時(shí)停止充電就會(huì)造成電池的損壞。因此,在設(shè)計(jì)電池充電器時(shí),對(duì)溫度進(jìn)行監(jiān)控并及時(shí)停止充電是非常重要的。1.1.3 主要芯片的選擇 atmel公司是世界上有名的生產(chǎn)高性能、低功耗、非易失性存儲(chǔ)器和各種數(shù)字模擬ic芯片的半導(dǎo)體制造公司。在單片機(jī)微控制器方面,atmel公司有at89, at90和arm三個(gè)系列單片機(jī)的產(chǎn)品。avr單片機(jī)采用risc結(jié)構(gòu),具有1mips/ mhz的高速運(yùn)行處理能力。為了縮短產(chǎn)品進(jìn)入市場(chǎng)的時(shí)間,簡(jiǎn)化系統(tǒng)的維護(hù)和支
5、持,對(duì)于由單片機(jī)組成的嵌入式系統(tǒng)來(lái)說(shuō),用高級(jí)語(yǔ)言編程已成為一種標(biāo)準(zhǔn)編程方法。avr結(jié)構(gòu)單片機(jī)的開(kāi)發(fā)日的就在于能夠更好地采用高級(jí)語(yǔ)言(例如c語(yǔ)言、basic語(yǔ)言)來(lái)編寫(xiě)嵌入式系統(tǒng)的系統(tǒng)程序,從而能高效地開(kāi)發(fā)出目標(biāo)代碼。為了對(duì)目標(biāo)代碼大小、性能及功耗進(jìn)行優(yōu)化,ayr單片機(jī)的結(jié)構(gòu)中采用了大型快速存取寄存器組和快速的單周期指令系統(tǒng)。 1.1.4液晶顯示模塊的選擇lcd顯示模塊是一種被動(dòng)顯示器,具有功耗低,顯示信息大,壽命長(zhǎng)和抗干擾能力強(qiáng)等優(yōu)點(diǎn),在低功耗的單片機(jī)系統(tǒng)中得到大量使用。液晶顯示模塊和鍵盤(pán)輸入模塊作為便攜式儀表的通用器件,在單片機(jī)系統(tǒng)的開(kāi)發(fā)過(guò)程中也可以作為常用的程序和電路模塊進(jìn)行整體設(shè)計(jì)。液晶
6、顯示的原理是利用液晶的物理特性,通過(guò)電壓對(duì)其顯示區(qū)域進(jìn)行控制,有電就顯示黑色,這樣即可顯示出圖形。第二章 硬件電路設(shè)計(jì) 第一節(jié) 液晶顯示模塊兩種訪(fǎng)問(wèn)方式接口電路的選擇單片機(jī)與液晶顯示模塊之間的連接方式分為直接訪(fǎng)問(wèn)方式和為間接控制方式兩種。如圖2-1和圖2-2所示,其中左為單片機(jī),右為液晶顯示模塊。 (一) 直接訪(fǎng)問(wèn)方式pd0pd1pd2pd3pd4pd5pd6pd7rdwep2.3p2.2p2.1p2.0db0db1db2db3db4db5db6db7gndvccv0e/csa/csbr/wd/i10k 數(shù)據(jù)總線(xiàn) gnd +5v電位器 負(fù)電源 1 32 74ls00a11a10a9a8mpu
7、圖2-1 直接訪(fǎng)問(wèn)方式電路圖 lcm接口直接訪(fǎng)問(wèn)方式就是將液晶顯示模塊的接口作為存儲(chǔ)器或i/o設(shè)備直接掛在單片機(jī)總線(xiàn)上,單片機(jī)以訪(fǎng)問(wèn)存儲(chǔ)器或i/o設(shè)備的方式操作液晶顯示模塊的工作。直接訪(fǎng)問(wèn)方式的接口電路如圖2-1所示,在圖中,單片機(jī)通過(guò)高位地址a11控制csa,a10控制csb,以選通液晶顯示屏上各區(qū)的控制器;同時(shí)用地址a9作為r/w信號(hào)控制數(shù)據(jù)總線(xiàn)的數(shù)據(jù)流向;用地址a8作為d/i信號(hào)控制寄存器的選擇,e(使能)信號(hào)由rd和we共同產(chǎn)生,這樣就實(shí)現(xiàn)了單片機(jī)對(duì)液晶顯示模塊的電路邊接。電位器用于顯示對(duì)比度的調(diào)節(jié)。(二)間接控制方式 p1.7 p1.6 p1.5 p1.4 p1.3 p1.2 p1.
8、1 p1.0 p3.4 p3.3 p3.2 p3.1 p3.0db7db6db5db4db3db2db1db0/csa/csber/wd/ivccv0gnd電位器+5v 10k 負(fù)電源 gnd mpu lcm接口圖2-2 間接控制方式電路圖間接控制方式是單片機(jī)通過(guò)自身的或系統(tǒng)中的并行接口與液晶顯示模塊連接。單片機(jī)通過(guò)對(duì)這些接口的操作,以達(dá)到對(duì)液晶顯示模塊的控制。這種方式的特點(diǎn)就是電路簡(jiǎn)單,控制時(shí)序由軟件實(shí)現(xiàn),可以實(shí)現(xiàn)高速單片機(jī)與液晶顯示模塊的接口。電路圖如圖2-2所示。在圖中以 p1口作為數(shù)據(jù)口,p3.4為csa,p3.3為csb,p3.2為使能端,p3.1為r/w和p3.0為d/i信號(hào)。電位
9、器用于顯示對(duì)比度的調(diào)節(jié)。通過(guò)比較再結(jié)合本次設(shè)計(jì)的實(shí)際條件,由于atmega16l芯片沒(méi)有wr、rd管腳,而且為了使電路簡(jiǎn)單且方便軟件實(shí)現(xiàn),所以最終決定采用間接控制的方式來(lái)設(shè)計(jì)lcd顯示電路。第二節(jié) 硬件電路主要芯片2.2.1 atmega16l主要引腳說(shuō)明以下是atmega16l的引腳配置: 圖2-3 atmega16l芯片引腳引腳說(shuō)明:vcc 數(shù)字電路的電源gnd 地端口a(pa7pa0) 端口a 作為a/d 轉(zhuǎn)換器的模擬輸入端。端口a 為8 位雙向i/o 口,具有可編程的內(nèi)部上拉電阻。其輸出緩沖器具有對(duì)稱(chēng)的驅(qū)動(dòng)特性,可以輸出和吸收大電流。作為輸入使用時(shí),若內(nèi)部上拉電阻使能,端口被外部電路拉
10、低時(shí)將輸出電流。在復(fù)位過(guò)程中,即使系統(tǒng)時(shí)鐘還未起振,端口a 處于高阻狀態(tài)。端口b(pb7pb0) 端口b 為8 位雙向i/o 口,具有可編程的內(nèi)部上拉電阻。其輸出緩沖器具有對(duì)稱(chēng)的驅(qū)動(dòng)特性,可以輸出和吸收大電流。作為輸入使用時(shí),若內(nèi)部上拉電阻使能,端口被外部電路拉低時(shí)將輸出電流。在復(fù)位過(guò)程中,即使系統(tǒng)時(shí)鐘還未起振,端口b 處于高阻狀態(tài)。端口c(pc7pc0) 端口c 為8 位雙向i/o 口,具有可編程的內(nèi)部上拉電阻。其輸出緩沖器具有對(duì)稱(chēng)的驅(qū)動(dòng)特性,可以輸出和吸收大電流。作為輸入使用時(shí),若內(nèi)部上拉電阻使能,端口被外部電路拉低時(shí)將輸出電流。在復(fù)位過(guò)程中,即使系統(tǒng)時(shí)鐘還未起振,端口c 處于高阻狀態(tài)。如
11、果jtag接口使能,即使復(fù)位出現(xiàn)引腳pc5(tdi)、pc3(tms)與pc2(tck)的上拉電阻被激活。端口d(pd7pd0) 端口d 為8 位雙向i/o 口,具有可編程的內(nèi)部上拉電阻。其輸出緩沖器具有對(duì)稱(chēng)的驅(qū)動(dòng)特性,可以輸出和吸收大電流。作為輸入使用時(shí),若內(nèi)部上拉電阻使能,則端口被外部電路拉低時(shí)將輸出電流。在復(fù)位過(guò)程中,即使系統(tǒng)時(shí)鐘還未起振,端口d處于高阻狀態(tài)。reset 復(fù)位輸入引腳。持續(xù)時(shí)間超過(guò)最小門(mén)限時(shí)間的低電平將引起系統(tǒng)復(fù)位。xtal1 反向振蕩放大器與片內(nèi)時(shí)鐘操作電路的輸入端。xtal2 反向振蕩放大器的輸出端。avccavcc是端口a與a/d轉(zhuǎn)換器的電源。不使用adc時(shí),該引腳
12、應(yīng)直接與vcc連接。使用adc時(shí)應(yīng)通過(guò)一個(gè)低通濾波器與vcc相連。arefa/d 的模擬基準(zhǔn)輸入引腳。2.2.2 atmega16l的存儲(chǔ)器avr結(jié)構(gòu)有兩個(gè)主要的存儲(chǔ)空間:數(shù)據(jù)存儲(chǔ)器空間和程序存儲(chǔ)器空間,此外,atmega16l還有一個(gè)eeprom存儲(chǔ)器以保存數(shù)據(jù)。這三個(gè)存儲(chǔ)器都為線(xiàn)性的平面結(jié)構(gòu)。2.2.3 atmega16l的時(shí)鐘電路單片機(jī)的時(shí)鐘用于產(chǎn)生工作所需要的時(shí)序,其連接電路如下圖: 圖2-4 晶體振蕩器連接圖xtal1 與xtal2 分別為用作片內(nèi)振蕩器的反向放大器的輸入和輸出,考慮到其最大頻率不超過(guò)8mhz,這里選用的晶振為7.3728mhz。2.2.4 atmega16l的系統(tǒng)復(fù)
13、位atmega16l有五個(gè)復(fù)位源:(1) 上電復(fù)位。電源電壓低于上電復(fù)位門(mén)限vpot時(shí),mcu復(fù)位。如果在單片機(jī)加vcc電壓的同時(shí),保持reset引腳為低電平,則可延長(zhǎng)復(fù)位周期。(2) 外電復(fù)位。引腳reset上的低電平持續(xù)時(shí)間大于最小脈沖寬度時(shí)mcu復(fù)位。 (3) 看門(mén)狗復(fù)位??撮T(mén)狗使能并且看門(mén)狗定時(shí)器溢出時(shí)復(fù)位發(fā)生??撮T(mén)狗計(jì)數(shù)器溢出時(shí),將產(chǎn)生一個(gè)晶振的復(fù)位脈沖。(4) 掉電檢測(cè)復(fù)位。掉電檢測(cè)復(fù)位功能使能,且電源電壓低于掉電檢測(cè)復(fù)位門(mén)限vpot時(shí)mcu即復(fù)位。(5) jtag avr復(fù)位。復(fù)位寄存器為1時(shí)mcu復(fù)位。第三節(jié)lcd液晶顯示 2.3.1 lcd的顯示原理現(xiàn)就點(diǎn)陣型lcd的顯示原理
14、、模塊特點(diǎn)等做一簡(jiǎn)要介紹。要想在液晶模塊上顯示一個(gè)漢字或字符,需要3個(gè)最基本的控制操作:分別向3個(gè)控制器寫(xiě)指令代碼、寫(xiě)顯示數(shù)據(jù)和讀顯示數(shù)據(jù)。在本模塊中,每個(gè)漢字的大小是1616點(diǎn)陣,而每個(gè)字符的大小是816點(diǎn)陣,即字符的寬度為漢字的1/2。它們都是以二維數(shù)組的格式存放在rom中。向液晶模塊顯示一個(gè)漢字的過(guò)程就是:由液晶屏顯示區(qū)的指定字符行的指定列開(kāi)始,連續(xù)輸出該字符對(duì)應(yīng)的字符庫(kù)中的16個(gè)列數(shù)據(jù),如果是顯示字符,則輸出8個(gè)列數(shù)據(jù)即可。上面已經(jīng)介紹到,mgls-19264液晶模塊中液晶屏顯示區(qū)為19264點(diǎn)陣,其中,它們的每8個(gè)像素行組成一頁(yè),整個(gè)顯示區(qū)共分為8頁(yè),每64列為一個(gè)區(qū),這樣,它就有左
15、、中、右3個(gè)區(qū),它的顯示區(qū)示意圖如下:左區(qū) 中區(qū) 右區(qū)0 1 2 62 63 64 65 127128 129 191db0db7第0頁(yè)第七頁(yè)db0db7 圖2-5 液晶屏顯示區(qū)示意圖液晶模塊顯示字符是從上到下,從左到右進(jìn)行顯示的。假設(shè)定義從最左上角開(kāi)始顯示,則先從上到下顯示第0頁(yè)的第一列,依次從左向右開(kāi)始顯示。mgls-19264lcm的顯示部分為左、中、右3個(gè)區(qū),可以由cs片選的取值分別進(jìn)行控制,其接口的片選定義如下:表2-1 mgls的片選定義表cs1cs2選中區(qū)域 0 0 左區(qū) 0 1 中區(qū) 1 0 右區(qū) 1 1 未選2.3.2 液晶顯示控制驅(qū)動(dòng)器hd61202及其兼容液晶顯示控制器是
16、一種帶有驅(qū)動(dòng)輸出的圖形液晶顯示控制器,而在小規(guī)模點(diǎn)陣液晶顯示模塊上使用液晶顯示驅(qū)動(dòng)器組成液晶顯示驅(qū)動(dòng)控制系統(tǒng)是非常有益的,這將使液晶顯示模塊的硬件電路簡(jiǎn)單化,從而降低模塊的成本,同時(shí)也提高了對(duì)軟件功能的要求。許多顯示功能如光標(biāo)、字符庫(kù)、閃爍都需要由軟件編制而成。hd61203和hd61202就是這類(lèi)液晶顯示驅(qū)動(dòng)控制器套件。之所以稱(chēng)它們?yōu)樘准且驗(yàn)閔d61203和hd61202必須配套使用,通常有12864和19264兩種規(guī)格。2.3.3 液晶顯示模塊的特點(diǎn)mgls-12864圖形液晶顯示模塊的驅(qū)動(dòng)和控制系統(tǒng)是由一片ks0107b或兼容驅(qū)動(dòng)器( hd61203 )作為行驅(qū)動(dòng)器和兩片ks0108b
17、或兼容驅(qū)動(dòng)器(hd61203) 作為列驅(qū)動(dòng)器組成的。它的主要技術(shù)參數(shù)及其供電特點(diǎn)如下:(1) 電源:dc+5v,模塊內(nèi)自帶用于lcd驅(qū)動(dòng)的負(fù)壓電路。(2) 顯示內(nèi)容:12864全屏幕點(diǎn)陣。(3) 指令形式:七種指令。(4) 接口形式:與控制器采用8位數(shù)據(jù)總線(xiàn)和8位控制線(xiàn)相連。(5) 工作環(huán)境:10+50。(6) 模塊應(yīng)用有三種電源:邏輯電源、液晶驅(qū)動(dòng)電壓、背光電壓。(7) 本次選用的模塊是雙電源供電(vdd/v0),需要提供一個(gè)液晶驅(qū)動(dòng)電壓,用以調(diào)節(jié)對(duì)比度,接在液晶模塊的v0引腳上,由于液晶的對(duì)比度會(huì)隨著溫度的變化而相應(yīng)變化,所以其液晶顯示驅(qū)動(dòng)電壓值應(yīng)隨著溫度作相應(yīng)的調(diào)整,這里采用了一個(gè)電位器
18、,調(diào)整電壓值。(8) 背光供電為3.8-4.1v的支流電源,選用電源太大不僅增加功耗,更有可能損壞背光燈和縮短模塊的使用壽命。mgls-12864液晶顯示模塊一共有20個(gè)引腳,它的接口定義如下:表2-2 mgls-12864的接口電路序號(hào)符號(hào)狀態(tài)功能d7三態(tài)數(shù)據(jù)總線(xiàn)d6三態(tài)數(shù)據(jù)總線(xiàn)d5三態(tài)數(shù)據(jù)總線(xiàn)4d4三態(tài)數(shù)據(jù)總線(xiàn)5d3三態(tài)數(shù)據(jù)總線(xiàn)6d2三態(tài)數(shù)據(jù)總線(xiàn)7d1三態(tài)數(shù)據(jù)總線(xiàn)8d0三態(tài)數(shù)據(jù)總線(xiàn)9e輸入r/w=“l(fā)”,e的下降沿鎖存數(shù)據(jù)線(xiàn)r/w=“h”,e為“h”時(shí),數(shù)據(jù)由控制器輸出至數(shù)據(jù)線(xiàn)10r/w輸入r/w=“l(fā)”,e=“h”數(shù)據(jù)由控制器輸出數(shù)據(jù)線(xiàn)r/w=“h”,e的下降沿,數(shù)據(jù)由數(shù)據(jù)線(xiàn)輸入到控制器
19、11d/i輸入d/i=“l(fā)”,表示db7db0為顯示數(shù)據(jù)d/i=“h”,表示db7db0為顯示指令12v0液晶顯示器驅(qū)動(dòng)電壓13vcc電源正14gnd電源地15cs1輸入片選信號(hào)16cs2輸入片選信號(hào)17voutlcd負(fù)壓驅(qū)動(dòng)電壓18ret輸入復(fù)位信號(hào)19led+顯示模塊背光電源20led-顯示模塊背光電源第四節(jié) 硬件電路設(shè)計(jì)經(jīng)過(guò)對(duì)以上對(duì)atmega16l芯片的端口、存儲(chǔ)器、時(shí)鐘電路、以及復(fù)位電路和lcd液晶顯示等原理的介紹后,現(xiàn)在就可以完成對(duì)這部分硬件電路的設(shè)計(jì)了。再結(jié)合前面的分析采用間接訪(fǎng)問(wèn)的方式實(shí)現(xiàn)單片機(jī)與液晶顯示模塊之間的連接。lcd模塊的8位數(shù)據(jù)線(xiàn)接在了atmega16l芯片b口的8
20、位數(shù)據(jù)線(xiàn)上,這里用了一個(gè)74ls24作為鎖存器使它們間接連接在一起。lcd的en、d/i、cs1、cs2、r/w分別連接到pa3pa7上,其詳細(xì)的接法見(jiàn)下圖 圖2-6 硬件接線(xiàn)圖第三章 軟件設(shè)計(jì)3.1.用c語(yǔ)言開(kāi)發(fā)單片機(jī)的優(yōu)勢(shì)c語(yǔ)言是一種編譯型的結(jié)構(gòu)化程序設(shè)計(jì)語(yǔ)言,具有簡(jiǎn)單的語(yǔ)法結(jié)構(gòu)和強(qiáng)大的處理功能,具有運(yùn)行速度快、編譯效率高,移植性好和可讀性強(qiáng)等多種優(yōu)點(diǎn),可以實(shí)現(xiàn)對(duì)系統(tǒng)便件的直接操作。用c語(yǔ)言來(lái)編寫(xiě)目標(biāo)系統(tǒng)軟件,可以大大縮短開(kāi)發(fā)周期,且明顯地增加軟件的可讀性,便于改進(jìn)和擴(kuò)充,從而開(kāi)發(fā)出大規(guī)模、高性能的應(yīng)用系統(tǒng)。其優(yōu)勢(shì)如下:(1) 可以大幅度加快開(kāi)發(fā)進(jìn)度。(2) 無(wú)需精通單片機(jī)指令集和具體的硬
21、件。(3) 可以實(shí)現(xiàn)軟件的結(jié)構(gòu)化編程,源程序的可讀性和可維護(hù)性都很好。(4) 省去了人工分配單片機(jī)資源的工作。(5) c語(yǔ)言只要將一些與硬件相關(guān)的代碼作適當(dāng)?shù)男薷?,就可以方便地移植到其它種類(lèi)的單片機(jī)上。(6) c語(yǔ)言提供auto、static、flash等存儲(chǔ)類(lèi)型,復(fù)雜的數(shù)據(jù)類(lèi)型,極大地增強(qiáng)了程序處理能力和靈活性。(7) 對(duì)于一些復(fù)雜系統(tǒng)的開(kāi)發(fā),可以通過(guò)移植(或c編譯器提供)的實(shí)時(shí)操作系統(tǒng)來(lái)實(shí)現(xiàn)。正由于c語(yǔ)言在系統(tǒng)開(kāi)發(fā)中的優(yōu)勢(shì),這次設(shè)計(jì)的所有程序設(shè)計(jì)都將采用c語(yǔ)言編寫(xiě),且通過(guò)iccavr編譯器操作avr的硬件資源。3.2 液晶顯示漢字或字符的原理 ( 1 ) 線(xiàn)段的顯示點(diǎn)陣圖形式液晶由m*n個(gè)
22、顯示單元組成,假設(shè)lcd顯示屏有64行,每行有128列,每8列對(duì)應(yīng)1字節(jié)的8位,即每行由16字節(jié),共16*8=128個(gè)點(diǎn)組成,屏上64*16個(gè)顯示單元與顯示ram區(qū)1024字節(jié)相對(duì)應(yīng),每一字節(jié)的內(nèi)容和顯示屏上相應(yīng)位置的亮暗對(duì)應(yīng)。例如屏的第一行的亮暗由ram區(qū)的00h00fh的16字節(jié)的內(nèi)容決定,當(dāng)(000)=ffh時(shí),如屏的左上角顯示一條短亮線(xiàn),長(zhǎng)度為8個(gè)點(diǎn);當(dāng)(3ffh)=ffh時(shí),則顯示屏的右下角顯示一條短亮線(xiàn);當(dāng)(000h)=ffh,(001h)=00h,(002h)=ffh,(003h)=00h,(00eh)=ffh,(00fh)=00h時(shí),則在屏的頂部顯示一條由8段亮線(xiàn)和8段暗線(xiàn)組成
23、的虛線(xiàn)。這就是lcd顯示的基本原理。( 2 ) 字符的顯示用lcd顯示一個(gè)字符時(shí)比較復(fù)雜,因?yàn)橐粋€(gè)字符由6*8或8*8點(diǎn)陣組成,既要找到和顯示屏上某幾個(gè)位置對(duì)應(yīng)的顯示ram區(qū)的8字節(jié),還要使每字節(jié)的不同的位為“1”,其它的為“0”,為“1”的點(diǎn)亮,為“0”的不亮,這樣一來(lái)就組成某個(gè)字符。但對(duì)于內(nèi)帶字符發(fā)生器的控制器 (如hd61202)來(lái)說(shuō),顯示字符就比較簡(jiǎn)單了,可讓控制器工作在文本方式,根據(jù)在lcd上開(kāi)始顯示的行列號(hào)及每行的列數(shù)找出顯示ram對(duì)應(yīng)的地址,設(shè)立光標(biāo),在此送上該字符對(duì)應(yīng)的代碼即可。( 3 ) 漢字的顯示漢字的顯示一般采用圖形方式,事先從微機(jī)中提取要顯示的漢字的點(diǎn)陣碼,每個(gè)漢字占3
24、2b,分左右兩半部,各占16b,左邊為1、3、5右邊為2、4、6根據(jù)在lcd上開(kāi)始顯示的行列號(hào)及每行的列數(shù)可找到顯示ram對(duì)應(yīng)的地址,設(shè)立光標(biāo),送上要顯示的漢字的一字節(jié),光標(biāo)位置加1,送第二字節(jié),按行按列對(duì)齊,送第三字節(jié)直到32b顯示完就可在lcd上得到一個(gè)完整的漢字。3.3 lcd模塊的指令說(shuō)明要完成顯示程序的設(shè)計(jì),必須了解lcd液晶模塊的指令系統(tǒng)。這里采用的lcd是北京精電蓬遠(yuǎn)顯示技術(shù)公司生產(chǎn)的mgls系列圖形液晶顯示模塊,其內(nèi)藏ks0108b/hd61202控制器。ks0108b及其兼容控制驅(qū)動(dòng)器( hd61202 )的指令系統(tǒng)比較簡(jiǎn)單,一共只有7條指令,從作用上可分為兩類(lèi)。第一條指令和
25、第二條指令為顯示狀態(tài)設(shè)置類(lèi);其余指令為數(shù)據(jù)讀/寫(xiě)操作指令。下面是各個(gè)指令的功能:1. 讀狀態(tài)指令r/w rsdb7 db6 db5 db4 db3 db2 db1 db01 0busy 0 on/off rest 0 0 0 0狀態(tài)字是計(jì)算機(jī)了解hd61202及其兼容控制驅(qū)動(dòng)器當(dāng)前狀態(tài),或是hd61202及其兼容控制驅(qū)動(dòng)器向計(jì)算機(jī)提供其內(nèi)部狀態(tài)的唯一的信息渠道。2. 顯示開(kāi)關(guān)指令r/w rsdb7 db6 db5 db4 db3 db2 db1 db00 00 0 1 1 1 1 1 1/0該指令設(shè)置顯示開(kāi)關(guān)觸發(fā)器的狀態(tài),由此控制顯示數(shù)據(jù)鎖存器的工作方式,從而控制顯示屏上的顯示狀態(tài)。3. 顯示
26、起始行設(shè)置指令r/w rsdb7 db6 db5 db4 db3 db2 db1 db00 01 1 顯示起始行( 0-63 ) 該指令設(shè)置了顯示起始行寄存器的內(nèi)容。4. 頁(yè)面地址設(shè)置指令r/w rsdb7 db6 db5 db4 db3 db2 db1 db00 01 0 1 1 1 頁(yè)號(hào)( 07 ) 該指令設(shè)置了頁(yè)面地址x地址寄存器的內(nèi)容。5. 列地址設(shè)置指令r/w rsdb7 db6 db5 db4 db3 db2 db1 db00 00 1 顯示列地址( 063 )該指令設(shè)置了y地址計(jì)數(shù)器的內(nèi)容,c5c0=03fh( 164 )代表了某一頁(yè)面上的某一個(gè)單元地址,隨后的一次讀或?qū)憯?shù)據(jù)將在
27、這個(gè)單元上進(jìn)行。6. 寫(xiě)數(shù)據(jù)指令r/w rsdb7 db6 db5 db4 db3 db2 db1 db00 1寫(xiě)數(shù)據(jù)該操作將8位數(shù)據(jù)寫(xiě)入先前已確定的顯示存儲(chǔ)器的單元內(nèi)。操作完成后列地址計(jì)數(shù)器自動(dòng)加1。7. 讀數(shù)據(jù)指令r/w rsdb7 db6 db5 db4 db3 db2 db1 db01 1讀顯示數(shù)據(jù)該操作將hd61202接口部的輸出寄存器內(nèi)容讀出,然后列地址計(jì)數(shù)器自動(dòng)加一。必須注意的是,進(jìn)行讀操作之前,必須有一次空讀操作,緊接著再讀才會(huì)讀出所要讀的單元中的數(shù)據(jù)。3.4 液晶顯示界面本著簡(jiǎn)單明了的基本思想前面提到,結(jié)合液晶顯示模塊的相關(guān)知識(shí),設(shè)計(jì)出如下界面:智能型充電器電池:電壓: v節(jié)
28、數(shù);電流: a狀態(tài):溫度: 圖3-1 lcd界面顯示這次設(shè)計(jì)采用的液晶顯示模塊本是由北京精電公司所造的圖形式的mgls-12864芯片,其用一片ks0107b或兼容驅(qū)動(dòng)器( hd61203 )作為行驅(qū)動(dòng)器和三片ks0108b或兼容驅(qū)動(dòng)器(hd61203) 作為列驅(qū)動(dòng)器組成的。液晶顯示的第一行為“智能型充電器”,由左起第四列開(kāi)始顯示,這樣正好左右平均分配。第二行左起頂格顯示“電池”,表示對(duì)充電電池的選擇,可進(jìn)行“鋰電、鎳鎘、鎳氫、鉛酸”四種電池的選取,第三行顯示電池的節(jié)數(shù),第四行顯示狀態(tài),可以在“快充、涓充、充滿(mǎn)、放電”四個(gè)選項(xiàng)間進(jìn)行選取,第二行到第四行左起分別顯示電壓、電流和溫度數(shù)值。由此可見(jiàn)
29、,左邊的兩選項(xiàng)在充放電的過(guò)程中是不變的,而右邊的三個(gè)參數(shù)在充電過(guò)程中隨時(shí)發(fā)生變化。3.5 系統(tǒng)程序流程圖為了方便程序的設(shè)計(jì),使自己在設(shè)計(jì)過(guò)程中做到思路清晰,設(shè)計(jì)起來(lái)游刃有余。這里首先畫(huà)出了程序流程圖,后面根據(jù)次流程圖具體設(shè)計(jì)程序,現(xiàn)具體分析如下:(一)主程序流程圖這次設(shè)計(jì)課題的主要內(nèi)容是在充電器的充電過(guò)程中,采集參數(shù),進(jìn)行電壓、電流、溫度的實(shí)時(shí)顯示。其主流程圖設(shè)計(jì)如下:按 鍵 調(diào) 節(jié)采樣v、a、t顯示v、a、t 充滿(mǎn)?結(jié) 束yn 初 始 化采 集 電 池 電 壓0開(kāi) 始y有 電 池?zé)o 電 池等 待掃 描 按 鍵有鍵按下?ynn (1) 圖3-2主程序流程圖(二)控制程序流程圖要想在液晶模塊上顯
30、示一個(gè)字符或漢字,首先必須得對(duì)控制字進(jìn)行寫(xiě)指令代碼、寫(xiě)顯示數(shù)據(jù)和讀顯示數(shù)據(jù)3項(xiàng)操作。完成這3項(xiàng)工作都必須保證控制器處于不忙的情況下,這就必須有一個(gè)判忙子程序,其流程圖如下:開(kāi) 始讀左邊控制器的狀態(tài)字驅(qū)動(dòng)器忙?送 狀 態(tài) 字返 回yn 圖3-3 判忙程序流程圖 (三)顯示程序流程圖根據(jù)上面采用的方法設(shè)置漢字的初始值(lr、x、y),當(dāng)顯示完第一列的8字節(jié)以后,跳到第二列又從上往下顯示。由于一個(gè)漢字每一列有16字節(jié),則當(dāng)一頁(yè)的16列顯示完,只相當(dāng)于顯示的漢字的上半部分,則再次跳到下一頁(yè)的初始位,進(jìn)行漢字下半部分的顯示,值到16列顯示完成,才表示一個(gè)漢字全部顯示結(jié)束。通過(guò)上面的介紹,一個(gè)漢字的顯示流
31、程圖編寫(xiě)如下:滿(mǎn)16列?ny漢顯完成,繼續(xù)嗎?ny返 回設(shè)lr、x、y初始值lr選取控制器x頁(yè)面值,y列地址值開(kāi) 始 顯 示顯示滿(mǎn)16列?nyx+1顯示下半部分開(kāi) 始初 始 化 圖3-4 漢字顯示流程圖第四章 系統(tǒng)調(diào)試完成對(duì)系統(tǒng)的硬、軟件設(shè)計(jì)后,就可以對(duì)系統(tǒng)進(jìn)行調(diào)試了。本次設(shè)計(jì)本人采用了iccavr編譯器作為系統(tǒng)的開(kāi)發(fā)工具,進(jìn)行程序的燒錄和仿真。在這里設(shè)計(jì)了一些最簡(jiǎn)單的單片機(jī)系統(tǒng)實(shí)例進(jìn)行調(diào)試,其核心部件采用atmega16l芯片。一個(gè)最簡(jiǎn)單的單片機(jī)系統(tǒng)的開(kāi)發(fā)也需要電路設(shè)計(jì)、單片機(jī)器件選擇和程序編寫(xiě)3個(gè)步驟。對(duì)于單片機(jī)系統(tǒng),最簡(jiǎn)單的功能無(wú)非是控制輸出電平的高低。單片機(jī)的最簡(jiǎn)單系統(tǒng)是指單片機(jī)能正常
32、工作所必須的外圍元件,主要由單片機(jī)、晶振電路和復(fù)位電路組成。同傳統(tǒng)的單片機(jī)系統(tǒng)一樣,atmega16l的晶振電路也分為外部時(shí)鐘模式和內(nèi)部時(shí)鐘模式兩種,其內(nèi)部時(shí)鐘電路如下圖:xtal2xtal1mpugndc1 c2 圖4-4 晶振電路 鑒于atmega16l的主頻范圍為0-8mhz,這里選用的是晶振為7.3728mhz。復(fù)位電路采用了上電復(fù)位電路,其電路圖如下: mpu reset+rgnd1k22ufvcc 圖4-5 復(fù)位電路注意這一點(diǎn)和有51系列的單片機(jī)是不同的,atmega16的rst是低電平復(fù)位,而8051系列單片機(jī)是高電平才發(fā)生復(fù)位,換句話(huà)說(shuō),這兩種單片機(jī)復(fù)位電路的設(shè)計(jì)完全相反。了解了以上兩部分電路,再配合i/o接口中,就可以進(jìn)行電路的設(shè)計(jì)了。編寫(xiě)好的程序通過(guò)并行通信下裁avr-isp燒到板子里面,其下裁電纜的電源由目標(biāo)板提供,其管腳如下: 圖4-6 目標(biāo)板管腳圖前面說(shuō)到,測(cè)試單片機(jī)的最簡(jiǎn)單系統(tǒng)最簡(jiǎn)單的就是控制輸出電平的高低,這里采用發(fā)光二極管作為它的輸出器件,用二極管的亮或滅表示自己設(shè)計(jì)的單片機(jī)系統(tǒng)是否能夠正常工作。具體進(jìn)行了以下實(shí)際電路的設(shè)計(jì)。(一)一個(gè)燈的閃爍。通過(guò)上面的介紹,atmega16l有32個(gè)i/o輸出口,作為第一功能時(shí),它們是沒(méi)有區(qū)別的。這次主要用它的
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度內(nèi)陸水路貨物運(yùn)輸代理合同樣本
- 二零二五年度廣告?zhèn)髅叫袠I(yè)設(shè)計(jì)人員派遣合同范本2篇
- 二零二五年度土地征收與補(bǔ)償安置合同模板
- 2025年度上市公司人事勞動(dòng)合同模板2篇
- 2025年度個(gè)人旅游線(xiàn)路設(shè)計(jì)服務(wù)合同4篇
- 二零二五年度電梯鋼結(jié)構(gòu)高空作業(yè)安全防護(hù)承包合同2篇
- 2025版智慧苗圃基地規(guī)劃設(shè)計(jì)施工一體化合同4篇
- 二零二五版內(nèi)墻批灰與智能家居照明系統(tǒng)合同4篇
- 課題申報(bào)參考:面向破損兵馬俑修復(fù)的碎片多尺度全局T o k e n掩碼學(xué)習(xí)分類(lèi)研究
- 2025年度商鋪?zhàn)赓U合同(含租賃物安全責(zé)任)
- 吉林省吉林市普通中學(xué)2024-2025學(xué)年高三上學(xué)期二模試題 生物 含答案
- 海通食品集團(tuán)楊梅汁產(chǎn)品市場(chǎng)營(yíng)銷(xiāo)
- 教學(xué)查房及體格檢查評(píng)分標(biāo)準(zhǔn)
- 西方經(jīng)濟(jì)學(xué)(第二版)完整整套教學(xué)課件
- 人教版高一數(shù)學(xué)上冊(cè)期末考試試卷及答案
- 圍術(shù)期下肢深靜脈血栓預(yù)防的術(shù)中護(hù)理
- 三方采購(gòu)協(xié)議范本
- 《材料分析測(cè)試技術(shù)》全套教學(xué)課件
- 安全學(xué)原理第2版-ppt課件(完整版)
- 傾聽(tīng)是一種美德
- 武漢東湖賓館建設(shè)項(xiàng)目委托代建合同
評(píng)論
0/150
提交評(píng)論