版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、HT1621B 通用程序集錦HT1621B 通用程序集錦HT1621B 通用程序集錦HT1621B 通用程序集錦編制僅供參考審核批準(zhǔn)生效日期地址: 電話:傳真: 郵編:/*AT89C51單片機(jī)控制HT1621B驅(qū)動LCD* (全顯示程序) */#include #include #define BIAS 0X50 /1/2偏壓,4背極/#define RC256 0X30 /系統(tǒng)時鐘選擇為片內(nèi)RC振蕩器#define RC256 0X38#define WDTDIS1 0X0A /禁止WDT溢出標(biāo)志輸出#define TIMERDIS 0X08 /時基輸出禁能#define SYSEN 0X0
2、2 /打開系統(tǒng)時鐘#define LCDON 0X06 /打開偏壓發(fā)生器#define SYSDIS 0X00 /關(guān)閉系統(tǒng)時鐘和偏壓發(fā)生器#define _NOP() _nop_()sbit LED=P20;sbit CS=P27;sbit WRD=P26;sbit DATA=P25;#define uchar unsigned char#define uint unsigned intvoid SENDBYTE (uchar dat); void SENDBIT (uchar dat,uchar bitcnt); /*延時子函數(shù)*/void delay1s() /延時1Suchar i;ui
3、nt j;for(i=0;i10;i+) for(j=0;j1300;j+);/*HT1621B初始化*/void START_HT1621() /初始化HT1621CS=1;WRD=1;DATA=1;/delay();_NOP();CS=0;CS=0;WRD=0;WRD=0;/*發(fā)送命令子函數(shù)A*/void SENDCOMA(uchar com) /發(fā)送命令A(yù),ID=100+0START_HT1621();SENDBIT(0X80,4);SENDBYTE(com);/*發(fā)送命令子函數(shù)B*/void SENDCOMB(uchar adr) /發(fā)送命令B,發(fā)送顯示數(shù)據(jù)START_HT1621()
4、; /HT1621初始化SENDBIT(0XA0,4); /發(fā)送寫數(shù)據(jù)ID:101+6位LCD之RAM地址第1位SENDBIT(adr,5); /然后發(fā)送地址后5位/*發(fā)送命令子函數(shù)C*void SENDCOMC(uchar com) /發(fā)送命令C,ID=100+1START_HT1621();SENDBIT(0X90,4);SENDBYTE(com);/*按位發(fā)送數(shù)據(jù)子函數(shù)*/void SENDBIT (uchar dat,uchar bitcnt) /按位發(fā)送數(shù)據(jù)uchar i;for(i=0;ibitcnt;i+) if(dat&0 x80)=0X00) /從最高位發(fā)送 DATA=0;
5、else DATA=1; /delay(); _NOP(); WRD=1; /在WRD的上升沿,數(shù)據(jù)寫入HT1621B /delay(); _NOP(); WRD=0; dat=dat1; /*發(fā)送字節(jié)數(shù)據(jù)子函數(shù)*/void SENDBYTE (uchar dat) /發(fā)送字節(jié)數(shù)據(jù)SENDBIT(dat,8);/*LCD顯示子函數(shù)*/void display(uchar dat) /LCD顯示uchar i;SENDCOMB(0X00); /從RAM的0X00地址開始放入數(shù)據(jù)SENDBYTE(dat);SENDBYTE(dat);for (i=0;i2;i+) SENDBYTE(dat); /
6、從SEG0開始顯示數(shù)據(jù) /*HT1621B初始化設(shè)置*/void SETUP_HT1621() /HT1621偏壓、背極、工作方式設(shè)置SENDCOMA(BIAS); SENDCOMA(RC256);SENDCOMA(SYSEN);delay1s();SENDCOMA(LCDON);SENDCOMA(WDTDIS1);SENDCOMA(TIMERDIS); /*主函數(shù)*/main() /主函數(shù) LED=1; SETUP_HT1621(); while(1) display(0XFF); /全顯示 各位大牛下午好,我用STC12C5204單片機(jī)控制1621驅(qū)動液晶程序調(diào)了幾天都沒進(jìn)展,顯示的不知道
7、什么亂七八糟的東西,好像命令根本寫不進(jìn)去,COM0和com1是個1v不到的電平,com3為3點幾V的電平,com4有時有波形刷我自己寫的程序就是這個樣子,SEGMENT一部分有波形,其余就是一個電平打電話咨詢合泰技術(shù),讓我搞他們的范例,于是我修改了下,還是老樣子大家?guī)臀铱纯词鞘裁磫栴},謝謝了下面的就是從合泰網(wǎng)上下的范例,我稍微修改了下,基本是原封不動的/STC12C5204AD單片機(jī)控制HT1621B驅(qū)動LCD#include #include #include #define BIAS 0X52 /1/3偏壓,4背極#define RC256K 0X30 /系統(tǒng)時鐘選擇為片內(nèi)RC振蕩器#de
8、fine WDTDIS1 0X0A /禁止WDT溢出標(biāo)志輸出#define TIMERDIS 0X08 /時基輸出禁止#define SYSEN 0X02 /打開系統(tǒng)時鐘#define SYSDIS 0X00 /關(guān)閉系統(tǒng)時鐘和偏壓發(fā)生器#define LCDON 0X06 /打開LCD偏壓發(fā)生器#define LCDOFF 0X04 /關(guān)閉LCD偏壓發(fā)生器#define TONEON0X12 /打開音頻輸出#define TONEOFF 0X10 /關(guān)閉音頻輸出#define CS P3_2#define WR P3_4#define DATA P3_5#define uchar unsign
9、ed char#define uint unsigned int/*延時子函數(shù)*/void delay(uchar i) /j=12延時約while(i-) uchar j=0; while(j8) j+; void SendBit_1621(uchar dat ,uchar cnt)uchar i;for(i =0; i cnt; i +)if(dat&0 x80)=0) DATA=0;else DATA=1;WR=0;delay(2);WR=1; dat=dat1;void SendDataBit_1621(uchar dat,uchar cnt) uchar i;for(i =0; i
10、1;void SendCmd(uchar command)CS=0;_nop_();_nop_();SendBit_1621(0 x80,4); SendBit_1621(command,8);CS=1; void Write_1621(uchar addr,uchar dat)CS=0;_nop_();_nop_();SendBit_1621(0 xa0,3);SendBit_1621(addr,6); SendDataBit_1621(dat,4);CS=1;void WriteAll_1621(uchar addr,uchar *p,uchar cnt)uchar i;CS=0;_nop
11、_();_nop_();SendBit_1621(0 xa0,3); SendBit_1621(addr,6); for(i =0; i cnt; i +,p+) SendDataBit_1621(*p,8);CS=1;/*主函數(shù)*/main() uchar a10;a0=0 xFF;a1=0 xFF;a2=0 xFF;a3=0 xFF;a4=0 xFF;a5=0 xFF;a6=0 xFF;a7=0 xFF;a8=0 xFF;a9=0 xFF;a10=0 xFF;a11=0 xFF;a12=0 xFF;a13=0 xFF;a14=0 xFF;a15=0 xFF;SendCmd(BIAS); S
12、endCmd(SYSEN); SendCmd(LCDON); / SendCmd(RC256K);WriteAll_1621(0,a,16); / SendCmd(LCDOFF);LCD驅(qū)動程序 適用于HT1621/=#define Lcd_Delay _nop_();_nop_();_nop_();_nop_();_nop_();_nop_()voidLcd_Data(uchar Start,uchar cData)/將數(shù)據(jù)當(dāng)中的字節(jié)與LCD上的進(jìn)行同步/ Start -要開始同頁面地址,每個頁面為4個有效位,總其為32X4字節(jié)/ Length -要同步的頁面數(shù)量 uchar i; LCD_
13、CS=0; Lcd_Delay; Lcd_Delay; Lcd_Delay; /Send ID 101B LCD_CLK=0; Lcd_Delay; LCD_IO=1; Lcd_Delay; LCD_CLK=1; Lcd_Delay; LCD_CLK=0; Lcd_Delay; LCD_IO=0; Lcd_Delay; LCD_CLK=1; Lcd_Delay; LCD_CLK=0; Lcd_Delay; LCD_IO=1; Lcd_Delay; LCD_CLK=1; Lcd_Delay; /Send Address 6bit Start=Start*2; for(i=0;i6;i+) if(
14、Start&0 x20) LCD_IO=1; else LCD_IO=0; Lcd_Delay; LCD_CLK=0; Lcd_Delay; Start=Start1; LCD_CLK=1; Lcd_Delay; /Send data 8bit for(i=0;i1; LCD_CLK=1; Lcd_Delay; LCD_CS=1; Lcd_Delay;/=voidLcd_Command(uchar Command) /向指定的LCD當(dāng)中寫入一個命令/每個命令應(yīng)以100三個位為起始,命令長度為9位,實際有效位為8位,因此在最后補(bǔ)一個0/ LcdSelect-LCD的片選確定,取值為0,1,2/
15、Command-要寫入的8位命令 uchar i; LCD_CS=0; Lcd_Delay; Lcd_Delay; Lcd_Delay; /Send ID 100B LCD_CLK=0; Lcd_Delay; LCD_IO=1; Lcd_Delay; LCD_CLK=1; Lcd_Delay; LCD_CLK=0; Lcd_Delay; LCD_IO=0; Lcd_Delay; LCD_CLK=1; Lcd_Delay; LCD_CLK=0; Lcd_Delay; LCD_IO=0; Lcd_Delay; LCD_CLK=1; Lcd_Delay; for(i=0;i8;i+) LCD_CLK
16、=0; Lcd_Delay; if(Command&0 x80) LCD_IO=1; else LCD_IO=0; Command=Command1; Lcd_Delay; LCD_CLK=1; Lcd_Delay; /最后補(bǔ)一個0 LCD_CLK=0; Lcd_Delay; LCD_IO=0; Lcd_Delay; LCD_CLK=1; Lcd_Delay; LCD_CS=1; Lcd_Delay;/=voidLcd_Refresh(void) /重新對LCD進(jìn)行刷屏 uchar i; for(i=0;iLCD_BUFF_MAX;i+) Lcd_Data(i,i);/=voidLcd_Cls(void) /清空LCD顯示區(qū)/功能: 清空LCD顯示區(qū)/返值: 無/入口: cSelectIc LCD的片選,取值為0,1,2 uchar i; for(i=0;iLCD_BUFF_MAX;i+) i=0; Lcd_Refresh();/=voidLcd_Init(void)/初始化LCD,二個屏都進(jìn)行處理,同時進(jìn)行清屏 LCD_
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 人力資源總監(jiān)面試常見問題及答案
- 黑龍江2025年專升本數(shù)學(xué)真題及答案
- 道路測量課件
- 網(wǎng)站開發(fā)與運維常見面試題助你求職無憂
- 臨床護(hù)理實踐技能比賽
- 交易專家面試題集實戰(zhàn)經(jīng)驗與參考答案
- 銀行信貸審批面試題目及參考答案
- 老年護(hù)理中的心理支持
- 2025國家統(tǒng)計局齊齊哈爾調(diào)查隊招聘公益性崗位5人備考筆試題庫及答案解析
- 道法走進(jìn)老師課件逐字稿
- 招標(biāo)人主體責(zé)任履行指引
- GB/T 46008-2025呼吸機(jī)和相關(guān)設(shè)備術(shù)語和定義
- 2025-2026學(xué)年蘇教版(2024)小學(xué)科學(xué)三年級上冊(全冊)課時練習(xí)及答案(附目錄P102)
- T/CIES 034-2023文旅夜游景區(qū)燈光設(shè)計、照明設(shè)備選型和施工規(guī)范
- 2026年全年日歷表帶農(nóng)歷(A4可編輯可直接打?。╊A(yù)留備注位置
- 二級營銷師考試題庫及答案
- 班組安全基礎(chǔ)管理概述課件
- 旅游服務(wù)與管理專業(yè)人才需求調(diào)研報告五篇修改版
- 《中國特色社會主義進(jìn)入新時代》課件
- 吊籃操作人員實際操作考核記錄表
- 基于光纖傳感器的油氣水三相流持氣率測井儀
評論
0/150
提交評論