www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁 > 單片機(jī) > 單片機(jī)
[導(dǎo)讀]sbitLCD_RS=P3^4;//定義IO口,具體1602的讀控制線sbitLCD_RW=P3^3;//定義IO口,具體1602的寫控制線sbitLCD_EN=P2^0;//定義IO口,具體1602的使能控制線sbitLight=P3^7;//定義IO口,具體1602的背光控制線(0:開通,1關(guān)

sbitLCD_RS=P3^4;//定義IO口,具體1602的讀控制線sbitLCD_RW=P3^3;//定義IO口,具體1602的寫控制線sbitLCD_EN=P2^0;//定義IO口,具體1602的使能控制線sbitLight=P3^7;//定義IO口,具體1602的背光控制線(0:開通,1關(guān)閉)sbitD0=P1^0;//定義IO口,P1.0數(shù)據(jù)口1602LCD的D0口sbitD1=P1^1;//定義IO口,P1.1數(shù)據(jù)口1602LCD的D1口sbitD2=P1^2;//定義IO口,P1.2數(shù)據(jù)口1602LCD的D2口sbitD3=P1^3;//定義IO口,P1.3數(shù)據(jù)口1602LCD的D3口sbitD4=P1^4;//定義IO口,P1.4數(shù)據(jù)口1602LCD的D4口sbitD5=P1^5;//定義IO口,P1.5數(shù)據(jù)口1602LCD的D5口sbitD6=P1^6;//定義IO口,P1.6數(shù)據(jù)口1602LCD的D6口sbitD7=P2^1;//定義IO口,P2.1數(shù)據(jù)口1602LCD的D7口sbitB_0=B^0;//定義變量B的位,方便位操作sbitB_1=B^1;sbitB_2=B^2;sbitB_3=B^3;sbitB_4=B^4;sbitB_5=B^5;sbitB_6=B^6;sbitB_7=B^7;
voidmain(void){P1M0=0x00;P1M1=0x00;//配置P1口為準(zhǔn)雙向口P2M0=0x00;P2M1=0x00;//配置P2口為準(zhǔn)雙向口P3M0=0x00;P3M1=0x80;//配置P3.7口為強(qiáng)推挽輸出(控制背光),其它IO口默認(rèn)為準(zhǔn)雙向口(詳細(xì)配置見STC12C56XXAD數(shù)據(jù)手冊)Light=0;//開1602LCD的背光lcd_init();//LCD初始化lcd_write_char(0,0,'A');//在坐標(biāo)(0,0)處寫入Alcd_write_char(1,0,'B');//在坐標(biāo)(1,0)處寫入Blcd_write_char(2,0,'C');//在坐標(biāo)(2,0)處寫入Clcd_write_char(3,0,'D');//在坐標(biāo)(3,0)處寫入Dlcd_write_char(4,0,'E');//在坐標(biāo)(4,0)處寫入Elcd_write_char(5,0,'F');//在坐標(biāo)(5,0)處寫入Flcd_write_char(6,0,'G');//在坐標(biāo)(6,0)處寫入Glcd_write_char(7,0,'H');//在坐標(biāo)(7,0)處寫入Hlcd_write_char(8,0,'I');//在坐標(biāo)(8,0)處寫入Ilcd_write_char(9,0,'J');//在坐標(biāo)(9,0)處寫入Jlcd_write_char(10,0,'K');//在坐標(biāo)(10,0)處寫入Klcd_write_char(11,0,'L');//在坐標(biāo)(11,0)處寫入Llcd_write_char(12,0,'M');//在坐標(biāo)(12,0)處寫入Mlcd_write_char(13,0,'N');//在坐標(biāo)(13,0)處寫入Nlcd_write_char(14,0,'O');//在坐標(biāo)(14,0)處寫入Olcd_write_char(15,0,'P');//在坐標(biāo)(15,0)處寫入Plcd_write_char(0,1,'Q');//在坐標(biāo)(0,1)處寫入Qlcd_write_char(1,1,'R');//在坐標(biāo)(1,1)處寫入Rlcd_write_char(2,1,'S');//在坐標(biāo)(2,1)處寫入Slcd_write_char(3,1,'T');//在坐標(biāo)(3,1)處寫入Tlcd_write_char(4,1,'U');//在坐標(biāo)(4,1)處寫入U(xiǎn)lcd_write_char(5,1,'V');//在坐標(biāo)(5,1)處寫入Vlcd_write_char(6,1,'W');//在坐標(biāo)(6,1)處寫入Wlcd_write_char(7,1,'X');//在坐標(biāo)(7,1)處寫入Xlcd_write_char(8,1,'Y');//在坐標(biāo)(8,1)處寫入Ylcd_write_char(9,1,'Z');//在坐標(biāo)(9,1)處寫入Zwhile(1)//進(jìn)入程序主循環(huán){}}voiddelay1(intms)//延時(shí)子函數(shù),用于模擬時(shí)序中高低電平的保持時(shí)間,非精確的定時(shí){unsignedchary;while(ms--){for(y=0;y<100;y++){_nop_();_nop_();_nop_();_nop_();}}}//================================*///1602檢測判忙函數(shù)*///================================*/bitlcd_busy()//讀寫判斷數(shù)據(jù)的D7讀寫位,用于判斷1602是否忙{bitresult;D7=1;//數(shù)據(jù)口D7置1,為讀狀態(tài)做準(zhǔn)備LCD_RS=0;//選擇指令寄存LCD_RW=1;//選擇讀控制線LCD_EN=1;//開使能控制線delayNOP();//時(shí)序延時(shí)result=D7;//讀D7的電平LCD_EN=0;//關(guān)使能return(result);//返回值1:忙,0可以執(zhí)行操作}//===============================*///1602寫命令函數(shù)*///===============================*/voidlcd_wcmd(ucharcmd){while(lcd_busy());//判斷等待LCD_RS=0;//選擇指令寄存LCD_RW=0;//選擇寫LCD_EN=0;//開使能控制線_nop_();//時(shí)序延時(shí)_nop_();//時(shí)序延時(shí)B=cmd;//把命令字送入BD0=B_0;//把cmd的0位寫入D0D1=B_1;//把cmd的1位寫入D1D2=B_2;//把cmd的2位寫入D2D3=B_3;//把cmd的3位寫入D3D4=B_4;//把cmd的4位寫入D4D5=B_5;//把cmd的5位寫入D5D6=B_6;//把cmd的6位寫入D6D7=B_7;//把cmd的7位寫入D7delayNOP();//時(shí)序延時(shí)LCD_EN=1;//使能控制線delayNOP();//時(shí)序延時(shí)LCD_EN=0;//關(guān)閉使能控制線}//===========================*///1602寫數(shù)據(jù)函數(shù)*///===========================*/voidlcd_wdat(uchardat){while(lcd_busy());//判斷等待LCD_RS=1;//選擇數(shù)據(jù)寄存器LCD_RW=0;//選擇寫LCD_EN=0;//使能控制線B=dat;//把databuf送入BD0=B_0;//把dat的0位寫入D0D1=B_1;//把dat的1位寫入D1D2=B_2;//把dat的2位寫入D2D3=B_3;//把dat的3位寫入D3D4=B_4;//把dat的4位寫入D4D5=B_5;//把dat的5位寫入D5D6=B_6;//把dat的6位寫入D6D7=B_7;//把dat的7位寫入D7delayNOP();//時(shí)序延時(shí)LCD_EN=1;//開使能控制線delayNOP();//時(shí)序延時(shí)LCD_EN=0;//關(guān)使能控制線}//=========================*///1602LCD初始化*///=========================*/voidlcd_init(){delay1(15);//時(shí)序延時(shí)lcd_wcmd(0x38);//16*2顯示,5*7點(diǎn)陣,8位數(shù)據(jù)delay1(5);//時(shí)序延時(shí)lcd_wcmd(0x38);delay1(5);//時(shí)序延時(shí)lcd_wcmd(0x38);delay1(5);//時(shí)序延時(shí)lcd_wcmd(0x0c);//顯示開,關(guān)光標(biāo)delay1(5);lcd_wcmd(0x06);//移動(dòng)光標(biāo)delay1(5);lcd_wcmd(0x01);//清除LCD的顯示內(nèi)容delay1(5);}//====================*///設(shè)置顯示地址*///===================*/voidlcd_write_address(unsignedcharx,unsignedchary){x&=0x0f;//列地址限制在0-15y&=0x01;//行地址限制在0-1if(y==0x00)lcd_wcmd(x|0x80);else//需要自行查看1602寫地址的指令格式lcd_wcmd((x+0x40)|0x80);//第二行的列地址寫入}//========================*///指定地址寫入函數(shù)*///=====================*/voidlcd_write_char(unsignedcharx,unsignedchary,unsignedcharbuf){lcd_write_address(x,y);//寫入地址lcd_wdat(buf);//寫入顯示數(shù)據(jù)}

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

采用51單片機(jī)最小開發(fā)板,由8位自制獨(dú)立按鍵控制。單片機(jī)芯片為STC89C52RC,晶振為@12.000 mhz。8X8LED點(diǎn)陣屏模塊由MAX7219驅(qū)動(dòng),MAX7219包含一個(gè)自動(dòng)掃描電路。你只需要把要顯示的數(shù)據(jù)發(fā)送...

關(guān)鍵字: 51單片機(jī) MAX7219 寄存器

在嵌入式系統(tǒng)開發(fā)的廣闊領(lǐng)域,51單片機(jī)和STM32無疑是兩種極具代表性的微控制器。對于初學(xué)者而言,選擇學(xué)習(xí)路徑時(shí)往往會(huì)面臨一個(gè)抉擇:是直接跨越51單片機(jī),挑戰(zhàn)更高層次的STM32,還是從51開始,逐步進(jìn)階?本文旨在探討直...

關(guān)鍵字: 51單片機(jī) STM32

在嵌入式系統(tǒng)開發(fā)中,特別是在使用8051系列單片機(jī)(簡稱C51)進(jìn)行編程時(shí),數(shù)據(jù)類型的選擇與定義對程序的性能和可讀性至關(guān)重要。C51語言在標(biāo)準(zhǔn)C語言的基礎(chǔ)上進(jìn)行了擴(kuò)展,以適應(yīng)單片機(jī)特有的硬件結(jié)構(gòu)和操作需求。本文將深入探討...

關(guān)鍵字: C51數(shù)據(jù) 51單片機(jī)

在嵌入式系統(tǒng)領(lǐng)域,51單片機(jī)作為一種經(jīng)典的微控制器,廣泛應(yīng)用于各種自動(dòng)化控制系統(tǒng)中。其外部引腳作為單片機(jī)與外界交互的接口,承載著數(shù)據(jù)傳輸、控制信號(hào)輸出等重要功能。本文將通過對51單片機(jī)外部引腳的案例分析,結(jié)合實(shí)際代碼,深...

關(guān)鍵字: 51單片機(jī) 單片機(jī)

在電子技術(shù)的浩瀚星空中,LED(發(fā)光二極管)以其獨(dú)特的魅力成為了一顆璀璨的明星。而結(jié)合51單片機(jī)這一經(jīng)典的嵌入式開發(fā)平臺(tái),LED的應(yīng)用更是被賦予了無限可能,其中,花樣流水燈便是一個(gè)生動(dòng)而富有創(chuàng)意的實(shí)例。本文將帶您深入探索...

關(guān)鍵字: 51單片機(jī) LED

在現(xiàn)代嵌入式系統(tǒng)設(shè)計(jì)中,51單片機(jī)作為一種經(jīng)典的微控制器,憑借其豐富的功能和廣泛的應(yīng)用領(lǐng)域,仍然受到工程師們的青睞。定時(shí)器中斷是51單片機(jī)中一個(gè)非常實(shí)用的功能,它可以在特定的時(shí)間間隔內(nèi)自動(dòng)觸發(fā)中斷,執(zhí)行預(yù)設(shè)的操作,從而提...

關(guān)鍵字: 51單片機(jī) 定時(shí)器

STM32與51單片機(jī)之間有什么差異呢?兩者可以說是一場科技與性能的較量了。在科技飛速發(fā)展的今天,微控制器(MCU)已廣泛應(yīng)用于各類電子設(shè)備和系統(tǒng)中,發(fā)揮著舉足輕重的作用。其中,STM32和51單片機(jī)作為兩種常見的微控制...

關(guān)鍵字: STM32 51單片機(jī) MCU

51單片機(jī)將是下述內(nèi)容的主要介紹對象,通過這篇文章,小編希望大家可以對51單片機(jī)的相關(guān)情況以及信息有所認(rèn)識(shí)和了解,詳細(xì)內(nèi)容如下。

關(guān)鍵字: 單片機(jī) 51單片機(jī)

在嵌入式系統(tǒng)開發(fā)中,單片機(jī)是不可或缺的重要組成部分。其中,STM32單片機(jī)和51單片機(jī)是兩種常見的單片機(jī)芯片。本文將對比分析這兩種單片機(jī)的區(qū)別,并探討STM32單片機(jī)的優(yōu)勢。

關(guān)鍵字: stm32單片 51單片機(jī)

51單片機(jī)是指由美國INTEL公司生產(chǎn)的一系列單片機(jī)的總稱,這一系列單片機(jī)包括了許多品種,如8031,8051,8751,8032,8052,8752等,其中8051是最早最典型的產(chǎn)品,該系列其它單片機(jī)都是在8051的基...

關(guān)鍵字: 51單片機(jī) 串行通信
關(guān)閉