版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
第7章80C51單片機常用接口電路設(shè)計顯示器接口原理及應(yīng)用7.1鍵盤接口原理及應(yīng)用7.280C51單片機的模擬量接口7.32023/2/61
在單片機應(yīng)用系統(tǒng)中,顯示器是最常用的輸出設(shè)備。常用的顯示器有:
發(fā)光二極管(LED)
液晶顯示器(LCD)。
發(fā)光二極管(LED)又分為七段LED顯示器(數(shù)碼管)和LED點陣顯示屏。液晶顯示器(LCD)又分為字符液晶與圖形液晶。7.1 顯示器接口原理及應(yīng)用2023/2/627.1.1七段LED顯示器(數(shù)碼管)
LED的工作原理多位LED顯示問題的解決
2023/2/63LED的工作原理
七段式LED顯示部件(a)典型的七段式LED器件(b)共陽極LED(c)共陰極LED2023/2/64
LED的主要部分是七段發(fā)光管,分別為a、b、c、d、e、f、g。有的產(chǎn)品還附帶有小數(shù)點DP。通過發(fā)光段的不同組合,可以顯示0~9和A~F共16個字母數(shù)字。LED可分為:(1)共陽級結(jié)構(gòu)(2)共陰極結(jié)構(gòu)
2023/2/65
共陰極LED顯示器的發(fā)光二極管的陰極連在一起,通常此公共陰極接地。當(dāng)某個發(fā)光二極管的陽極為高電平時,發(fā)光二極管點亮,相應(yīng)的段被顯示。
共陽極LED顯示器的發(fā)光二極管的陽極連在一起,通常此公共陽極接正電壓,當(dāng)某個發(fā)光二極管的陰極接低電平時,發(fā)光二極管被點亮,相應(yīng)的段被顯示。2023/2/66數(shù)字到段碼的譯碼方法將一個4位二進制數(shù)據(jù)轉(zhuǎn)換為LED的7位顯示代碼(段碼)的方法有:
(1)專用芯片譯碼(2)軟件譯碼2023/2/67用專用芯片完成段譯碼的示意(共陽極)2023/2/68軟件譯碼法①將0~F(或0~9)對應(yīng)的段碼組成一個表,存在存儲器中;②查表得段碼2023/2/69多位LED顯示問題的解決
(1)問題的提出實際使用時,往往用幾個顯示管實現(xiàn)多位顯示,如果每一個LED占用一個獨立的輸出端口,則占用的輸出端口就很多。一個端口一個端口一個端口一個端口一個端口2023/2/610(2)問題的解決方法硬件:采用公用的驅(qū)動電路軟件:采用掃描方法
2023/2/6112023/2/612
一個數(shù)據(jù)通道作為位控制,該端口輸出的選擇信號使某一位為高電平(共陽極)時,該位對應(yīng)的LED便顯示數(shù)據(jù)。
另一個數(shù)據(jù)通道輸出段碼,盡管所有的LED均收到了段碼,但只有被位選擇信號選中的那個LED才顯示數(shù)據(jù),其他并不發(fā)光。
2023/2/613
在程序中,軟件按一定頻率循環(huán)輸出位選擇信號和對應(yīng)的顯示數(shù)據(jù),利用眼睛的視覺慣性,從LED顯示器上便可見到相當(dāng)穩(wěn)定的數(shù)字顯示。2023/2/614七段LED數(shù)碼管實驗硬件連接情況
在實驗學(xué)習(xí)板中,有8個共陰極的LED,位選信號通過P0口,再通過74HC573驅(qū)動LED。段碼通過74HC595(串行輸入,并行輸出,節(jié)約并口)輸出至LED.
實際上為了節(jié)約并口資源,P0口連接兩個74HC573,另一片驅(qū)動點陣及交通燈電路。兩個驅(qū)動芯片的轉(zhuǎn)換通過一個波段開關(guān)控制。當(dāng)開關(guān)撥到上邊時,點陣驅(qū)動電路起作用,相反當(dāng)撥到下邊時,數(shù)碼管驅(qū)動電路起作用。2023/2/615實驗1在左邊第一個LED上顯示數(shù)字5步驟:(1)通過74HC595送5的段碼(2)通過P0口送位選信號2023/2/616include<reg51.h>#defineucharunsignedcharsbitclk=P2^7; //595時鐘信號輸入管腳sbitst=P2^6; //595鎖存信號輸入管腳sbitio=P2^5; //595數(shù)據(jù)信號輸入管腳2023/2/617voidwr595(ucharucdat){ uchari; clk=1; st=1; for(i=8;i>0;i--) //循環(huán)八次,寫一個字節(jié)
{ io=ucdat&0x01; //發(fā)送BIT0位
clk=0; clk=1; //時鐘上升沿
ucdat=ucdat>>1; //要發(fā)送的數(shù)據(jù)右移,準(zhǔn)備發(fā)送下一位
} st=0; st=1; //鎖存數(shù)據(jù)}//名稱:wr595()向595發(fā)送一個字節(jié)的數(shù)據(jù)//功能:向595發(fā)送一個字節(jié)的數(shù)據(jù)(先發(fā)低位)2023/2/618Voidmain(){ while(1) { uchark=0xb6;//5的段碼wr595(k);P0=0XFEH; }}2023/2/619實驗2讓8位數(shù)碼管顯示1、2、3、4、5、6、7、82023/2/620#include<reg51.h>#include<intrins.h>#defineucharunsignedchar#defineuintunsignedint#defineSLED_BITP0//LED位選信號輸入管腳
sbitclk=P2^7; //595時鐘信號輸入管腳
sbitst=P2^6; //595鎖存信號輸入管腳
sbitio=P2^5; //595數(shù)據(jù)信號輸入管腳ucharcodeuc7leds[]={0xfc,0x60,0xda,0xf2, 0x66,0xb6,0xbe,0xe0,0xfe};
//定義0-8段碼uchardisplay_7leds[8]={1,2,3,4,5,6,7,8};2023/2/621//功能:向595發(fā)送一個字節(jié)的數(shù)據(jù)(先發(fā)低位)voidwr595(ucharucdat){ uchari; clk=1; st=1; for(i=8;i>0;i--) //循環(huán)八次,寫一個字節(jié)
{ io=ucdat&0x01; //發(fā)送BIT0位
clk=0; clk=1; //時鐘上升沿
ucdat=ucdat>>1;/ /要發(fā)送的數(shù)據(jù)右移,準(zhǔn)備發(fā)送下一位
} st=0; st=1; //鎖存數(shù)據(jù)}2023/2/622延遲程序delay(uintdat){ while(dat--) {; }}2023/2/623//顯示display_7leds[]中的數(shù)據(jù)voidwr7leds(void){ uchari,ch; ch=0x01; //位選信號初始化
for(i=0;i<8;i++) //循環(huán)8次寫8個數(shù)據(jù)
{ wr595(uc7leds[display_7leds[i]]);//顯示數(shù)據(jù)
SLED_BIT=~ch; //送位選信號
ch<<=1;//位選信號右移,準(zhǔn)備在下一個數(shù)碼管顯示下一個數(shù)字 delay(300); //延時
}}2023/2/624Voidmain(){ while(1) { wr7leds(); }}2023/2/625實驗3
利用實驗系統(tǒng)相關(guān)資源,在LED上(左邊第1、2兩個)顯示秒信息(60秒計時),要求左邊第一個LED顯示秒的高位值、第2個顯示秒的低位值。初始值為00。2023/2/626①總體設(shè)計思路設(shè)置二個變量存儲秒值,初值皆為0,設(shè)置一計數(shù)變量進行中斷次數(shù)計數(shù),初值為0。使用定時器/計數(shù)器(工作在方式1)每0.025秒(25ms)產(chǎn)生一次中斷,每次中斷時,先中斷次數(shù)加1,并判斷是否已達40次,若沒有達40次,直接顯示原秒值,若達40次,即,時間已過1秒,改變秒值,然后顯示。2023/2/627#include<reg52.h> //包含頭文件#include<intrins.h>#defineucharunsignedchar#defineuintunsignedintucharnum=0,shijian=0,miao1=0,miao2=0;//74HC595與單片機連接口sbitclk=P2^7; //595時鐘信號輸入管腳sbitst=P2^6; //595鎖存信號輸入管腳sbitio=P2^5; //595數(shù)據(jù)信號輸入管腳//定義P0口sbitP00=P0^0;sbitP01=P0^1;2023/2/628ucharcodeuc7leds[16]={0xfc,0x60,0xda,0xf2 0x66,0xb6,0xbe,0xe0, 0xfe,0xe6,0xee,0x3e, 0x9c,0x7a,0x9e,0x8E};voidtime0_init();voidwr595(ucharucdat);voidwrleds(void);voiddelay(uintdat);
2023/2/629voidmain()//主函數(shù){time0_init();//調(diào)用定時器0初始化子函數(shù)
while(1);//等待中斷}2023/2/630voidtimer0()interrupt1//每中斷一次num加1,若num到40,改變miao1,miao2{TH0=(65536-23040)/256; //定時器賦初值,每0.025秒中斷一次
TL0=(65536-23040)%256; num++;if(num==40){num=0;shijian++;miao1=shijian/10;miao2=shijian%10;if(shijian==60)shijian=0;}wrleds();//顯示miao1,miao2
}2023/2/631voidtime0_init(){TMOD=0X01; //定時器0方式1TH0=(65536-23040)/256;//定時器賦初值,每0.025秒中斷一次
TL0=(65536-23040)%256; EA=1; //開總中斷
ET0=1; //開定時器0中斷
TR0=1; //啟動定時器0}2023/2/632voidwr595(ucharucdat)//寫595函數(shù){ uchari; clk=1; st=1; for(i=8;i>0;i--) //循環(huán)八次,寫一個字節(jié)
{ io=ucdat&0x01; //發(fā)送BIT0位
clk=0; clk=1; //時鐘上升沿
ucdat=ucdat>>1; //要發(fā)送的數(shù)據(jù)右移,準(zhǔn)備發(fā)送下一位
} st=0; st=1; //鎖存數(shù)據(jù)}2023/2/633voidwrleds(void){ ucharch1,ch2; ch1=0xfe;ch2=0xfd;//位選信號初始化
wr595(uc7leds[miao1]);//傳送顯示數(shù)據(jù)
P0=ch1; //送位選信號
delay(500); //延時,(決定亮度,和閃爍)
wr595(uc7leds[miao2]);//傳送顯示數(shù)據(jù)
P0=ch2; //送位選信號
delay(500); //延時,(決定亮度,和閃爍)}
voiddelay(uintdat){ while(dat--);}
2023/2/6347.1.2LED點陣顯示屏
LED顯示屏是一種由半導(dǎo)體發(fā)光二極管構(gòu)成的顯示點陣.通過控制每個LED的亮滅實現(xiàn)圖形或字符的顯示。由于LED顯示屏亮度高、視角廣、工作電壓低、功耗小、壽命長、耐沖擊、性能穩(wěn)定,因而被廣泛應(yīng)用于機場、商場、醫(yī)院、賓館等公共場所。根據(jù)連接情況,可分為共陽極、共陰極。2023/2/6352023/2/636顯示原理
如果采用動態(tài)掃描方式,掃描電路就可以實現(xiàn)多行發(fā)光二極管共用一套驅(qū)動器。動態(tài)掃描,簡單說就是逐行輪流點亮。(類似于多位LED,可以把LED點陣顯示屏看成是多位LED的特殊形式)。具體以8×8點陣模塊為例顯示字符“B”的過程2023/2/637即先送出對應(yīng)于第一行發(fā)光二極管亮滅的列數(shù)據(jù)0FFH并鎖存,然后選通第一行,即送行數(shù)據(jù)80H,延時一段時間后,送行數(shù)據(jù)00H,第一幀顯示結(jié)束;再送第二行的列數(shù)據(jù)87H并鎖存,然后選通第二行,即送行數(shù)據(jù)40H,點亮相同時間后,送行數(shù)據(jù)00H,相應(yīng)二極管熄滅,第二幀顯示結(jié)束;以此類推,第8行顯示之后,又重新點亮第一行,周而復(fù)始。當(dāng)這樣輪回的速度足夠快(每秒24次以上)時,就能看到顯示屏上穩(wěn)定的字符B了。2023/2/6382023/2/639實驗1在LED點陣上顯示52023/2/640#include<reg51.h>#include<intrins.h>#defineucharunsignedchar#defineuintunsignedint#defineSLED_BITP0//LED位選信號輸入管腳
sbitclk=P2^7; //595時鐘信號輸入管腳
sbitst=P2^6; //595鎖存信號輸入管腳
sbitio=P2^5; //595數(shù)據(jù)信號輸入管腳ucharcodeuc7leds[]={0x00,0x00,0x72,0x51,0x51,0x51,0x4E,0x00};//5的字模碼(共陰極)2023/2/641//功能:向595發(fā)送一個字節(jié)的數(shù)據(jù)(先發(fā)低位)voidwr595(ucharucdat){ uchari; clk=1; st=1; for(i=8;i>0;i--) //循環(huán)八次,寫一個字節(jié)
{ io=ucdat&0x01; //發(fā)送BIT0位
clk=0; clk=1; //時鐘上升沿
ucdat=ucdat>>1;/ /要發(fā)送的數(shù)據(jù)右移,準(zhǔn)備發(fā)送下一位
} st=0; st=1; //鎖存數(shù)據(jù)}2023/2/642延遲程序delay(uintdat){ while(dat--) {; }}2023/2/643//顯示display_7leds[]中的數(shù)據(jù)voidwr7leds(void){ uchari,ch; ch=0x01; //位選信號初始化
for(i=0;i<8;i++) //循環(huán)8次寫8個數(shù)據(jù)
{ wr595(uc7leds[i]);//顯示數(shù)據(jù)
SLED_BIT=~ch; //送位選信號
ch<<=1;//位選信號右移,準(zhǔn)備在下一個數(shù)碼管顯示下一個數(shù)字 delay(300); //延時
}}2023/2/644Voidmain(){ while(1) { wr7leds(); }}2023/2/645voidwr595(ucharucdat){ uchari; clk=1; st=1; for(i=8;i>0;i--) //循環(huán)八次,寫一個字節(jié)
{ io=ucdat&0x01; //發(fā)送BIT0位
clk=0; clk=1; //時鐘上升沿
ucdat=ucdat>>1; //要發(fā)送的數(shù)據(jù)右移,準(zhǔn)備發(fā)送下一位
} st=0; st=1; //鎖存數(shù)據(jù)}2023/2/646實驗2以1s間隔循環(huán)顯示0-9#include<reg52.h>#include<intrins.h>#defineucharunsignedchar//#############管腳定義#######################sbitclk=P2^7; //595時鐘信號輸入管腳sbitst=P2^6; //595鎖存信號輸入管腳sbitio=P2^5; //595數(shù)據(jù)信號輸入管腳2023/2/647
//要顯示的數(shù)據(jù)代碼
ucharcodeled_88seg[80]={0x00,0x00,0x3E,0x41,0x41,0x41,0x3E,0x00,//0 0x00,0x00,0x01,0x21,0x7F,0x01,0x01,0x00,//10x00,0x00,0x27,0x45,0x45,0x45,0x39,0x00,//20x00,0x00,0x22,0x49,0x49,0x49,0x36,0x00,//30x00,0x00,0x0C,0x14,0x24,0x7F,0x04,0x00,//40x00,0x00,0x72,0x51,0x51,0x51,0x4E,0x00,//50x00,0x00,0x3E,0x49,0x49,0x49,0x26,0x00,//60x00,0x00,0x40,0x40,0x40,0x4F,0x70,0x00,//70x00,0x00,0x36,0x49,0x49,0x49,0x36,0x00,//80x00,0x00,0x32,0x49,0x49,0x49,0x3E,0x00};//92023/2/648uchari=0; uchart=0; //點陣顯示函數(shù)時間//延時函數(shù)voiddelay(uchari){ucharj;for(;i>0;i--)for(j=0;j<125;j++){;}}2023/2/649//名稱:wr595()向595發(fā)送一個字節(jié)的數(shù)據(jù)voidwr595(ucharucdat){ uchari; clk=1; st=1; for(i=8;i>0;i--) //循環(huán)八次,寫一個字節(jié)
{ io=ucdat&0x01; //發(fā)送BIT0位
clk=0; clk=1; //時鐘上升沿
ucdat=ucdat>>1; //要發(fā)送的數(shù)據(jù)右移,準(zhǔn)備發(fā)送下一位
} st=0; st=1; //鎖存數(shù)據(jù)}2023/2/650voidtime0_init()//T0初始化函數(shù){TMOD=0X01; //定時器0方式1TH0=(65536-23040)/256; //定時器賦初值,每0.025秒中斷一次
TL0=(65536-23040)%256; EA=1; //開總中斷
ET0=1; //開定時器0中斷
TR0=1; //啟動定時器0}2023/2/651voidmain(void){ucharj;ucharwx; //位選信號控制
time0_init();while(1){wx=0x01;for(j=i;j<i+8;j++){wr595(led_88seg[j]);P0=~wx;delay(2);wx<<=1;}}2023/2/652//定時器中斷0服務(wù)子函數(shù)
voidtimer0()interrupt1{TH0=(65536-23040)/256;TL0=(65536-23040)%256; //定時器賦初值,每0.025秒中斷一次
t++;if(t==40){t=0;i+=8; //顯示下一列的段碼值
if(i==80)i=0;}}2023/2/653漢字字模的生成
由于要顯示內(nèi)容的不確定性,漢字字模的生成僅靠用戶自己構(gòu)建是不可能的。如果依靠單片機完成字模的創(chuàng)建和顯示控制,則由于單片機運算能力有限,是無法實現(xiàn)漢字的選定和實時顯示。為此利用PC機和相關(guān)軟件,預(yù)先生成所要顯示漢字的字模。通??梢岳肬CDOS的漢字庫構(gòu)造需要顯示的字模。2023/2/654
在UCDOS漢字庫中漢字均以行字模的形式存儲,只要確定了漢字在字庫中的位置和字模的長度,就可以將需要漢字的行字模讀出。漢字在字庫中的位置可以通過漢字的機內(nèi)碼根據(jù)如下公式加以確定:Offset=(94×m_H+m_L)×32式中:m_H代表以16進制表示的漢字機內(nèi)碼的高8位,m_L代表機內(nèi)碼的低8位。字模的長度則是由顯示所用的點陣決定的,以常用的16×16點陣字模為例一個漢字字模需要16×16÷8=32B。因此從字模的開始依次讀取32個。2023/2/655采用PCtoLCD2002字模軟件,可以方便地生成字模數(shù)據(jù),如圖3所示。將生成的字模數(shù)據(jù)復(fù)制到系統(tǒng)源.2023/2/6562023/2/657液晶顯示器是單片機應(yīng)用系統(tǒng)中一種常用的人機接口形式。液晶顯示器(LCD),的主要原理是以電流刺激液晶分子產(chǎn)生點、線、面并配合背部燈管構(gòu)成畫面。各種型號的液晶通常是按顯示字符的行數(shù)或液晶點陣的行、列數(shù)來命名。如1602:每行16個字符,可以顯示2行。類似的命名有0802、1601
7.1.3
LCD16022023/2/658如12232液晶屬于圖形液晶,該液晶由122X32個點來顯示各種圖形??梢酝ㄟ^程序控制每個點顯示或不顯示。類似的命名有:12864,根據(jù)客戶需要,廠家可以設(shè)計出任意數(shù)組合的點陣顯示。液晶顯示器具有體積小、重量輕、功耗低、顯示操作簡單等特點。2023/2/659弱點:溫度范圍窄。通用型液晶正常工作溫度為0℃~+55℃,存儲溫度范圍:-20℃~+60℃寬溫級液晶,正常工作溫度為-20℃~+70℃,存儲溫度范圍:-30℃~+80℃2023/2/660
液晶顯示器可分為三類:字段式、字符點陣式和點陣圖形式液晶顯示器。
字符點陣式:LCD1602(單片機應(yīng)用系統(tǒng)中廣泛使用)2023/2/661LCD1602模塊的外形與引腳
共16根引腳,引腳01:VSS,接地引腳引腳02:VDD,接+5V電源引腳03:VL,對比度調(diào)整端引腳04:RS,數(shù)據(jù)/命令寄存器選擇端,1:數(shù)據(jù);0:命令引腳05:RW,讀/寫選擇端,1:讀;0:寫引腳06:E,使能端,高電平跳變成低電平時,液晶模塊執(zhí)行命令引腳07~14:D0~D7,8位雙向數(shù)據(jù)總線引腳15:BLA,背光正極引腳16:BLK,背光負極2023/2/662結(jié)構(gòu)框圖LCD1602模塊的組成
HD44780是典型的液晶顯示控制器,集控制與驅(qū)動于一體,本身可以驅(qū)動單行16字符或2行8字符,對于2行16字符的顯示要增加HD44100驅(qū)動器2023/2/663HD44780
由字符發(fā)生器CGROM、自定義字符發(fā)生器CGRAM和顯示緩沖區(qū)DDRAM組成。CGROM存儲了不同的點陣字符圖形(包括數(shù)字,英文字母的大小寫,常用的符號等),每一個字符都有一個固定的代碼(數(shù)字,英文字母的大小寫為其ASCII碼)。2023/2/664DDRAM有80個單元,但第1行僅用00H~0FH單元,第2行僅用40H~4FH單元。DDRAM單元存放的是要顯示字符的編碼(ASCII碼),控制器HD44780以該編碼為索引,到CGROM(或CGRAM)中取點陣字形送液晶板顯示。2023/2/665LCD1602模塊的命令
序號指令RSR/WD7D6D5D4D3D2D1D01清屏00000000012光標(biāo)歸位000000001*3輸入模式設(shè)置00000001I/DS4顯示與不顯示設(shè)置0000001DCB5光標(biāo)或屏幕內(nèi)容移位選擇000001S/CR/L**6功能設(shè)置00001DLNF**7CGRAM地址設(shè)置0001CGRAM地址8DDRAM地址設(shè)置001DDRAM地址9讀忙標(biāo)志和計數(shù)器地址設(shè)置01BF計數(shù)器地址10寫DDRAM或CGROM10要寫的數(shù)據(jù)11讀DDRAM或CGROM11讀出的數(shù)據(jù)2023/2/666命令說明命令1:清屏(DDRAM全寫空格)。光標(biāo)回到屏幕左上角,地址計數(shù)器設(shè)置為0命令2:光標(biāo)回到屏幕左上角.命令3:輸入模式設(shè)置,設(shè)置每寫入一個數(shù)據(jù)字節(jié)后,光標(biāo)的移動方向及字符是否移動。I/D=1,S=0,光標(biāo)右移一格且計數(shù)器加1(常用)2023/2/667命令4:顯示與不顯示設(shè)置。D=1,開顯示;D=0,關(guān)顯示。C=1,有光標(biāo);C=0,無光標(biāo)。B=1,光標(biāo)閃爍,B=0光標(biāo)不閃爍。命令5:光標(biāo)或屏幕內(nèi)容移位選擇。S/C=1,移動屏幕內(nèi)容,S/C=0,移動光標(biāo)。R/L=1,右移,R/L=0,左移。命令6:功能設(shè)置。DL=0:4位數(shù)據(jù)接口,DL=1:8位數(shù)據(jù)接口。N=0,單行顯示,N=1,雙行顯示。F=0:5x7點陣,F(xiàn)=1:5X10點陣2023/2/668命令7:CGRAM地址設(shè)置命令8:DDRAM地址設(shè)置命令9:讀忙標(biāo)志和計數(shù)器地址,BF=1,忙,此時模塊不能接收命令或數(shù)據(jù)。BF=0,不忙(理論上,在向模塊寫命令或數(shù)據(jù)時,先要檢測為不忙狀態(tài)。實際中,可通過適當(dāng)延遲,而不需檢測)命令10:寫DDRAM或CGROM.要配合地址設(shè)置命令。命令11:讀DDRAM或CGROM.要配合地址設(shè)置命令。2023/2/669LCD1602的初始化LCD1602在使用前先進初始化:1、清屏2、功能設(shè)置3、顯示與不顯示設(shè)置4、輸入模式設(shè)置2023/2/670接口電路LCD1602模塊的接口示例
2023/2/671實驗1LCD1602顯示#include<reg52.h>#defineucharunsignedchar#defineuintunsignedintsbitrs=P2^7;sbitlcden=P2^5;sbitlcdrw=P2^6;uchartable1[]="Iamastudent";uchartable2[]="Ilikestudying";2023/2/672//延遲程序voiddelay(uintx){ uinta,b; for(a=x;a>0;a--) for(b=10;b>0;b--);}2023/2/673//寫命令至LCD1602voidwrite_com(ucharcom){ P0=com; rs=0; lcden=0; delay(10); lcden=1; delay(10); lcden=0;2023/2/674//寫數(shù)據(jù)至DDRAMvoidwrite_date(uchardate){ P0=date; rs=1; lcden=0; delay(10); lcden=1; delay(10); lcden=0;}2023/2/675//LCD1602初始化voidinit(){lcdrw=0; write_com(0x01);delay(20);write_com(0x38); delay(20); write_com(0x0e); delay(20); write_com(0x06); delay(20);}2023/2/676voidmain(){ uchara; init(); write_com(0x80); delay(20); for(a=0;a<14;a++) { write_date(table1[a]); delay(2000);//控制
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 貴州省事業(yè)單位聘用合同制試行辦法
- 合肥 采購合同范本
- 大班數(shù)學(xué)課件《門牌號碼》
- 2024聘用兼職老師合同書范文
- 山東省東營市利津縣2024-2025學(xué)年八年級上學(xué)期11月期中化學(xué)試題
- m材料力學(xué)第11章 能量法
- 2024劇本版權(quán)制作及發(fā)行權(quán)購買合同參考范本
- 2024合同違約起訴狀范本
- 專題01 標(biāo)題的作用及含義-2022-2023學(xué)年小升初語文記敘文知識點銜接(部編版)
- 幼兒園防詐安全教育
- TSGD-壓力管道安全技術(shù)監(jiān)察規(guī)程-工業(yè)管道(高清晰版)
- 船舶安全培訓(xùn)課件
- 2024年上海社區(qū)工作者考試題及完整答案1套
- 醫(yī)院科室評優(yōu)評先方案
- 川芎茶調(diào)顆粒的安全性評價研究
- 手術(shù)室銳器刺傷
- 中國食物成分表2018年(標(biāo)準(zhǔn)版)第6版
- 科普類公園設(shè)計方案
- 小學(xué)英語就業(yè)能力展示
- “安全風(fēng)險分級管控”工作制度(2篇)
- 心肌病和心肌炎課件
評論
0/150
提交評論