




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、基于單片機(jī)控制的開關(guān)電源設(shè)計(jì)系 部: 電子與通信工程系 姓 名: 專業(yè)班級(jí): 電信10D1 學(xué) 號(hào): 指導(dǎo)老師: 2012年9月21日聲 明本人所呈交的基于單片機(jī)控制的電源開關(guān)設(shè)計(jì),是我在指導(dǎo)教師的指導(dǎo)和查閱相關(guān)著作下獨(dú)立進(jìn)行分析研究所取得的成果。除文中已經(jīng)注明引用的內(nèi)容外,本論文不包含其他個(gè)人已經(jīng)發(fā)表或撰寫過的研究成果。對(duì)本文的研究做出重要貢獻(xiàn)的個(gè)人和集體,均已在文中作了明確說明并表示謝意。作者簽名: 日 期: 【摘要】開關(guān)電源體積小、效率高,被譽(yù)為高效節(jié)能電源,現(xiàn)己成為穩(wěn)壓電源的主導(dǎo)產(chǎn)品。隨著開關(guān)電源在計(jì)算機(jī)、通信、航空航天、儀器儀表及家用電器等方面的廣泛應(yīng)用, 人們對(duì)其需求量日益增長(zhǎng),
2、并且對(duì)電源的效率、體積、重量及可靠性等方面提出了更高的要求。開關(guān)電源以其效率高、體積小、重量輕等優(yōu)勢(shì)在很多方面逐步取代了效率低、又笨又重的線性電源。本文介紹了一款基于PWM技術(shù)的DC-DC開關(guān)穩(wěn)壓電源,用proteus仿真,輸出紋波小,電壓穩(wěn)定可靠.關(guān)鍵詞:開關(guān)電源,DC-DC,單片機(jī),proteusAbstract: The small size of the switching power supply, high efficiency, known as energy-efficient power supply, has now become the leading products
3、of the regulated power supply.With the wide application of switching power supplies in computers, communications, aerospace, instrumentation and household appliances, people growing their demand and higher power efficiency, size, weight, and reliabilityrequirements. Switching power supply for its hi
4、gh efficiency, small size, light weight advantages in many ways to gradually replace the inefficient, clunky, heavy linear power.This article describes a DC-DC switching power supply based on PWM technology, with proteus simulation output ripple voltage is stable and reliable.Keywords: switching pow
5、er supplies, DC-DC, single-chip, proteus目錄 TOC o 1-3 h z u HYPERLINK l _Toc338850532 【摘要】 PAGEREF _Toc338850532 h 3 HYPERLINK l _Toc338850533 一、引 言 PAGEREF _Toc338850533 h 4 HYPERLINK l _Toc338850534 二、總體設(shè)計(jì) PAGEREF _Toc338850534 h 5 HYPERLINK l _Toc338850535 (一)硬件總體設(shè)計(jì) PAGEREF _Toc338850535 h 5 HYPER
6、LINK l _Toc338850536 (二)AT89C52單片機(jī)概述 PAGEREF _Toc338850536 h 5 HYPERLINK l _Toc338850538 (三)開關(guān)電源系統(tǒng)硬件設(shè)計(jì) PAGEREF _Toc338850538 h 9 HYPERLINK l _Toc338850539 1.開關(guān)電源電路設(shè)計(jì) PAGEREF _Toc338850539 h 10 HYPERLINK l _Toc338850540 2.電壓反饋電路 PAGEREF _Toc338850540 h 10 HYPERLINK l _Toc338850541 3.限流電路 PAGEREF _Toc
7、338850541 h 11 HYPERLINK l _Toc338850542 三、軟件設(shè)計(jì) PAGEREF _Toc338850542 h 11 HYPERLINK l _Toc338850543 (一)總的軟件設(shè)計(jì)思想 PAGEREF _Toc338850543 h 11 HYPERLINK l _Toc338850544 (二)各部分的軟件框圖和程序 PAGEREF _Toc338850544 h 12 HYPERLINK l _Toc338850545 1.主程序設(shè)計(jì) PAGEREF _Toc338850545 h 12 HYPERLINK l _Toc338850547 2數(shù)據(jù)顯示
8、子程序 PAGEREF _Toc338850547 h 13 HYPERLINK l _Toc338850548 3.鍵盤掃描子程序 PAGEREF _Toc338850548 h 13 HYPERLINK l _Toc338850550 4.鍵值處理子程序流程圖 PAGEREF _Toc338850550 h 14 HYPERLINK l _Toc338850552 四、程序清單 PAGEREF _Toc338850552 h 14一、引 言本設(shè)計(jì)中采用的是脈寬調(diào)制型, Pwm技術(shù)是利用微處理器的數(shù)字輸出來對(duì) HYPERLINK :/baike.soso /v782602.htm?ch=ch
9、.bk.innerlink t _blank 模擬電路進(jìn)行控制的一種非常有效的技術(shù),廣泛應(yīng)用在從測(cè)量、通信到功率控制與變換的許多領(lǐng)域中。PWM的一個(gè)優(yōu)點(diǎn)是從處理器到被控系統(tǒng)信號(hào)都是數(shù)字形式的,無需進(jìn)行 HYPERLINK :/baike.soso /v7475956.htm?ch=ch.bk.innerlink t _blank 數(shù)模轉(zhuǎn)換。讓信號(hào)保持為數(shù)字形式可將噪聲影響降到最小。在脈寬調(diào)制中因?yàn)轭l率不變,所以無論是對(duì)電路中的磁性元件及晶體管的測(cè)試和設(shè)計(jì)都很方便,而且對(duì)射頻干擾的抑制也變得比較容易。利用單片機(jī)可以實(shí)現(xiàn)對(duì)開關(guān)電源的智能控制,實(shí)現(xiàn)智能化開關(guān)電源的制作。高度集成、功能強(qiáng)大的開關(guān)型穩(wěn)壓
10、電源代表著開關(guān)電源發(fā)展的主流方向,其技術(shù)也日驅(qū)成熟。二、總體設(shè)計(jì)本課題的主要思想是利用單片機(jī)可以實(shí)現(xiàn)對(duì)開關(guān)電源的智能控制,實(shí)現(xiàn)智能化開關(guān)電源的制作。通過鍵盤預(yù)置電壓,控制單片機(jī)進(jìn)行脈寬調(diào)制,使輸出電壓在大范圍內(nèi)可調(diào)。通過單片機(jī)軟件控制,實(shí)現(xiàn)電源的智能保護(hù),可以設(shè)定某個(gè)規(guī)定的電壓或者電流,當(dāng)超過該電壓或者電流時(shí),單片機(jī)關(guān)斷開關(guān)管,電源不再工作,以便保護(hù)電源。三、硬件設(shè)計(jì)(一)硬件總體設(shè)計(jì)本設(shè)計(jì)中擬采用脈寬調(diào)制型,先通過電壓及功率變換設(shè)計(jì)出一個(gè)DC12V左右的電壓源,再對(duì)12V的電壓源,通過脈寬調(diào)制,實(shí)現(xiàn)步進(jìn)0.1V、輸出電流500 mA、LCD顯示的直流電壓。利用單片機(jī)可以實(shí)現(xiàn)對(duì)開關(guān)電源的智能控
11、制,實(shí)現(xiàn)智能化開關(guān)電源的制作。硬件總體框圖如圖3-1所示。圖3-1硬件總體框圖(二)AT89C52單片機(jī)概述圖3-2 AT89C52單片機(jī)組成結(jié)構(gòu)圖AT89C51是一種帶4K字節(jié)FLASH存儲(chǔ)器(FPEROMFlash Programmable and Erasable Read Only Memory)的低電壓、高性能CMOS 8位微處理器,俗稱單片機(jī)。AT89C2051是一種帶2K字節(jié)閃存可編程可擦除只讀存儲(chǔ)器的單片機(jī)。單片機(jī)的可擦除只讀存儲(chǔ)器可以反復(fù)擦除1000次。該器件采用ATMEL高密度非易失存儲(chǔ)器制造技術(shù)制造,與工業(yè)標(biāo)準(zhǔn)的MCS-51指令集和輸出管腳相兼容。由于將多功能8位CPU和
12、閃爍存儲(chǔ)器組合在單個(gè)芯片中,ATMEL的AT89C51是一種高效微控制器,AT89C2051是它的一種精簡(jiǎn)版本。AT89C51單片機(jī)為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價(jià)廉的方案。2AT89C52單片機(jī)引腳結(jié)構(gòu)(1)89C51外部引腳圖:; 引腳說明:(1)電源引腳 Vcc(40腳):典型值5V。 Vss(20腳):接低電平。 (2)外部晶振 X1、X2分別與晶體兩端相連接。當(dāng)采用外部時(shí)鐘信號(hào)時(shí),X2接振蕩信號(hào),X1接地。 (3)輸入輸出口引腳: P0口:I/O雙向口。作輸入口時(shí),應(yīng)先軟件置“ 1”。 P1口:I/O雙向口。作輸入口時(shí),應(yīng)先軟件置“ 1”。 P2口:I/O雙向口。作輸入口時(shí)
13、,應(yīng)先軟件置“ 1”。 P3口:I/O雙向口。作輸入口時(shí),應(yīng)先軟件置“ 1”。 (4)控制引腳 RST(9引腳):復(fù)位輸入。當(dāng)輸入連續(xù)兩個(gè)機(jī)器周期以上高電平時(shí)為有效,用來完成單片機(jī)的復(fù)位初始化操作、計(jì)時(shí)完成后,RST引腳輸出96個(gè)晶振周期的高電平。DISROT默認(rèn)狀態(tài)下,復(fù)位高電平有效。ALE/PROG(30引腳):一般情況下,ALE以晶振六分之一的固定頻率輸出脈沖,可用來作為外部定時(shí)器或時(shí)鐘使用。PSEN(29引腳):外部程序存儲(chǔ)信號(hào)時(shí)外部程序存儲(chǔ)器選通信號(hào)。當(dāng)AT89C51RC從外部程序存儲(chǔ)器執(zhí)行外部代碼時(shí),PSEN在每個(gè)機(jī)器周期被激活兩次。EA/VPP(31引腳):訪問外部程序存儲(chǔ)器控制
14、信號(hào),為使能從0000H到FFFFH的外部程序存儲(chǔ)器讀取指令,必須接END。XTAL1(19引腳):振蕩器反相放大器和內(nèi)部時(shí)鐘發(fā)生電路的輸入端。XTAL2(18引腳):振蕩器反相放大器的輸入端。P1口作為L(zhǎng)CD液晶屏的數(shù)據(jù)口,采用并口數(shù)據(jù)傳輸模式,P2口中的P2.0、P2.1、P2.2、作為控制信號(hào)輸出口,分別接RS、R/W、E控制端,P2.3、P2.4分別接濕溫度傳感器的SCK和DATA,P2.5.、P2.6、P2.7接按鍵電路,P1口的P1.0、P1.1、P1.2分別接ADC0831的控制端,P1.4接報(bào)警的蜂鳴器。 3AT89C52單片機(jī)的最小系統(tǒng) 圖3-4 AT89C52單片機(jī)組成結(jié)構(gòu)
15、圖(1)復(fù)位電路:由電容串聯(lián)電阻構(gòu)成,由圖并結(jié)合電容電壓不能突變的性質(zhì),可以知道,當(dāng)系統(tǒng)一上電,RST腳將會(huì)出現(xiàn)高電平,并且,這個(gè)高電平持續(xù)的時(shí)間由電路的RC值來決定。典型的51單片機(jī)當(dāng)RST腳的高電平持續(xù)兩個(gè)機(jī)器周期以上就將復(fù)位,所以,適當(dāng)組合RC的取值就可以保證可靠的復(fù)位。一般教科書推薦C取10u,R取10K。原則就是要讓RC組合可以在RST腳上產(chǎn)生不少于2個(gè)機(jī)周期的高電平。至于如何具體定量計(jì)算,可以參考電路分析相關(guān)書籍。(2) 晶振電路:典型的晶振取11.0592MHz(因?yàn)榭梢詼?zhǔn)確地得到9600波特率和19200波特率,用于有串口通訊的場(chǎng)合)/12MHz(產(chǎn)生精確的uS級(jí)時(shí)歇,方便定時(shí)
16、操作),在本電路中,取12M。(三)開關(guān)電源系統(tǒng)硬件設(shè)計(jì)開關(guān)電源電路設(shè)計(jì)圖3-3開關(guān)電源電路如圖3-3可看出,DC50V輸入,經(jīng)Q1,Q2,Q3,進(jìn)行交流變換,輸入給儲(chǔ)能性元件L1,當(dāng)輸出電壓有波動(dòng)時(shí),調(diào)整管Q4調(diào)整輸入電壓,反過來抑制輸出電壓的波動(dòng)。電壓反饋電路 電壓反饋部分,當(dāng)電壓達(dá)到12V時(shí),電流流經(jīng)穩(wěn)壓二極管D4、三極管Q2 B,E極、電阻R8 使Q2導(dǎo)通,Q2導(dǎo)通將使三極管13003提前進(jìn)入關(guān)斷區(qū),從而使輸出電壓穩(wěn)定在12V左右。限流電路 當(dāng)R11上流經(jīng)的電流到達(dá)一定值,在R11上將產(chǎn)生壓降,當(dāng)壓降超過0.7V,三極管Q3飽和導(dǎo)通Q3集電極電壓為0,自激式振蕩回路終止,輸出電流變小,
17、當(dāng)R11上的電流小到足夠的值,R11兩端的電壓低于0.7V,Q3又截止,自激振蕩回路又繼續(xù)振蕩。圖三、軟件設(shè)計(jì)(一)總的軟件設(shè)計(jì)思想系統(tǒng)的軟件設(shè)計(jì)采用C語(yǔ)言,對(duì)單片機(jī)進(jìn)行編程實(shí)現(xiàn)各項(xiàng)功能。程序是采用keil c51軟件編寫的,可以使液晶顯示屏對(duì)特定數(shù)字、英文字母以及漢字組成的句子進(jìn)行顯示,并通過按鍵對(duì)顯示內(nèi)容實(shí)現(xiàn)控制、轉(zhuǎn)換等功能。主程序主要起到一個(gè)導(dǎo)向和決策功能,決定液晶顯示屏該顯示什么內(nèi)容,該如何顯示。液晶顯示屏各種功能的實(shí)現(xiàn)主要通過調(diào)用具體的子程序。(二)各部分的軟件框圖和程序設(shè)計(jì)文字描述下 例如(通電之后,系統(tǒng)開始工作,若是有鍵按下,就根據(jù)按鍵程序進(jìn)行工作,并把結(jié)果顯示到LCD液晶顯示屏
18、上,若是沒有按鍵,定時(shí)時(shí)間一到,氣體傳感)2數(shù)據(jù)顯示子程序四、程序清單/*/* */* *頭文件及宏定義* */* */*#include#includeincludes.h#define uchar unsigned char #define uint unsigned int#define SCANPORT P2#define TIME1H 80#define TIME1L 80 /定時(shí)器1溢出時(shí)間/sbit wr=P31;sbit rd=P30;sbit P27=P27;unsigned long int shuchu=500; /默認(rèn)的開機(jī)電壓/uint zhuhuandata;uns
19、igned long int ch=0;uchar i=0; /按鍵標(biāo)記/uchar uca_LineScan3=0 xEF,0 xDF,0 xBF;void chuli(); /函數(shù)定義/uchar getkey(); /函數(shù)定義/*/* */* *將鍵值累加并送顯示* */* */*void qiuhe(uchar t) if(i=1) ch=t; vShowOneChar(6,89,ucat); if(i=2) ch=ch*10+t; vShowOneChar(6,103,ucat); if(i=3) ch=ch*10+t; vShowOneChar(6,111,ucat); /*/*
20、*/* *按鍵功能函數(shù)* */* */*void key_chuli(uchar x) uchar t; switch(x)case 42: t=0; i+; qiuhe(t); if(i=3) vShowOneChin(2,49,uca_que); vShowOneChin(2,64,uca_ding); vShowOneChin(4,59,uca_wenhao); break; /0case 31: t=1; i+; qiuhe(t); if(i=3) vShowOneChin(2,49,uca_que); vShowOneChin(2,64,uca_ding); vShowOneChin
21、(4,59,uca_wenhao); break; /1case 32: t=2; i+; qiuhe(t); if(i=3) vShowOneChin(2,49,uca_que); vShowOneChin(2,64,uca_ding); vShowOneChin(4,59,uca_wenhao); break; /2case 33: t=3; i+; qiuhe(t); if(i=3) vShowOneChin(2,49,uca_que); vShowOneChin(2,64,uca_ding); vShowOneChin(4,59,uca_wenhao); break; /3case 2
22、1: t=4; i+; qiuhe(t); if(i=3) vShowOneChin(2,49,uca_que); vShowOneChin(2,64,uca_ding); vShowOneChin(4,59,uca_wenhao); break; /4case 22: t=5; i+; qiuhe(t); if(i=3) vShowOneChin(2,49,uca_que); vShowOneChin(2,64,uca_ding); vShowOneChin(4,59,uca_wenhao); break; /5case 23: t=6; i+; qiuhe(t); if(i=3) vSho
23、wOneChin(2,49,uca_que); vShowOneChin(2,64,uca_ding); vShowOneChin(4,59,uca_wenhao); break; /6case 11: t=7; i+; qiuhe(t); if(i=3) vShowOneChin(2,49,uca_que); vShowOneChin(2,64,uca_ding); vShowOneChin(4,59,uca_wenhao); break; /7case 12: t=8; i+; qiuhe(t); if(i=3) vShowOneChin(2,49,uca_que); vShowOneCh
24、in(2,64,uca_ding); vShowOneChin(4,59,uca_wenhao); break; /8case 13: t=9; i+; qiuhe(t); if(i=3) vShowOneChin(2,49,uca_que); vShowOneChin(2,64,uca_ding); vShowOneChin(4,59,uca_wenhao); break; /9case 41: if(i=3) /ok ch=ch*256/512; shuchu=ch; ch=0; TH0=65200; TL0=65200; vShowOneChin(2,49,uca_0); vShowOn
25、eChin(2,64,uca_0); vShowOneChin(4,48,uca_SHU); vShowOneChin(4,64,uca_CHU); vShowOneChar(6,88,uca_HEN); vShowOneChar(6,104,uca_HEN); vShowOneChar(6,112,uca_HEN); i=0; break; void vTimer0(void) interrupt 1 using 2 uchar a,d;unsigned long int c=0;uchar data tab3;a=(zhuhuandata&0 xf0)4)*100/16); d=(zhuh
26、uandata&0 x0f)*100/256); c=(a+d)*5.12; tab0=c%10; tab1=c/10%10; tab2=c/100%10;vShowOneChar(2,89,ucatab2);vShowOneChar(2,103,ucatab1);vShowOneChar(2,111,ucatab0); TH0=TIME1H;TL0=TIME1L;void main(void) SCANPORT=0 x8F;ClearLCD(0 x00);vShowOneChar(2,89,uca5);vShowOneChar(2,96,uca_XIAOSHU);vShowOneChar(2
27、,103,uca0);vShowOneChar(2,111,uca0);vShowOneChar(2,120,uca_V); vShowOneChin(0,0,uca_DANG);vShowOneChin(0,16,uca_QIAN);vShowOneChin(0,32,uca_GONG);vShowOneChin(0,48,uca_ZUO);vShowOneChin(0,64,uca_DIAN);vShowOneChin(0,80,uca_YA);vShowOneChin(0,96,uca_MAOHAO);vShowOneChin(4,0,uca_QING);vShowOneChin(4,1
28、6,uca_SHE);vShowOneChin(4,32,uca_ZHI);vShowOneChin(4,48,uca_SHU);vShowOneChin(4,64,uca_CHU);vShowOneChin(4,80,uca_DIAN);vShowOneChin(4,96,uca_YA);vShowOneChin(4,112,uca_MAOHAO);vShowOneChar(6,96,uca_XIAOSHU);vShowOneChar(6,88,uca_HEN);vShowOneChar(6,104,uca_HEN);vShowOneChar(6,113,uca_HEN);vShowOneC
29、har(6,119,uca_V);/TMOD=0X01; TH0=TIME1H;TL0=TIME1L;ET0=1;/T/C0開中斷TR0=1; /開定時(shí)器0中斷IT0=1;/外中斷方式:下降沿。EX0=1;/開啟外部中斷。 EA=1;/ while(1) wr=0; wr=1; chuli(); if(zhuhuandatashuchu)P27=1; if(zhuhuandata=shuchu)P27=0; void chuli() rd=0; zhuhuandata=P0;/*/* */* *函數(shù)實(shí)現(xiàn)* */* */*unsigned char getkey() uchar ucTemp=0
30、; /掃描狀態(tài)暫存。uchar ucRow=0,ucLine=0; /行號(hào),列號(hào)。 for(ucLine=0;ucLine3;ucLine+)/列掃描 SCANPORT=uca_LineScanucLine; /輸出掃描電位。ucTemp=SCANPORT&0 x8F; /輸入掃描電位,并屏蔽高4位。if(ucTemp!=0 x8F) /判斷該列是否有按鍵按下。switch(ucTemp)case 0 x8E: ucRow=10;break; /如果有,則判斷行號(hào)。case 0 x8D: ucRow=20;break;case 0 x8B: ucRow=30;break;case 0 x87:
31、 ucRow=40;break;default: P2=P2; break; break; /SCANPORT=0 x8F; /恢復(fù)P2口 return (ucRow+ucLine+1);/返回按鍵編碼。格式為2位數(shù),高位為行號(hào),低位為列號(hào)。 /void vINT0(void) interrupt 0 EX0=0; key_chuli(getkey(); while(SCANPORT&0 x8F)!=0 x8f) /等待按鍵松開/ ; EX0=1; /*/* */* *LCD12864驅(qū)動(dòng)程序* */* */*/*/* */* *頭文件及宏定義* */* */*#include #define
32、LCDPORT P1sbitE= P37;sbitRW= P36;sbitDI= P35;sbitCS1= P33;sbitCS2= P34;sbit BUSYSTATUS= P17; /忙狀態(tài)位。/#define DISONSTATUS P0_5 /顯示開關(guān)狀態(tài)位。/#define RSTSTATUS P0_4 /復(fù)位狀態(tài)位。#define LCDSTARTROW 0 xC0 /設(shè)置起始行指令。#define LCDPAGE 0 xB8 /設(shè)置頁(yè)指令。#define LCDLINE 0 x40 /設(shè)置列指令。/*/* */* *讀忙標(biāo)志位* */* */*bit bCheckBusy()LC
33、DPORT=0 x00;RW=1;DI=0;E=1;E=0;return BUSYSTATUS; /*/* */* *寫數(shù)據(jù)* */* */*void vWriteData(unsigned char ucData)while(bCheckBusy();LCDPORT=0 x00;RW=0;DI=1;LCDPORT=ucData;E=1;E=0;/*/* */* *寫指令* */* */*void vWriteCMD(unsigned char ucCMD)while(bCheckBusy();LCDPORT=0 x00; RW=0;DI=0;LCDPORT=ucCMD;E=1;E=0;/*/
34、* */* *LCD初始化函數(shù)* */* */*/*void vLCDInitialize()CS1=1;CS2=1;vWriteCMD(0 x38);/8位形式,兩行字符。vWriteCMD(0 x0F);/開顯示。vWriteCMD(0 x01);/清屏。vWriteCMD(0 x06);/畫面不動(dòng),光標(biāo)右移。vWriteCMD(LCDSTARTROW);/設(shè)置起始行。*/*/* */* *顯示自定義行* */* */*/在8128的格子里顯示自定義長(zhǎng)度的一行void vShowCustomRow(unsigned char ucPage,unsigned char ucLine,unsi
35、gned char ucWidth,unsigned char *ucaRow)unsigned char ucCount; /取值范圍:ucPage:07;ucLine:0127;if(ucLine64) /ucWidth:0127;ucLine+ucWidth1128。CS1=1;CS2=0;vWriteCMD(LCDPAGE+ucPage);vWriteCMD(LCDLINE+ucLine);if(ucLine+ucWidth)64)for(ucCount=0;ucCountucWidth;ucCount+)vWriteData(*(ucaRow+ucCount);elsefor(ucC
36、ount=0;ucCount64-ucLine;ucCount+)vWriteData(*(ucaRow+ucCount);CS1=0;CS2=1;vWriteCMD(LCDPAGE+ucPage);vWriteCMD(LCDLINE);for(ucCount=64-ucLine;ucCountucWidth;ucCount+)vWriteData(*(ucaRow+ucCount);elseCS1=0;CS2=1;vWriteCMD(LCDPAGE+ucPage);vWriteCMD(LCDLINE+ucLine-64);for(ucCount=0;ucCountucWidth;ucCoun
37、t+)vWriteData(*(ucaRow+ucCount);/*/* */* *漢字顯示函數(shù)* */* */*/此函數(shù)將1616漢字顯示在8128的格子里。void vShowOneChin(unsigned char ucPage,unsigned char ucLine,unsigned char *ucaChinMap)vShowCustomRow(ucPage,ucLine,16,ucaChinMap);vShowCustomRow(ucPage+1,ucLine,16,ucaChinMap+16);/*/* */* *字符顯示函數(shù)* */* */*/此函數(shù)將816字符顯示在812
38、8的格子里。void vShowOneChar(unsigned char ucPage,unsigned char ucLine,unsigned char *ucaCharMap)vShowCustomRow(ucPage,ucLine,8,ucaCharMap);vShowCustomRow(ucPage+1,ucLine,8,ucaCharMap+8);/*/* */* *清屏函數(shù)* */* */*/此函數(shù)將清空顯示屏。void ClearLCD(unsigned char date)unsigned char page,column; CS1=1;CS2=0;vWriteCMD(LC
39、DSTARTROW);for(page=0;page8;page+) vWriteCMD(page+LCDPAGE); vWriteCMD(LCDLINE); for(column=0;column64;column+) vWriteData(date); /清左屏 CS1=0;CS2=1;vWriteCMD(LCDSTARTROW);for(page=0;page8;page+) vWriteCMD(page+LCDPAGE); vWriteCMD(LCDLINE); for(column=0;column64;column+) vWriteData(date); /清右屏 unsigned
40、 char code uca_DANG=0 x00,0 x40,0 x42,0 x44,0 x4C,0 x40,0 x40,0 x7F,0 x40,0 x40,0 x48,0 x44,0 xE6,0 x40,0 x00,0 x00, 0 x00,0 x40,0 x44,0 x44,0 x44,0 x44,0 x44,0 x44,0 x44,0 x44,0 x44,0 x44,0 xFF,0 x00,0 x00,0 x00; /*當(dāng),0*/unsigned char code uca_QIAN=0 x08,0 x08,0 xE8,0 x29,0 x2A,0 x2E,0 xE8,0 x08,0 x
41、08,0 xCC,0 x0A,0 x0B,0 xE8,0 x0C,0 x08,0 x00, 0 x00,0 x00,0 xFF,0 x09,0 x49,0 x89,0 x7F,0 x00,0 x00,0 x0F,0 x40,0 x80,0 x7F,0 x00,0 x00,0 x00; /*前,0*/ unsigned char code uca_GONG=0 x00,0 x04,0 x04,0 x04,0 x04,0 x04,0 x04,0 xFC,0 x04,0 x04,0 x04,0 x04,0 x06,0 x04,0 x00,0 x00, 0 x20,0 x20,0 x20,0 x20,
42、0 x20,0 x20,0 x20,0 x3F,0 x20,0 x20,0 x20,0 x20,0 x20,0 x30,0 x20,0 x00; /*工,0*/unsigned char code uca_ZUO=0 x80,0 x40,0 x20,0 xF8,0 x87,0 x40,0 x30,0 x0F,0 xF8,0 x88,0 x88,0 xC8,0 x88,0 x0C,0 x08,0 x00, 0 x00,0 x00,0 x00,0 xFF,0 x00,0 x00,0 x00,0 x00,0 xFF,0 x08,0 x08,0 x08,0 x0C,0 x08,0 x00,0 x00;
43、 /*作,0*/unsigned char code uca_DIAN=0 x00,0 xF8,0 x48,0 x48,0 x48,0 x48,0 xFF,0 x48,0 x48,0 x48,0 x48,0 xFC,0 x08,0 x00,0 x00,0 x00, 0 x00,0 x07,0 x02,0 x02,0 x02,0 x02,0 x3F,0 x42,0 x42,0 x42,0 x42,0 x47,0 x40,0 x70,0 x00,0 x00; /*電,0*/unsigned char code uca_YA=0 x00,0 x00,0 xFE,0 x02,0 x82,0 x82,0
44、 x82,0 x82,0 xFE,0 x82,0 x82,0 x82,0 xC3,0 x82,0 x00,0 x00, 0 x40,0 x30,0 x0F,0 x40,0 x40,0 x40,0 x40,0 x40,0 x7F,0 x40,0 x42,0 x44,0 x4C,0 x60,0 x40,0 x00; /*壓,0*/unsigned char code uca_QING=0 x20,0 x22,0 xEC,0 x00,0 x20,0 x22,0 xAA,0 xAA,0 xAA,0 xBF,0 xAA,0 xAA,0 xEB,0 xA2,0 x20,0 x00, 0 x00,0 x00
45、,0 x7F,0 x20,0 x10,0 x00,0 xFF,0 x0A,0 x0A,0 x0A,0 x4A,0 x8A,0 x7F,0 x00,0 x00,0 x00;/*請(qǐng),*/unsigned char code uca_SHE=0 x40,0 x40,0 x42,0 xCC,0 x00,0 x40,0 xA0,0 x9F,0 x81,0 x81,0 x81,0 x9F,0 xA0,0 x20,0 x20,0 x00, 0 x00,0 x00,0 x00,0 x7F,0 xA0,0 x90,0 x40,0 x43,0 x2C,0 x10,0 x28,0 x26,0 x41,0 xC0,0
46、 x40,0 x00;/*設(shè)*/unsigned char code uca_ZHI=0 x00,0 x10,0 x17,0 xD5,0 x55,0 x57,0 x55,0 x7D,0 x55,0 x57,0 x55,0 xD5,0 x17,0 x10,0 x00,0 x00, 0 x40,0 x40,0 x40,0 x7F,0 x55,0 x55,0 x55,0 x55,0 x55,0 x55,0 x55,0 x7F,0 x40,0 x60,0 x40,0 x00;/*置*/unsigned char code uca_SHU=0 x44,0 xF4,0 x4F,0 xE4,0 x44,0
47、x64,0 x90,0 x98,0 x94,0 x93,0 x14,0 x98,0 x08,0 xD0,0 x10,0 x00,0 x04,0 x04,0 x04,0 xFF,0 x02,0 x02,0 xFF,0 x4A,0 x8A,0 x7F,0 x00,0 x3F,0 x80,0 xFF,0 x00,0 x00;/*輸*/unsigned char code uca_CHU=0 x00,0 x00,0 xFC,0 x40,0 x40,0 x40,0 x40,0 xFF,0 x40,0 x40,0 x40,0 x40,0 xFC,0 x00,0 x00,0 x00, 0 x00,0 xFE
48、,0 x40,0 x40,0 x40,0 x40,0 x40,0 x7F,0 x40,0 x40,0 x40,0 x40,0 x40,0 xFE,0 x00,0 x00;/*出*/unsigned char code uca_MAOHAO=0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00, 0 x00,0 x00,0 x36,0 x36,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00
49、,0 x00,0 x00;/*;*/ unsigned char code uca_0=0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00, 0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00;/*;*/unsigned char code uca_HEN=0 x00,0 x00,0 x00,0 x00,0 x00,0
50、 x00,0 x00,0 x00,0 x00,0 x80,0 x80,0 x80,0 x80,0 x80,0 x80,0 x00;/*_*/unsigned char code uca_XIAOSHU=0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x00,0 x60,0 x60,0 x00,0 x00,0 x00;/*.*/ unsigned char code uca_V=0 x08,0 x78,0 x88,0 x00,0 x00,0 xC8,0 x38,0 x08,0 x00,0 x00,0 x07,0 x38,0 x0E,0 x01,0 x00,0 x00;/*V*/unsigned char code uca16=0 x00,0 xE0,0 x10,0 x08,0 x08,0 x10,0 x
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 青海民族大學(xué)《口語(yǔ)與寫作》2023-2024學(xué)年第二學(xué)期期末試卷
- 當(dāng)兵心理健康教育
- 2025屆廣東省普通高中學(xué)業(yè)水平選擇性考試模擬測(cè)試政治試題(含答案)
- 公安窗口服務(wù)課件
- 如何寫創(chuàng)意創(chuàng)業(yè)計(jì)劃書
- 聚合物基復(fù)合材料設(shè)計(jì)
- 學(xué)校消毒知識(shí)培訓(xùn)
- 住建委 合同標(biāo)準(zhǔn)文本
- 公積金繳交協(xié)議合同標(biāo)準(zhǔn)文本
- 個(gè)人制作肥料合同標(biāo)準(zhǔn)文本
- 2024年廣東省五年一貫制學(xué)校招生考試數(shù)學(xué)試卷
- 數(shù)學(xué)-廣東省廣州市2025屆高三一模試題和解析
- 新人教版八年級(jí)下冊(cè)初中物理全冊(cè)教學(xué)課件
- 幼兒繪本故事:如果不吃青菜
- 小班音樂歌唱《小雞抓蟲》原版動(dòng)態(tài)PPT課件
- 二次函數(shù)圖像平移-對(duì)稱與旋轉(zhuǎn).pptx
- 精裝土建移交管理辦法
- 《貨幣金融學(xué)》
- 施工現(xiàn)場(chǎng)總平面布置圖(共23頁(yè))
- 農(nóng)村土地承包經(jīng)營(yíng)權(quán)流轉(zhuǎn)申請(qǐng)登記表
- 小學(xué)生課堂常規(guī)(課堂PPT)
評(píng)論
0/150
提交評(píng)論