2023年全國(guó)碩士研究生考試考研英語(yǔ)一試題真題(含答案詳解+作文范文)_第1頁(yè)
已閱讀1頁(yè),還剩42頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、<p><b>  前言</b></p><p>  隨著越來(lái)越多的手持式電器的出現(xiàn),對(duì)高性能、小尺寸、重量輕的電池充電器的需求也越來(lái)越大。電池技術(shù)的持續(xù)進(jìn)步也要求更復(fù)雜的充電算法以實(shí)現(xiàn)快速、安全的充電。因此需要對(duì)充電過(guò)程進(jìn)行更精確的監(jiān)控,以縮短充電時(shí)間、達(dá)到最大的電池容量,并防止電池?fù)p壞。AVR 已經(jīng)在競(jìng)爭(zhēng)中領(lǐng)先了一步,被證明是下一代充電器的完美控制芯片。Atmel AVR 微處

2、理器是當(dāng)前市場(chǎng)上能夠以單片方式提供Flash、EEPROM 和10 位ADC的最高效的8 位RISC 微處理器。由于程序存儲(chǔ)器為Flash,因此可以不用象MASK ROM一樣,有幾個(gè)軟件版本就庫(kù)存幾種型號(hào)。Flash 可以在發(fā)貨之前再進(jìn)行編程,或是在PCB貼裝之后再通過(guò)ISP 進(jìn)行編程,從而允許在最后一分鐘進(jìn)行軟件更新。EEPROM 可用于保存標(biāo)定系數(shù)和電池特性參數(shù),如保存充電記錄以提高實(shí)際使用的電池容量。10位A/D 轉(zhuǎn)換器可以提供足

3、夠的測(cè)量精度,使得充好后的容量更接近其最大容量。而其他方案為了達(dá)到此目的,可能需要外部的ADC,不但占用PCB 空間,也提高了系統(tǒng)成本。AVR 是目前唯一的針對(duì)像 “C”這樣的高級(jí)語(yǔ)言而設(shè)計(jì)的8 位微處理器。C 代碼似的設(shè)計(jì)很容易</p><p><b>  第一章 概述</b></p><p><b>  第一節(jié) 緒論</b></p>

4、;<p><b>  1.1.1課題背景</b></p><p>  如今,隨著越來(lái)越多的手持式電器的出現(xiàn),對(duì)高性能、小尺寸、重量輕的電池充電器的需求也越來(lái)越大。電池技術(shù)的持續(xù)進(jìn)步也要求更復(fù)雜的充電算法以實(shí)現(xiàn)快速、安全的充電。因此需要對(duì)充電過(guò)程進(jìn)行更精確的監(jiān)控,以縮短充電時(shí)間、達(dá)到最大的電池容量,并防止電池?fù)p壞。與此同時(shí),對(duì)充電電池的性能和工作壽命的要求也不斷地提高。從20世紀(jì)

5、60年代的商用鎳鎘和密封鉛酸電池到近幾年的鎳氫和鋰離子技術(shù),可充電電池容量和性能得到了飛速的發(fā)展。目前各種電器使用的充電電池主要有鎳鎘電池(NiCd)、鎳氫電池(NiMH)、鋰電池(Li-Ion)和密封鉛酸電池(SLA)四種類型。</p><p>  電池充電是通過(guò)逆向化學(xué)反應(yīng)將能量存儲(chǔ)到化學(xué)系統(tǒng)里實(shí)現(xiàn)的。由于使用的化學(xué)物質(zhì)的不同,電池有自己的特性。設(shè)計(jì)充電器時(shí)要仔細(xì)了解這些特性以防止過(guò)度充電而損壞電。</

6、p><p>  目前,市場(chǎng)上賣(mài)得最多的是旅行充電器,但是嚴(yán)格從充電電路上分析,只有很少部分充電器才能真正意義上被稱為智能充電器,隨著越來(lái)越多的手持式電器的出現(xiàn),對(duì)高性能、小尺寸、輕重量的電池充電器的需求也越來(lái)越大。電池技術(shù)的持續(xù)進(jìn)步也要求更復(fù)雜的充電算法以實(shí)現(xiàn)快速、安全地充電,因此,需要對(duì)充電過(guò)程進(jìn)行更精確地監(jiān)控(例如對(duì)充、放電電流、充電電壓、溫度等的監(jiān)控),以縮短充電時(shí)間,達(dá)到最大的電池容量,并防止電池?fù)p壞。因此,

7、智能型充電電路通常包括了恒流/恒壓控制環(huán)路、電池電壓監(jiān)測(cè)電路、電池溫度檢測(cè)電路、外部顯示電路(LED或LCD顯示)等基本單元。其框圖如下:</p><p>  圖1-1 智能充電器基本框圖</p><p>  Atmel AVR 微處理器是當(dāng)前市場(chǎng)上能夠以單片方式提供Flash、EEPROM 和10 位ADC的最高效的8 位RISC 微處理器。由于程序存儲(chǔ)器為Flash,因此可以不用象MA

8、SK ROM一樣,有幾個(gè)軟件版本就庫(kù)存幾種型號(hào)。Flash 可以在發(fā)貨之前再進(jìn)行編程,或是在PCB貼裝之后再通過(guò)ISP 進(jìn)行編程,從而允許在最后一分鐘進(jìn)行軟件更新。EEPROM 可用于保存標(biāo)定系數(shù)和電池特性參數(shù),如保存充電記錄以提高實(shí)際使用的電池容量。10位A/D 轉(zhuǎn)換器可以提供足夠的測(cè)量精度,使得充好后的容量更接近其最大容量。而其他方案為了達(dá)到此目的,可能需要外部的ADC,不但占用PCB 空間,也提高了系統(tǒng)成本。AVR 是目前唯一的針

9、對(duì)象 “C”這樣的高級(jí)語(yǔ)言而設(shè)計(jì)的8 位微處理器。</p><p>  1.1.2常見(jiàn)充電電池特性及其充電方式</p><p>  電池充電是通過(guò)逆向化學(xué)反應(yīng)將能量存儲(chǔ)到化學(xué)系統(tǒng)里實(shí)現(xiàn)的,由于使用的化學(xué)物質(zhì)的不同,電池的特性也不同,其充電的方式也不大一樣。</p><p>  電池的安全充電 現(xiàn)代的快速充電器( 即電池可以在小于3 個(gè)小時(shí)的時(shí)間里充滿電,通常是一個(gè)

10、小時(shí)) 需要能夠?qū)卧妷?、充電電流和電池溫度進(jìn)行精確地測(cè)量,在充滿電的同時(shí)避免由于過(guò)充電造成的損壞。</p><p>  充電方法 SLA 電池和鋰電池的充電方法為恒定電壓法要限流; NiCd 電池和NiMH 電池的充電方法為恒定電流法,且具有幾個(gè)不同的停止充電的判斷方法。</p><p>  最大充電電流 最大充電電流與電池容量(C) 有關(guān)。最大充電電流往往以電池容量的數(shù)值來(lái)表示。

11、例如,電池的容量為750 mAh,充電電流為750 mA,則充電電流為1C (1 倍的電池容量)。若涓流充電時(shí)電流為C/40,則充電電流即為電池容量除以40。</p><p>  過(guò)熱 電池充電是將電能傳輸?shù)诫姵氐倪^(guò)程。能量以化學(xué)反應(yīng)的方式保存了下來(lái)。但不是所有的電能都轉(zhuǎn)化為了電池中的化學(xué)能。一些電能轉(zhuǎn)化成了熱能,對(duì)電池起了加熱的作用。當(dāng)電池充滿后,若繼續(xù)充電,則所有的電能都將轉(zhuǎn)化為電池的熱能。在快速充電時(shí)這將

12、使電池快速升溫,若不及時(shí)停止充電就會(huì)造成電池的損壞。因此,在設(shè)計(jì)電池充電器時(shí),對(duì)溫度進(jìn)行監(jiān)控并及時(shí)停止充電是非常重要的。</p><p>  現(xiàn)代消費(fèi)類電器主要使用如下四種電池:</p><p>  ? 密封鉛酸電池 (SLA)</p><p>  ? 鎳鎘電池 (NiCd)</p><p>  ? 鎳氫電池(NiMH)</p>

13、<p>  ? 鋰電池(Li-Ion)</p><p>  在正確選擇電池和充電算法時(shí)需要了解這些電池的背景知識(shí)。</p><p>  密封鉛酸電池(SLA) 密封鉛酸電池主要用于成本比空間和重量更重要的場(chǎng)合,如UPS和報(bào)警系統(tǒng)的備份電池。SLA 電池以恒定電壓進(jìn)行充電,輔以電流限制以避免在充電過(guò)程的初期電池過(guò)熱。只要電池單元電壓不超過(guò)生產(chǎn)商的規(guī)定( 典型值為2.2V), SL

14、A 電池可以無(wú)限制地充電。</p><p>  鎳鎘電池(NiCd) NiCd 電池目前使用得很普遍。它的優(yōu)點(diǎn)是相對(duì)便宜,易于使用;缺點(diǎn)是自放電率比較高。典型的NiCd 電池可以充電1000 次。失效機(jī)理主要是極性反轉(zhuǎn)。在電池包里第一個(gè)被完全放電的單元會(huì)發(fā)生反轉(zhuǎn)。為了防止損壞電池包,需要不間斷地監(jiān)控電壓。一旦單元電壓下降到1.0V 就必須停機(jī)。NiCd 電池以恒定電流的方式進(jìn)行充電。</p><

15、;p>  鎳氫電池(NiMH) 在輕重量的手持設(shè)備中如手機(jī)、手持?jǐn)z象機(jī),等等鎳氫電池是使用最廣的。這種電池的容量比NiCd 的大。由于過(guò)充電會(huì)造成NiMH 電池的失效,在充電過(guò)程中進(jìn)行精確地測(cè)量以在合適的時(shí)間停止是非常重要的。和NiCd 電池一樣,極性反轉(zhuǎn)時(shí)電池也會(huì)損壞。NiMH 電池的自放電率大概為20%/ 月。和NiCd 電池一樣,NiMH 電池也為恒定電流充電。</p><p>  鋰電池 (Li-I

16、on) 和本文中所述的其他電池相比,鋰電池具有最高的能量/ 重量比和能量/ 體積比。鋰電池以恒定電壓進(jìn)行充電,同時(shí)要有電流限制以避免在充電過(guò)程的初期電池過(guò)熱。當(dāng)充電電流下降到生產(chǎn)商設(shè)定的最小電流時(shí)就要停止充電。過(guò)充電將造成電池?fù)p壞,甚至爆炸。</p><p>  1.1.3 主要芯片的選擇</p><p>  ATMEL公司是世界上有名的生產(chǎn)高性能、低功耗、非易失性存儲(chǔ)器和各種數(shù)字模擬IC

17、芯片的半導(dǎo)體制造公司。在單片機(jī)微控制器方面,ATMEL公司有AT89, AT90和ARM三個(gè)系列單片機(jī)的產(chǎn)品。由于8051本身結(jié)構(gòu)的先天性不足和近年來(lái)各種采用新型結(jié)構(gòu)和新技術(shù)的單片機(jī)的不斷涌現(xiàn),現(xiàn)在的單片機(jī)市場(chǎng)是百花齊放。ATMEL在這種強(qiáng)大市場(chǎng)壓力下,發(fā)揮Flash存儲(chǔ)器的技術(shù)特長(zhǎng),于1997年研發(fā)并推出了個(gè)新配置的、采用精簡(jiǎn)指令集RISC(Reduced Instruction Set CPU)結(jié)構(gòu)的新型單片機(jī),簡(jiǎn)稱AVR單片機(jī)。&

18、lt;/p><p>  精簡(jiǎn)指令集RISC結(jié)構(gòu)是20世紀(jì)90年代開(kāi)發(fā)出來(lái)的,綜合了半導(dǎo)體案成技術(shù)和軟例-性能的新結(jié)構(gòu)。AVR單片機(jī)采用RISC結(jié)構(gòu),具有1MIPS/ MHz的高速運(yùn)行處理能力。為了縮短產(chǎn)品進(jìn)入市場(chǎng)的時(shí)間,簡(jiǎn)化系統(tǒng)的維護(hù)和支持,對(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)

19、程序,從而能高效地開(kāi)發(fā)出目標(biāo)代碼。為了對(duì)目標(biāo)代碼大小、性能及功耗進(jìn)行優(yōu)化,AYR單片機(jī)的結(jié)構(gòu)中采用了大型快速存取寄存器組和快速的單周期指令系統(tǒng)。</p><p>  AVR單片機(jī)運(yùn)用Harvard結(jié)構(gòu),在前一條指令執(zhí)行的時(shí)候就取出現(xiàn)行的指令,然后以一個(gè)周期執(zhí)行指令。在其他的CISC以及類似的RISC結(jié)構(gòu)的單片機(jī)中,外部振蕩器的時(shí)鐘被分頻降低到傳統(tǒng)的內(nèi)部指令執(zhí)行周期,這種分頻最大達(dá)12倍(8051)。AVR單片機(jī)是

20、用一個(gè)時(shí)鐘周期執(zhí)行一條指令的,它是在8位單片機(jī)中第一個(gè)真正的RISC結(jié)構(gòu)的單片機(jī)。</p><p>  由于AVR單片機(jī)采用了Harvard結(jié)構(gòu),所以它的程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器是分開(kāi)組織和尋址的。尋址空間分別為可直接訪問(wèn)8M字節(jié)的程序存儲(chǔ)器和8M字節(jié)的數(shù)據(jù)存儲(chǔ)器。同時(shí),由32個(gè)通用工作寄存器所構(gòu)成的寄存器組被雙向映射,因此,可以采用讀寫(xiě)寄存器和讀寫(xiě)片內(nèi)快速SRAM存儲(chǔ)器兩種方式來(lái)訪問(wèn)32個(gè)通用工作寄存器。<

21、/p><p>  AVR主要有單片機(jī)有ATtiny、AT90和ATmega三種系列,其結(jié)構(gòu)和基本原理都相類似。本次設(shè)計(jì)所用到的Atmega16L芯片便是ATmega系列中的一種,在這里作為充電器的核心部件。它是一種具有40引腳的高性能、低功耗的8位微處理器。其功能特性如下: </p><p>  (1) 8位CPU。</p><p>  (2) 先進(jìn)的RISC 結(jié)構(gòu):&

22、lt;/p><p>  131 條指令– 大多數(shù)指令執(zhí)行時(shí)間為單個(gè)時(shí)鐘周期</p><p>  32個(gè)8 位通用工作寄存器</p><p><b>  全靜態(tài)工作</b></p><p>  (3) 非易失性數(shù)據(jù)和程序存儲(chǔ)器:</p><p>  16K 字節(jié)的系統(tǒng)內(nèi)可編程Flash,擦寫(xiě)壽命可達(dá)到1

23、0,000 次以上。具有獨(dú)立鎖定位的可選Boot代碼區(qū),通過(guò)片上Boot程序?qū)崿F(xiàn)系統(tǒng)內(nèi)編程。</p><p>  512 字節(jié)的EEPROM,可連續(xù)擦寫(xiě)100,000 次。1K字節(jié)的片內(nèi)SRAM,可以對(duì)鎖定位進(jìn)行編程以實(shí)現(xiàn)用戶程序的加密。</p><p>  (4) 可通過(guò)JTAG接口實(shí)現(xiàn)對(duì)FLASH、EEPROM的編程。</p><p>  (5) 32個(gè)可編程的

24、I/O引線,40引腳PDIP封裝。</p><p>  (6) 兩個(gè)具有獨(dú)立預(yù)分頻器和比較器功能的8位定時(shí)器/ 計(jì)數(shù)器,一個(gè)具有預(yù)分頻器、比較功能和捕捉功能的16位定時(shí)器/ 計(jì)數(shù)器。</p><p>  (7) 片內(nèi)/ 片外中斷源。</p><p>  (8) 具有一個(gè)10位的AD轉(zhuǎn)換器,能對(duì)來(lái)自端口A的8位單端輸入電壓進(jìn)行采樣。</p><p&

25、gt;  (9) 工作電壓:2.7-5.5V。</p><p>  速度等級(jí):0-8MHz。</p><p>  AVR單片機(jī)的主要特點(diǎn)如下:</p><p>  1.片內(nèi)集成可擦寫(xiě)10000次以上的Flash程序存儲(chǔ)器。由于AVR采用16位的指令,所以一個(gè)程序存儲(chǔ)器的存儲(chǔ)單元為16位,即XXXX*1116(也可理解為8位,即2*XXXX*8)。AVR的數(shù)據(jù)存儲(chǔ)器還

26、是以8個(gè)Bit(位)為一個(gè)單元,因此AVR還是屬于8位單片機(jī)。</p><p>  2.采用CMOS工藝技術(shù),高速度(50ns)、低功耗、具有SLEEP(休眠)功能。AVR的指令執(zhí)行速度可達(dá)50ns (20MHz)。AVR運(yùn)用Harvard結(jié)構(gòu)概念,具有預(yù)取指令的特性,即對(duì)程序存儲(chǔ)和數(shù)據(jù)存取使用不同的存儲(chǔ)器和總線。當(dāng)執(zhí)行某一指令時(shí),下一指令被預(yù)先從程序存儲(chǔ)器中取出,這使得指令可以在每一個(gè)時(shí)鐘周期內(nèi)執(zhí)行。</

27、p><p>  3.高度保密(LOCK)。可多次擦寫(xiě)的FLASH具有多重密碼保護(hù)鎖死(LOCK)功能,因此可低成本高速度地完成產(chǎn)品商品化,并且可多次更改程序(產(chǎn)品升級(jí))而不必浪費(fèi)1C或電路板,大大提高了產(chǎn)品的質(zhì)量及競(jìng)爭(zhēng)力。</p><p>  4.超功能精簡(jiǎn)指令。具有32個(gè)通用作寄存器(相當(dāng)于8051中的32個(gè)累加器),克服了單一累加器數(shù)據(jù)處理造成的瓶須現(xiàn)象,128~4K字節(jié)SRAM可靈活使用

28、指令計(jì)算,并可用功能很強(qiáng)的C語(yǔ)言編程,易學(xué)、易寫(xiě)、易移植。</p><p>  5.程序?qū)懭肫骷梢圆⑿袑?xiě)入(用編程器寫(xiě)入),也可使用串行在線編程(ISP)方法下載寫(xiě)入,也就是說(shuō)不必將單片機(jī)芯片從系統(tǒng)上拆下,拿到萬(wàn)用編程器上燒寫(xiě),而可直接在電路板上進(jìn)行程序的修改、燒寫(xiě)等操作,方便產(chǎn)品升級(jí),尤其是采用SMD封裝,更利于產(chǎn)品微型化。</p><p>  6.工作電壓范圍為2.7V~6.0V,電

29、源抗干擾性能強(qiáng)。</p><p>  7.AVR單片機(jī)還在片內(nèi)集成了可擦寫(xiě)100000次的PROM數(shù)據(jù)存儲(chǔ)器,等于又增加了一個(gè)芯片,可用于保存系統(tǒng)的設(shè)定參數(shù)、固定表格和掉電后的數(shù)據(jù),既方便了使用,減小了系統(tǒng)的空間,又大大提高了系統(tǒng)的保密性。</p><p>  8.有8位和16位的計(jì)數(shù)器定時(shí)器(C/T),可作比較器、計(jì)數(shù)器、外部中斷和PWM(也可作D/A )用于控制輸出。</p>

30、;<p>  1.1.4液晶顯示模塊的選擇</p><p>  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ì)。液晶顯示的原理是利用液晶的物理特性,通過(guò)電壓對(duì)其顯示區(qū)域進(jìn)行控制,有電就顯示黑色,這樣即可顯示出圖

31、形。</p><p>  在單片機(jī)系統(tǒng)中使用液晶顯示模塊作為輸出器件有以下優(yōu)點(diǎn):</p><p><b>  顯示質(zhì)量高</b></p><p>  液晶顯示器每一個(gè)點(diǎn)在收到信號(hào)后就一直保持那種色彩和亮度,恒定發(fā)光,因此液晶顯示器畫(huà)質(zhì)高而且不會(huì)閃爍。</p><p><b>  數(shù)字式接口</b>&

32、lt;/p><p>  液晶顯示器都是數(shù)字式的,和單片機(jī)系統(tǒng)的接口更加簡(jiǎn)單。</p><p><b>  體積小,重量輕</b></p><p><b>  功率消耗小</b></p><p>  液晶顯示器的功耗主要消耗在其內(nèi)部的電極和驅(qū)動(dòng)IC上,因此耗電量比其它顯示器要小得多。</p>

33、<p>  第二節(jié) 畢業(yè)設(shè)計(jì)任務(wù)和要求</p><p>  智能充電器的設(shè)計(jì)包括硬件和軟件兩大部分,本人的主要任務(wù)是完成充電器設(shè)計(jì)的LCD顯示部分,其主要涉及的知識(shí)包括:</p><p>  自學(xué)AVR單片機(jī)的相關(guān)內(nèi)容。</p><p><b>  設(shè)計(jì)電源電路。</b></p><p>  設(shè)計(jì)128*64

34、液晶顯示控制電路和用C語(yǔ)言編制LCD顯示程序,用圖形方式顯示充電器電壓、電流等參數(shù)。</p><p>  手工焊接和ICCAVR編譯器的應(yīng)用。</p><p>  這次設(shè)計(jì)要解決的關(guān)鍵問(wèn)題是如何用Atmega16L芯片控制LCD模塊及用C語(yǔ)言編制相應(yīng)的顯示程序.隨著單片機(jī)的開(kāi)發(fā)應(yīng)用,其相應(yīng)的匯編編程和所暴露的問(wèn)題也越來(lái)越多,逐漸引入了高級(jí)語(yǔ)言,C語(yǔ)言就是其中的一種。在大一時(shí)就曾接觸過(guò)C語(yǔ)言

35、,由于時(shí)間較短,重視程度不夠,后來(lái)又一直沒(méi)用過(guò),只能對(duì)它有一個(gè)大概的了解。而對(duì)于AVR單片機(jī)的相關(guān)知識(shí)和液晶顯示模塊的使用,則完全是一片空白。這次畢業(yè)設(shè)計(jì),就不得不花大量的時(shí)間在這些基礎(chǔ)知識(shí)的學(xué)習(xí)上。為了更有效地完成這個(gè)課題,特列出了如下計(jì)劃:</p><p>  表1-1 畢業(yè)設(shè)計(jì)進(jìn)度表</p><p>  這次畢業(yè)設(shè)計(jì)是由郭偉同學(xué)和本人共同合作完成,由他完成充電部分的硬件電路的設(shè)計(jì),

36、和這邊的顯示部分相結(jié)合,共同完成智能充電器的設(shè)計(jì)。</p><p>  第二章 硬件電路設(shè)計(jì)</p><p>  經(jīng)過(guò)前面對(duì)充電器原理、液晶模塊、ATmega16L等的總體了解和掌握以及對(duì)各種元器件和電路圖的分析和比較后,現(xiàn)在就可以開(kāi)始進(jìn)入硬件電路的設(shè)計(jì)了。在本章里,首先將介紹一下液晶模塊訪問(wèn)方式的兩種接口電路,然后對(duì)LCD顯示電路原理圖作一個(gè)詳細(xì)的介紹,接著介紹充電電路中所用到的各種芯

37、片和元器件的原理和一些功能,最后對(duì)PROTEL99的使用和PCB板的繪制以及焊接做一簡(jiǎn)單介紹,然后再將自己的設(shè)計(jì)思想和同組人所設(shè)計(jì)的兩部分結(jié)合,達(dá)成統(tǒng)一。 </p><p>  第一節(jié) 液晶顯示模塊兩種訪問(wèn)方式接口電路的選擇</p><p>  單片機(jī)與液晶顯示模塊之間的連接方式分為直接訪問(wèn)方式和為間接控制方式兩種。如圖2-1和圖2-2所示,其中左為單片機(jī),右

38、為液晶顯示模塊。</p><p>  (一) 直接訪問(wèn)方式</p><p><b>  數(shù)據(jù)總線</b></p><p><b>  GND</b></p><p><b>  +5V</b></p><p><b>  電位器</b&g

39、t;</p><p><b>  負(fù)電源</b></p><p><b>  1</b></p><p><b>  3</b></p><p><b>  74LS00</b></p><p><b>  A11<

40、/b></p><p><b>  A10</b></p><p><b>  A9</b></p><p><b>  A8</b></p><p>  MPU 圖2-1 直接訪問(wèn)方式電路圖 LCM接口</p><p>  

41、直接訪問(wèn)方式就是將液晶顯示模塊的接口作為存儲(chǔ)器或I/O設(shè)備直接掛在單片機(jī)總線上,單片機(jī)以訪問(wèn)存儲(chǔ)器或I/O設(shè)備的方式操作液晶顯示模塊的工作。直接訪問(wèn)方式的接口電路如圖2-1所示,在圖中,單片機(jī)通過(guò)高位地址A11控制CSA,A10控制CSB,以選通液晶顯示屏上各區(qū)的控制器;同時(shí)用地址A9作為R/W信號(hào)控制數(shù)據(jù)總線的數(shù)據(jù)流向;用地址A8作為D/I信號(hào)控制寄存器的選擇,E(使能)信號(hào)由RD和WE共同產(chǎn)生,這樣就實(shí)現(xiàn)了單片機(jī)對(duì)液晶顯示模塊的電路

42、邊接。電位器用于顯示對(duì)比度的調(diào)節(jié)。</p><p><b>  (二)間接控制方式</b></p><p><b>  10K</b></p><p><b>  負(fù)電源</b></p><p><b>  GND </b></p><

43、p>  MPU LCM接口</p><p>  圖2-2 間接控制方式電路圖</p><p>  間接控制方式是單片機(jī)通過(guò)自身的或系統(tǒng)中的并行接口與液晶顯示模塊連接。單片機(jī)通過(guò)對(duì)這些接口的操作,以達(dá)到對(duì)液晶顯示模塊的控制。這種方式的特點(diǎn)就是電路簡(jiǎn)單,控制時(shí)序由軟件實(shí)現(xiàn),可以實(shí)現(xiàn)高速單片機(jī)與液晶顯示模塊的接口。電路圖如圖2-2

44、所示。在圖中以 P1口作為數(shù)據(jù)口,P3.4為CSA,P3.3為CSB,P3.2為使能端,P3.1為R/W和P3.0為D/I信號(hào)。電位器用于顯示對(duì)比度的調(diào)節(jié)。</p><p>  通過(guò)比較再結(jié)合本次設(shè)計(jì)的實(shí)際條件,由于Atmega16L芯片沒(méi)有WR、RD管腳,而且為了使電路簡(jiǎn)單且方便軟件實(shí)現(xiàn),所以最終決定采用間接控制的方式來(lái)設(shè)計(jì)LCD顯示電路。</p><p>  第二節(jié) 硬件電路主要芯片&

45、lt;/p><p>  2.2.1 ATmega16L主要引腳說(shuō)明</p><p>  以下是ATmega16L的引腳配置:</p><p>  圖2-3 ATmega16L芯片引腳</p><p><b>  引腳說(shuō)明:</b></p><p>  VCC        數(shù)字電路的電源</p&

46、gt;<p>  GND        地</p><p>  端口A(PA7~PA0)  端口A 作為A/D 轉(zhuǎn)換器的模擬輸入端。</p><p>  端口A 為8 位雙向I/O 口,具有可編程的內(nèi)部上拉電阻。其輸出緩沖器具有對(duì)稱的驅(qū)動(dòng)特性,可以輸出和吸收大電流。作為輸入使用時(shí),若內(nèi)部上拉電阻使能,端口被外部電路拉低時(shí)將輸出電流。在復(fù)位過(guò)程中,即使系統(tǒng)時(shí)鐘還未起振,端口A

47、處于高阻狀態(tài)。</p><p>  端口B(PB7~PB0)  端口B 為8 位雙向I/O 口,具有可編程的內(nèi)部上拉電阻。其輸出緩沖器具有對(duì)稱的驅(qū)動(dòng)特性,可以輸出和吸收大電流。作為輸入使用時(shí),若內(nèi)部上拉電阻使能,端口被外部電路拉低時(shí)將輸出電流。在復(fù)位過(guò)程中,即使系統(tǒng)時(shí)鐘還未起振,端口B 處于高阻狀態(tài)。</p><p>  端口C(PC7~PC0)  端口C 為8 位雙向I/O 口,具有可編

48、程的內(nèi)部上拉電阻。其輸出緩沖器具有對(duì)稱的驅(qū)動(dòng)特性,可以輸出和吸收大電流。作為輸入使用時(shí),若內(nèi)部上拉電阻使能,端口被外部電路拉低時(shí)將輸出電流。在復(fù)位過(guò)程中,即使系統(tǒng)時(shí)鐘還未起振,端口C 處于高阻狀態(tài)。如果JTAG接口使能,即使復(fù)位出現(xiàn)引腳PC5(TDI)、PC3(TMS)與PC2(TCK)的上拉電阻被激活。</p><p>  端口D((PD7~PD0) 端口D 為8 位雙向I/O 口,具有可編程的內(nèi)部上拉電阻。

49、其輸出緩沖器具有對(duì)稱的驅(qū)動(dòng)特性,可以輸出和吸收大電流。作為輸入使用時(shí),若內(nèi)部上拉電阻使能,則端口被外部電路拉低時(shí)將輸出電流。在復(fù)位過(guò)程中,即使系統(tǒng)時(shí)鐘還未起振,端口D處于高阻狀態(tài)。</p><p>  RESET       復(fù)位輸入引腳。持續(xù)時(shí)間超過(guò)最小門(mén)限時(shí)間的低電平將引起系統(tǒng)復(fù)位。</p><p>  XTAL1       反向振蕩放大器與片內(nèi)時(shí)鐘操作電路的輸入端。</p&g

50、t;<p>  XTAL2       反向振蕩放大器的輸出端。</p><p>  AVCC       AVCC是端口A與A/D轉(zhuǎn)換器的電源。不使用ADC時(shí),該引腳應(yīng)直接與VCC連接。使用ADC時(shí)應(yīng)通過(guò)一個(gè)低通濾波器與VCC相連。</p><p>  AREF       A/D 的模擬基準(zhǔn)輸入引腳。</p><p>  2.2.2 Atmega1

51、6L的存儲(chǔ)器</p><p>  AVR結(jié)構(gòu)有兩個(gè)主要的存儲(chǔ)空間:數(shù)據(jù)存儲(chǔ)器空間和程序存儲(chǔ)器空間,此外,Atmega16L還有一個(gè)EEPROM存儲(chǔ)器以保存數(shù)據(jù)。這三個(gè)存儲(chǔ)器都為線性的平面結(jié)構(gòu)。</p><p>  (1) Atmega16L具有16K字節(jié)的在線編程Flash,用于存儲(chǔ)程序指令代碼。因?yàn)锳VR指令為16位或32位,故Flash組織成8K16的形式。用戶程序的安全性要根據(jù)Fla

52、sh程序存儲(chǔ)器的兩個(gè)區(qū):引導(dǎo)(Boot) 程序區(qū)和應(yīng)用程序區(qū),分開(kāi)來(lái)考慮。</p><p>  Flash存儲(chǔ)器至少可以擦寫(xiě)10,000次。Atmega16L的程序存儲(chǔ)器為13位,因此可以尋址8K的存儲(chǔ)器空間。關(guān)于用SPI 或JTAG 接口實(shí)現(xiàn)對(duì)Flash 的串行下載,將在軟件部分作詳細(xì)的介紹。</p><p>  (2) 數(shù)據(jù)存儲(chǔ)器的尋址方式分為5種:直接尋址、帶偏移量的間接尋址、間接尋

53、址、帶預(yù)減量的間接尋址和帶后增量的間接尋址。</p><p>  ATmega16L的全部32個(gè)通用寄存器、64個(gè)I/O寄存器及1024個(gè)字節(jié)的內(nèi)部數(shù)據(jù)SRAM可以通過(guò)所有上述的尋址模式進(jìn)行訪問(wèn)。</p><p>  (3) ATmega16L 包含512 字節(jié)的EEPROM 數(shù)據(jù)存儲(chǔ)器。它是作為一個(gè)獨(dú)立的數(shù)據(jù)空間而存在的,可以按字節(jié)讀寫(xiě)。EEPROM 的壽命至少為100,000 次擦除周

54、期。EEPROM 的訪問(wèn)由地址寄存器、數(shù)據(jù)寄存器和控制寄存器決定。</p><p>  2.2.3 Atmega16L的時(shí)鐘電路</p><p>  單片機(jī)的時(shí)鐘用于產(chǎn)生工作所需要的時(shí)序,其連接電路如下圖:</p><p>  圖2-4 晶體振蕩器連接圖</p><p>  XTAL1 與XTAL2 分別為用作片內(nèi)振蕩器的反向放大器的輸入和輸

55、出,考慮到其最大頻率不超過(guò)8MHz,這里選用的晶振為7.3728MHz。</p><p>  2.2.4 Atmega16L的系統(tǒng)復(fù)位</p><p>  Atmega16L有五個(gè)復(fù)位源:</p><p>  上電復(fù)位。電源電壓低于上電復(fù)位門(mén)限Vpot時(shí),MCU復(fù)位。如果在單片機(jī)加Vcc電壓的同時(shí),保持RESET引腳為低電平,則可延長(zhǎng)復(fù)位周期。</p>

56、<p>  Vcc Vpot Vpot</p><p>  RESET Vrst Vrst</p><p><b>  TIME-OUT<

57、;/b></p><p>  INTERINAL tTOUT tTOUT</p><p><b>  RESET</b></p><p>  圖2-5 RESET引腳與VCC相連時(shí), 圖2-6 RESE

58、T引腳由外部控制時(shí),</p><p>  單片機(jī)的復(fù)位電平 單片機(jī)的復(fù)位電平</p><p>  外電復(fù)位。引腳RESET上的低電平持續(xù)時(shí)間大于最小脈沖寬度時(shí)MCU復(fù)位。</p><p><b>  Vcc</b></p><p>  RESET

59、 Vrst</p><p>  TIME-OUT tTOUT</p><p><b>  INTERNAL</b></p><p><b>  RESET </b></p><p>  圖2-7 外部復(fù)位時(shí)序圖</p&

60、gt;<p>  看門(mén)狗復(fù)位。看門(mén)狗使能并且看門(mén)狗定時(shí)器溢出時(shí)復(fù)位發(fā)生。看門(mén)狗計(jì)數(shù)器溢出時(shí),將產(chǎn)生一個(gè)晶振的復(fù)位脈沖。</p><p><b>  Vcc </b></p><p><b>  RESET </b></p><p>  WDT 1 XTAL Cycle

61、</p><p><b>  TIME-OUT </b></p><p>  RESET tTOUT </p><p><b>  TIME-OUT</b></p><p><b>  INTERNAL</b></p>&

62、lt;p><b>  RESET</b></p><p>  圖2-8 看門(mén)狗復(fù)位時(shí)序圖</p><p>  掉電檢測(cè)復(fù)位。掉電檢測(cè)復(fù)位功能使能,且電源電壓低于掉電檢測(cè)復(fù)位門(mén)限Vpot時(shí)MCU即復(fù)位。</p><p>  JTAG AVR復(fù)位。復(fù)位寄存器為1時(shí)MCU復(fù)位。</p><p>  第三節(jié) LCD液晶顯示

63、 </p><p>  2.3.1 LCD的顯示原理</p><p>  液晶顯示器是一種功耗極低的顯示器。隨著液晶顯示技術(shù)的發(fā)展,LCD顯示器的規(guī)格眾多,其專用驅(qū)動(dòng)芯片也相互配套,使LCD在控制和儀表系統(tǒng)中廣泛應(yīng)用提供了極大的方便。根據(jù)LCD顯示原理的不同,常見(jiàn)和常用的LCD可以分為字符型LCD和點(diǎn)陣型LCD兩種。不同的顯示原理使得這兩種LCD的指令系統(tǒng)、接口和功能等是不相同的,各

64、有優(yōu)缺點(diǎn),但結(jié)合到本次設(shè)計(jì)的實(shí)際要求,經(jīng)過(guò)比較還是選用點(diǎn)陣型LCD?,F(xiàn)就點(diǎn)陣型LCD的顯示原理、模塊特點(diǎn)等做一簡(jiǎn)要介紹。</p><p>  要想在液晶模塊上顯示一個(gè)漢字或字符,需要3個(gè)最基本的控制操作:分別向3個(gè)控制器寫(xiě)指令代碼、寫(xiě)顯示數(shù)據(jù)和讀顯示數(shù)據(jù)。這里要特別引起注意的是完成這3項(xiàng)操作的前提條件是KS0108B控制器處于準(zhǔn)備好的狀態(tài),即BUSY=0,由模塊的軟件特性知道,當(dāng)BUSY=1時(shí),系統(tǒng)的接口電路處于

65、被封鎖的狀態(tài),是不能接受除讀狀態(tài)指令外的任何操作的。因此在訪問(wèn)控制器之前,一定要判斷控制器的當(dāng)前狀態(tài)。具體到軟件設(shè)計(jì)時(shí),則需設(shè)計(jì)一判忙程序,在判斷BUSY=0后,再往下進(jìn)行操作。</p><p>  在本模塊中,每個(gè)漢字的大小是16×16點(diǎn)陣,而每個(gè)字符的大小是8×16點(diǎn)陣,即字符的寬度為漢字的1/2。它們都是以二維數(shù)組的格式存放在ROM中。向液晶模塊顯示一個(gè)漢字的過(guò)程就是:由液晶屏顯示區(qū)的指

66、定字符行的指定列開(kāi)始,連續(xù)輸出該字符對(duì)應(yīng)的字符庫(kù)中的16個(gè)列數(shù)據(jù),如果是顯示字符,則輸出</p><p><b>  8個(gè)列數(shù)據(jù)即可。</b></p><p>  上面已經(jīng)介紹到,MGLS-19264液晶模塊中液晶屏顯示區(qū)為192×64點(diǎn)陣,其中,它們的每8個(gè)像素行組成一頁(yè),整個(gè)顯示區(qū)共分為8頁(yè),每64列為一個(gè)區(qū),這樣,它就有左、中、右3個(gè)區(qū),它的顯示區(qū)示意

67、圖如下:</p><p>  左區(qū) 中區(qū) 右區(qū)</p><p>  圖2-9 液晶屏顯示區(qū)示意圖</p><p>  液晶模塊顯示字符是從上到下,從左到右進(jìn)行顯示的。假設(shè)定義從最左上角開(kāi)始顯示,則先從上到下顯示第0頁(yè)的第一列,依次從左向右開(kāi)始顯示。</p><p>  MGLS-1

68、9264LCM的顯示部分為左、中、右3個(gè)區(qū),可以由CS片選的取值分別進(jìn)行控制,其接口的片選定義如下:</p><p>  表2-1 MGLS的片選定義表</p><p>  有了上面的知識(shí),就可以編寫(xiě)顯示界面這一塊程序。由于每個(gè)漢字或字符在圖中位置是固定的,只要定義了相應(yīng)的選區(qū)及X、Y地址,就可以顯示出具體的位置。用lr來(lái)表示漢字的區(qū)域,當(dāng)lr=0,表示左區(qū);lr=1,表示中區(qū);lr=2,

69、表示右區(qū)。X表示頁(yè)面,Y表示列地址。則(lr.X.Y)就可以定義出這個(gè)字在屏上的實(shí)際位置。以第一行的“智”字為例,這個(gè)字位于模塊的左區(qū),則lr=0;它位于第一頁(yè)和第二頁(yè),則X=0;它位于列地址的48-63字節(jié),Y=48,那么“智”就可以通過(guò)(0.0.48)精確地表示出它的位置。這里要注意的是每個(gè)漢字占用的行地址是兩頁(yè),如“智”字占的就是X0和X1,即第二行的漢字其X=2而不是1。因此,第二行的“電”就應(yīng)該表示為(0.2.0),其它字符依

70、此設(shè)計(jì)即可。</p><p>  2.3.2 液晶顯示控制驅(qū)動(dòng)器</p><p>  HD61202及其兼容液晶顯示控制器是一種帶有驅(qū)動(dòng)輸出的圖形液晶顯示控制器,而在小規(guī)模點(diǎn)陣液晶顯示模塊上使用液晶顯示驅(qū)動(dòng)器組成液晶顯示驅(qū)動(dòng)控制系統(tǒng)是非常有益的,這將使液晶顯示模塊的硬件電路簡(jiǎn)單化,從而降低模塊的成本,同時(shí)也提高了對(duì)軟件功能的要求。許多顯示功能如光標(biāo)、字符庫(kù)、閃爍都需要由軟件編制而成。HD6

71、1203和HD61202就是這類液晶顯示驅(qū)動(dòng)控制器套件。之所以稱它們?yōu)樘准且驗(yàn)镠D61203和HD61202必須配套使用,通常有12864和19264兩種規(guī)格。其特點(diǎn)如下:</p><p>  1.內(nèi)藏64*64=4096位顯示RAM,RAM中每位數(shù)據(jù)對(duì)應(yīng)LCD屏上的一個(gè)點(diǎn)的亮、暗狀態(tài)。</p><p>  2.HD61202及其兼容控制器是列驅(qū)動(dòng)器,具有64路列驅(qū)動(dòng)輸出。</p&

72、gt;<p>  3.HD61202及其兼容控制驅(qū)動(dòng)器讀、寫(xiě)時(shí)序與68系列微處理妻相符,因此它可直接與68系列微處理器借口相聯(lián)。</p><p>  4.HD61202及其兼容控制器的占空比為1/32~1/64。</p><p>  2.3.3 液晶顯示模塊的特點(diǎn)</p><p>  MGLS-12864圖形液晶顯示模塊的驅(qū)動(dòng)和控制系統(tǒng)是由一片KS01

73、07B或兼容驅(qū)動(dòng)器( HD61203 )作為行驅(qū)動(dòng)器和兩片KS0108B或兼容驅(qū)動(dòng)器(HD61203) 作為列驅(qū)動(dòng)器組成的。</p><p>  它的主要技術(shù)參數(shù)及其供電特點(diǎn)如下:</p><p>  電源:DC+5V,模塊內(nèi)自帶用于LCD驅(qū)動(dòng)的負(fù)壓電路。</p><p>  顯示內(nèi)容:12864全屏幕點(diǎn)陣。</p><p>  指令形式:七

74、種指令。</p><p>  接口形式:與控制器采用8位數(shù)據(jù)總線和8位控制線相連。</p><p>  工作環(huán)境:-10~+50℃。</p><p>  模塊應(yīng)用有三種電源:邏輯電源、液晶驅(qū)動(dòng)電壓、背光電壓。</p><p>  本次選用的模塊是雙電源供電(VDD/V0),需要提供一個(gè)液晶驅(qū)動(dòng)電壓,用以調(diào)節(jié)對(duì)比度,接在液晶模塊的V0引腳上,由

75、于液晶的對(duì)比度會(huì)隨著溫度的變化而相應(yīng)變化,所以其液晶顯示驅(qū)動(dòng)電壓值應(yīng)隨著溫度作相應(yīng)的調(diào)整,這里采用了一個(gè)電位器,調(diào)整電壓值。</p><p>  背光供電為3.8-4.1V的支流電源,選用電源太大不僅增加功耗,更有可能損壞背光燈和縮短模塊的使用壽命。</p><p>  MGLS-12864的邏輯電路圖如下:</p><p>  圖2-8 MGLS-12864的

76、邏輯電路圖</p><p>  MGLS-12864液晶顯示模塊一共有20個(gè)引腳,它的接口定義如下:</p><p>  表2-2 MGLS-12864的接口電路</p><p>  第四節(jié) 電源電路的設(shè)計(jì)</p><p>  在本次的設(shè)計(jì)中,要供電給mega16和LCD顯示模塊兩部分,而一個(gè)LM7805的輸出電流不足,所以本人打算將meg

77、a16和顯示模塊分別供電,所以實(shí)際電路中用到了兩片7805。下面就一個(gè)電源電路給出設(shè)計(jì)方案,另一個(gè)同樣原理。</p><p><b>  5V電源電路的設(shè)計(jì)</b></p><p><b>  加圖</b></p><p>  圖2-9 5V的電源電路設(shè)計(jì)原理圖</p><p>  上圖是LM78

78、××作為輸出電壓固定的典型電路圖,正常工作時(shí),輸入、輸出電壓差為3-8V。輸入電壓PS為9V。電路中接入電容C5用來(lái)實(shí)現(xiàn)頻率補(bǔ)償,防止穩(wěn)壓器產(chǎn)生高頻自激振蕩和抑止電路引入的干擾,C11是有極性的電解電容,以減小穩(wěn)壓電壓輸出端由輸入電源引入的電平干擾。D1是保護(hù)二極管,當(dāng)輸入端短路時(shí),給輸出電容器C11一個(gè)放電電路,防止C11兩端電壓作用于調(diào)壓管的be結(jié),造成調(diào)壓管be結(jié)擊穿而損壞。其中C5、C11兩個(gè)電容只是起濾波作

79、用選用的大小沒(méi)有特別的要求。</p><p>  第五節(jié) 硬件電路設(shè)計(jì)</p><p>  經(jīng)過(guò)對(duì)以上對(duì)ATmega16L芯片的端口、存儲(chǔ)器、時(shí)鐘電路、以及復(fù)位電路和LCD液晶顯示等原理的介紹后,現(xiàn)在就可以完成對(duì)這部分硬件電路的設(shè)計(jì)了。再結(jié)合前面的分析采用間接訪問(wèn)的方式實(shí)現(xiàn)單片機(jī)與液晶顯示模塊之間的連接。LCD模塊的8位數(shù)據(jù)線接在了Atmega16L芯片B口的8位數(shù)據(jù)線上,這里用了一個(gè)74

80、LS24作為鎖存器使它們間接連接在一起。LCD的EN、D/I、CS1、CS2、R/W分別連接到PA3~PA7上,其詳細(xì)的接法見(jiàn)下圖</p><p>  圖2-10 硬件接線圖</p><p>  第六節(jié) PROTEL99的應(yīng)用簡(jiǎn)介</p><p>  經(jīng)過(guò)前面的努力,智能充電器硬件電路的設(shè)計(jì)在本人及同組人的共同努力下已經(jīng)完成,接下來(lái)便是根據(jù)前面的設(shè)計(jì)用軟件畫(huà)出其原理

81、圖并生成PCB板。PROTEL99SE是一個(gè)全32位的電路板設(shè)計(jì)軟件,使用該軟件可以容易地設(shè)計(jì)電路原理圖、畫(huà)元件圖、設(shè)計(jì)電路板圖、畫(huà)元件封裝圖和電路仿真。</p><p>  在這里主要用它來(lái)繪制電路原理圖和生成印制電路板。原理圖的設(shè)計(jì)步驟如下:</p><p>  設(shè)置原理圖設(shè)計(jì)環(huán)境。其中,工作環(huán)境設(shè)置是使用Design/Options和Tool和Preferences菜單進(jìn)行的,畫(huà)原理

82、圖環(huán)境的設(shè)置主要包括圖紙大小、捕捉柵格、電氣柵格、模板設(shè)置等。</p><p>  放置元件,將電氣和電子元件放置在圖紙上。</p><p>  原理圖布線。元件一旦放置在原理圖上,不需要用導(dǎo)線將元件連接起來(lái),連接時(shí)一定要符合電氣規(guī)則。</p><p>  編輯和調(diào)整。編輯元件的屬性。包括元件名、參數(shù)、封裝圖等。調(diào)整元件和導(dǎo)線的位置等操作。</p>&

83、lt;p>  本次設(shè)計(jì)所用的主要元件屬性如下:</p><p>  表2-3 主要元件表</p><p>  檢查原理圖。使用電氣規(guī)則功能(ERC)檢查原理圖的連接是否合理和正確。給出檢查報(bào)告,若有錯(cuò)誤則要根據(jù)錯(cuò)誤進(jìn)行改正。</p><p>  生成網(wǎng)絡(luò)表。所謂網(wǎng)絡(luò)表就是元件名、封裝、參數(shù)及元件之間的連接表,通過(guò)該表可以確認(rèn)各個(gè)元件和它們之間的關(guān)系。</

84、p><p><b>  打印原理圖。</b></p><p>  對(duì)電路板的設(shè)計(jì)主要分為以下幾個(gè)步驟;</p><p>  使用原理圖編輯器設(shè)計(jì)原理圖,進(jìn)行電氣檢查(ERC)并生成原理圖的網(wǎng)絡(luò)表。</p><p>  進(jìn)入電路板(PCB)環(huán)境,使用電路向?qū)Т_定電路板的層數(shù)、尺寸等電路板參數(shù)。</p><p

85、>  使用Design/Netlist菜單,調(diào)入網(wǎng)絡(luò)表。</p><p>  由于在前面的元件封裝不規(guī)范,這里面出現(xiàn)了許多錯(cuò)誤,通過(guò)請(qǐng)教老師及自己的不懈努力,花了數(shù)天的時(shí)間才全部改了出來(lái)。</p><p>  布置元件,就是將元件合理地分布在電路板上。自動(dòng)布置元件或人工布置元件,多次布置直到自己滿意為止。</p><p>  人工布線是畫(huà)電路板的基礎(chǔ),但比較耗

86、時(shí)和費(fèi)力,另外由于自身經(jīng)驗(yàn)的不足,只得先采用自動(dòng)布線,在此基礎(chǔ)上作了適當(dāng)?shù)男薷摹?lt;/p><p>  完成修飾等工作,完成整個(gè)電路板的設(shè)計(jì)。</p><p>  接下來(lái)是焊接的工作,這部分相對(duì)來(lái)說(shuō)并不陌生,在大二時(shí)曾進(jìn)行過(guò)電子課程的實(shí)習(xí),主要就是完成收音機(jī)的焊接。雖然以后接觸得比較少,但通過(guò)幾天的練習(xí),還是基本圓滿地完成了任務(wù)。焊接通常要求:①焊點(diǎn)接觸良好,尤其避免虛焊的產(chǎn)生;②焊點(diǎn)要有足

87、夠的機(jī)械強(qiáng)度以保證被焊點(diǎn)不致滑落;③焊點(diǎn)表面應(yīng)美觀,有光澤。這塊板子面積不算大(約90cm70cm),元器件引腳多,看起來(lái)很密集。從焊下來(lái)的結(jié)果來(lái)看,焊點(diǎn)還可以,也算比較美觀,最關(guān)鍵的是沒(méi)有短路的情況發(fā)生。</p><p>  焊接完成后,整個(gè)硬件電路原理、繪制原理路、焊接等工作已全部完成,下面轉(zhuǎn)到軟件部分的設(shè)計(jì)。</p><p><b>  第三章 軟件設(shè)計(jì)</b>

88、</p><p>  由于本人主要負(fù)責(zé)設(shè)計(jì)軟件部分,而本人之前對(duì)C語(yǔ)言這門(mén)課的學(xué)習(xí)不是非常的精通,因此在著手本章之前本人對(duì)C語(yǔ)言以及AVR單片機(jī)與C語(yǔ)言編程方面的書(shū)籍做了認(rèn)真仔細(xì)的回顧、學(xué)習(xí)和再研究,這樣才對(duì)下面設(shè)計(jì)工作的開(kāi)展打下了基礎(chǔ)。在本章里,本人將先介紹C語(yǔ)言開(kāi)發(fā)的優(yōu)勢(shì),然后介紹LCD的顯示原理、模塊的軟件特性等,接下來(lái)便是最主要的整個(gè)程序的設(shè)計(jì)。</p><p>  3.1.用C語(yǔ)

89、言開(kāi)發(fā)單片機(jī)的優(yōu)勢(shì)</p><p>  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ì)如下:</p><p>  可以大幅度加快開(kāi)發(fā)進(jìn)度,程

90、序量越大,用C語(yǔ)言就越有優(yōu)勢(shì)。</p><p>  無(wú)需精通單片機(jī)指令集和具體的硬件,也能夠編出符合硬件實(shí)際專業(yè)水平的程序。</p><p>  可以實(shí)現(xiàn)軟件的結(jié)構(gòu)化編程,使得軟件的邏輯結(jié)構(gòu)變得清晰、有條理、便于開(kāi)發(fā)小組計(jì)劃任務(wù)、分工合作。源程序的可讀性和可維護(hù)性都很好。</p><p>  省去了人工分配單片機(jī)資源的工作,在匯編語(yǔ)言中要為每一個(gè)子程序分配單片機(jī)的資

91、源。在使用C語(yǔ)言后,只要在代碼中申明一下變量的類型,編譯器就會(huì)自動(dòng)分配相關(guān)資源,根本不需要人工干預(yù),從而有效地避免了人工分配單片機(jī)資源的差錯(cuò)。</p><p>  匯編語(yǔ)言的可移植性很差,而C語(yǔ)言只要將一些與硬件相關(guān)的代碼作適當(dāng)?shù)男薷?,就可以方便地移植到其它種類的單片機(jī)上。</p><p>  C語(yǔ)言提供auto、static、flash等存儲(chǔ)類型,針對(duì)單片機(jī)的程序存儲(chǔ)空間、數(shù)據(jù)存儲(chǔ)空間及

92、EEPROM空間自動(dòng)為變量合理地分配空間,而且C語(yǔ)言提供復(fù)雜的數(shù)據(jù)類型,極大地增強(qiáng)了程序處理能力和靈活性。C編譯器能夠自動(dòng)實(shí)現(xiàn)中斷服務(wù)程序的現(xiàn)場(chǎng)保護(hù)和恢復(fù),并且提供常用的標(biāo)準(zhǔn)函數(shù)庫(kù),供用戶使用。并且C編譯器能自動(dòng)生成一些硬件的初始化代碼。</p><p>  對(duì)于一些復(fù)雜系統(tǒng)的開(kāi)發(fā),可以通過(guò)移植(或C編譯器提供)的實(shí)時(shí)操作系統(tǒng)來(lái)實(shí)現(xiàn)。</p><p>  正由于C語(yǔ)言在系統(tǒng)開(kāi)發(fā)中的優(yōu)勢(shì),這

93、次設(shè)計(jì)的所有程序設(shè)計(jì)都將采用C語(yǔ)言編寫(xiě),且通過(guò)ICCAVR編譯器操作AVR的硬件資源。</p><p>  3.2 液晶顯示漢字或字符的原理</p><p>  LCD本身不發(fā)光只是調(diào)節(jié)光的亮度,目前市面上的LCD顯示器都是利用液晶的扭曲一向列效應(yīng)制成,這是一種電場(chǎng)效應(yīng),夾在兩片導(dǎo)電玻璃電極間的液晶經(jīng)過(guò)一定處理,它內(nèi)部的分子呈直角扭曲,當(dāng)線性偏振光透過(guò)其偏振面便會(huì)旋轉(zhuǎn)一個(gè)直角。當(dāng)在玻璃電極

94、上加上電壓后,在電場(chǎng)作用下,液晶的扭曲結(jié)構(gòu)消失,偏振光便可以直接通過(guò)。當(dāng)去掉電場(chǎng)后液晶分子又恢復(fù)取扭曲結(jié)構(gòu)。把這樣的液晶置于兩個(gè)偏振片之間,改變偏振片相對(duì)位置就可以得到白底黑子或黑底白字的顯示形式。結(jié)合以上知識(shí)具體顯示原理如下:</p><p>  ( 1 ) 線段的顯示</p><p>  點(diǎn)陣圖形式液晶由M*N個(gè)顯示單元組成,假設(shè)LCD顯示屏有64行,每行有128列,每8列對(duì)應(yīng)1字節(jié)的

95、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ū)的00H~00FH的16字節(jié)的內(nèi)容決定,當(dāng)(000)=FFH時(shí),如屏的左上角顯示一條短亮線,長(zhǎng)度為8個(gè)點(diǎn);當(dāng)(3FFH)=FFH時(shí),則顯示屏的右下角顯示一條短亮線;當(dāng)(000H)=FFH,(001H)=00H,(002H)=FFH,(003H)=00H,…

96、(00EH)=FFH,(00FH)=00H時(shí),則在屏的頂部顯示一條由8段亮線和8段暗線組成的虛線。這就是LCD顯示的基本原理。</p><p>  ( 2 ) 字符的顯示</p><p>  用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”的

97、不亮,這樣一來(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)的代碼即可。</p><p>  ( 3 ) 漢字的顯示</p><p>  漢字的顯示一般采用圖形方式,事先從微機(jī)中提取要顯示的漢字的點(diǎn)陣碼,每個(gè)漢字占32B,

98、分左右兩半部,各占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è)完整的漢字。</p><p>  3.3 LCD模塊的指令說(shuō)明</p><p>  要完成顯示程序的設(shè)計(jì),必須了解LCD液晶模塊的指

99、令系統(tǒng)。這里采用的LCD是北京精電蓬遠(yuǎn)顯示技術(shù)公司生產(chǎn)的MGLS系列圖形液晶顯示模塊,其內(nèi)藏KS0108B/HD61202控制器。</p><p>  KS0108B及其兼容控制驅(qū)動(dòng)器( HD61202 )的指令系統(tǒng)比較簡(jiǎn)單,一共只有7條指令,從作用上可分為兩類。第一條指令和第二條指令為顯示狀態(tài)設(shè)置類;其余指令為數(shù)據(jù)讀/寫(xiě)操作指令。下面是各個(gè)指令的功能:</p><p><b>

100、  讀狀態(tài)指令</b></p><p>  狀態(tài)字是計(jì)算機(jī)了解HD61202及其兼容控制驅(qū)動(dòng)器當(dāng)前狀態(tài),或是HD61202及其兼容控制驅(qū)動(dòng)器向計(jì)算機(jī)提供其內(nèi)部狀態(tài)的唯一的信息渠道。狀態(tài)字為一字節(jié),其中僅有3位有效位,它們是:</p><p>  BUSY表示當(dāng)前HD61202接口控制電路運(yùn)行狀態(tài)。BUSY=1表示HD61202正在處理計(jì)算機(jī)發(fā)來(lái)的指令或數(shù)據(jù)。此時(shí)接口電路被封鎖,

101、不能接受除讀狀態(tài)字以外的任何操作。BUSY=0表示HD61202接口電路已處于“準(zhǔn)備好”狀態(tài),等待計(jì)算機(jī)的訪問(wèn)。</p><p>  ON/OFF表示當(dāng)前的顯示狀態(tài)。ON/OFF=1表示關(guān)顯示狀態(tài);ON/OFF=0表示開(kāi)顯示狀態(tài)。</p><p>  RESET表示當(dāng)前HD61202的工作狀態(tài),即反映RST端的電平狀態(tài)。當(dāng)RST為低電平狀態(tài)時(shí),HD61202處于復(fù)位工作狀態(tài),RESET=1

102、;當(dāng)RST為高電平狀態(tài)時(shí),HD61202為正常工作狀態(tài),RESET=0。</p><p>  在指令設(shè)置和數(shù)據(jù)讀寫(xiě)時(shí)要注意狀態(tài)字中的BUSY標(biāo)志。只有在BUSY=0時(shí),計(jì)算機(jī)對(duì)HD61202的操作才能有效,因此計(jì)算機(jī)在每次對(duì)HD61202操作之前,都要讀出狀態(tài)字以判斷BUSY是不為“0”。若不為“0”,則計(jì)算機(jī)需要等待,直至BUSY=0為止。</p><p><b>  顯示開(kāi)關(guān)

103、指令</b></p><p>  該指令設(shè)置顯示開(kāi)/關(guān)觸發(fā)器的狀態(tài),由此控制顯示數(shù)據(jù)鎖存器的工作方式,從而控制顯示屏上的顯示狀態(tài)。D位為顯示開(kāi)/關(guān)控制位。當(dāng)D=1為開(kāi)顯示設(shè)置,顯示數(shù)據(jù)鎖存器正常工作,顯示屏上呈現(xiàn)所需的顯示效果。此時(shí)在狀態(tài)字中ON/OFF=0;當(dāng)D=0為關(guān)顯示設(shè)置,顯示數(shù)據(jù)鎖存器被置零,顯示屏呈不顯示狀態(tài),但顯示存儲(chǔ)器并沒(méi)有被破壞,在狀態(tài)字中ON/OFF=1。</p>&

104、lt;p><b>  顯示起始行設(shè)置指令</b></p><p>  該指令設(shè)置了顯示起始行寄存器的內(nèi)容。HD61202有64行顯示的管理能力,該指令中L5~L0為顯示起始行的地址,取值在0~3FH( 1~64行)范圍內(nèi),它規(guī)定了顯示屏上最頂一行所對(duì)應(yīng)的顯示存儲(chǔ)器的行地址。如果定時(shí)間隔地,等間距地修改( 如加1或減1)顯示起始行寄存器的內(nèi)容,則顯示屏將呈現(xiàn)顯示內(nèi)容向上或向下平滑滾動(dòng)的顯

105、示效果。</p><p><b>  頁(yè)面地址設(shè)置指令</b></p><p>  該指令設(shè)置了頁(yè)面地址——X地址寄存器的內(nèi)容。HD61202將顯示存儲(chǔ)器分成8頁(yè),指令代碼中P2-P0就是要確定當(dāng)前所要選擇的頁(yè)面地址,取值范圍為0-7H,代表第1-8頁(yè)。該指令規(guī)定了以后的讀/寫(xiě)操作將在哪一個(gè)頁(yè)面上進(jìn)行。</p><p><b>  列

106、地址設(shè)置指令</b></p><p>  該指令設(shè)置了Y地址計(jì)數(shù)器的內(nèi)容,C5~C0=0~3FH( 1~64 )代表了某一頁(yè)面上的某一個(gè)單元地址,隨后的一次讀或?qū)憯?shù)據(jù)將在這個(gè)單元上進(jìn)行。Y地址計(jì)數(shù)器具有自動(dòng)加1功能,在每上次讀/寫(xiě)數(shù)據(jù)后它將自動(dòng)加1,所以在連續(xù)進(jìn)行讀/寫(xiě)數(shù)據(jù)時(shí),Y地址計(jì)數(shù)器不必每次都設(shè)置一次。</p><p>  頁(yè)面地址的設(shè)置和列地址的設(shè)置將顯示存儲(chǔ)器單元唯一

107、的確定下來(lái),為后來(lái)的顯示數(shù)據(jù)的讀/寫(xiě)作了地址的選通。</p><p><b>  寫(xiě)數(shù)據(jù)指令</b></p><p>  該操作將8位數(shù)據(jù)寫(xiě)入先前已確定的顯示存儲(chǔ)器的單元內(nèi)。操作完成后列地址計(jì)數(shù)器自動(dòng)加1。</p><p><b>  讀數(shù)據(jù)指令</b></p><p>  該操作將HD61202接

108、口部的輸出寄存器內(nèi)容讀出,然后列地址計(jì)數(shù)器自動(dòng)加一。必須注意的是,進(jìn)行讀操作之前,必須有一次空讀操作,緊接著再讀才會(huì)讀出所要讀的單元中的數(shù)據(jù)。</p><p>  3.4 液晶顯示界面</p><p>  本著簡(jiǎn)單明了的基本思想前面提到,結(jié)合液晶顯示模塊的相關(guān)知識(shí),設(shè)計(jì)出如下界面:</p><p>  圖3-1 LCD界面顯示</p><p&g

109、t;  這次設(shè)計(jì)采用的液晶顯示模塊本是由北京精電公司所造的圖形式的MGLS-12864芯片,其用一片KS0107B或兼容驅(qū)動(dòng)器( HD61203 )作為行驅(qū)動(dòng)器和三片KS0108B或兼容驅(qū)動(dòng)器(HD61203) 作為列驅(qū)動(dòng)器組成的。</p><p>  液晶顯示的第一行為“智能型充電器”,由左起第四列開(kāi)始顯示,這樣正好左右平均分配。第二行左起頂格顯示“電池”,表示對(duì)充電電池的選擇,可進(jìn)行“鋰電、鎳鎘、鎳氫、鉛酸”

110、四種電池的選取,第三行顯示電池的節(jié)數(shù),第四行顯示狀態(tài),可以在“快充、涓充、充滿、放電”四個(gè)選項(xiàng)間進(jìn)行選取,第二行到第四行左起分別顯示電壓、電流和溫度數(shù)值。由此可見(jiàn),左邊的兩選項(xiàng)在充放電的過(guò)程中是不變的,而右邊的三個(gè)參數(shù)在充電過(guò)程中隨時(shí)發(fā)生變化。</p><p>  3.5 系統(tǒng)程序流程圖</p><p>  為了方便程序的設(shè)計(jì),使自己在設(shè)計(jì)過(guò)程中做到思路清晰,設(shè)計(jì)起來(lái)游刃有余。這里首先畫(huà)出

111、了程序流程圖,后面根據(jù)次流程圖具體設(shè)計(jì)程序,現(xiàn)具體分析如下:</p><p><b>  (一)主程序流程圖</b></p><p>  這次設(shè)計(jì)課題的主要內(nèi)容是在充電器的充電過(guò)程中,采集參數(shù),進(jìn)行電壓、電流、溫度的實(shí)時(shí)顯示。其主流程圖設(shè)計(jì)如下:</p><p><b>  (1)</b></p><p

溫馨提示

  • 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. 眾賞文庫(kù)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論