首页 ht1621段码LCD显示驱动

ht1621段码LCD显示驱动

举报
开通vip

ht1621段码LCD显示驱动ht1621段码LCD显示驱动 /************************************************************ Copyright: 2010,ShangHai BST Co.,Ltd. File name: Display.C Description: HT1621段码显示驱动 Author: QG2 Version: V0.8 Data: Dec-24-2010 **********************************************...

ht1621段码LCD显示驱动
ht1621段码LCD显示驱动 /************************************************************ Copyright: 2010,ShangHai BST Co.,Ltd. File name: Display.C Description: HT1621段码显示驱动 Author: QG2 Version: V0.8 Data: Dec-24-2010 ************************************************************/ #include #include #include #include "Display.h" //用于HT1621B设置指令的宏定义 #define SYSDIS 0x00 #define SYSEN 0x01 #define LCDOFF 0x02 #define LCDON 0x03 #define SETCLK 0x18 #define SETBIAS 0x20 #define NORMAL 0xe3 //用于HT1621B硬件连接的宏定义 #define CS1 PORTD |= 1<>=1; WR1; } } //发送一个字节的命令 void SendCmd(unsigned char command) { DA1;WR1;CS1; CS0;WR0;WR1; WR0;DA0;WR1; WR0;WR1; SendByte(command); WR0;WR1; WR1;CS1;DA1; } //发送显示数据 void SendDispData(void) { unsigned char i; DA1;WR1;CS1; CS0;WR0;WR1; DA0;WR0;WR1; DA1;WR0;WR1; DA0; for(i=0;i<6;i++) { WR0; WR1; } for(i=0;i<16;i++) SendByte(disp_buf[i]); CS1; } //初始化HT1621B显示 void InitLCD(void) { SendCmd(SYSEN); SendCmd(LCDON); SendCmd(SETCLK); SendCmd(SETBIAS); SendCmd(NORMAL); } /*---------------------LCD显示函数部分--------------------*/ //十六段码字形 关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf //A1 A2 B C D2 D1 E F,G1 G2 J K L M N P const prog_uchar seg16[43][2]={ {0B11111111,0B00000000}, //0 {0B00000000,0B00010010}, //1 {0B11101110,0B11000000}, //2 {0B11111100,0B11000000}, //3 {0B00110001,0B11000000}, //4 {0B11011101,0B11000000}, //5 {0B11011111,0B11000000}, //6 {0B11110000,0B00000000}, //7 {0B11111111,0B11000000}, //8 {0B11111101,0B11000000}, //9 {0B00000000,0B00000000}, // {0B00000000,0B00000000}, // {0B00000000,0B00000000}, // {0B00000000,0B11000000}, //- {0B11111111,0B11111111}, //* {0B00000000,0B00000000}, // {0B00000000,0B00000000}, // {0B11110011,0B11000000}, //A {0B11111100,0B01010010}, //B {0B11001111,0B00000000}, //C {0B11111100,0B00010010}, //D {0B11001111,0B10000000}, //E {0B11000011,0B10000000}, //F {0B11011111,0B01000000}, //G {0B00110011,0B11000000}, //H {0B11001100,0B00010010}, //I {0B11000100,0B00010010}, //J {0B00000011,0B10001100}, //K {0B00001111,0B00000000}, //L {0B00110011,0B00101000}, //M {0B00110011,0B00100100}, //N {0B11111111,0B00000000}, //O {0B11100011,0B11000000}, //P {0B11111111,0B00000100}, //Q {0B11100011,0B11000100}, //R {0B11011101,0B11000000}, //S {0B11000000,0B00010010}, //T {0B00111111,0B00000000}, //U {0B00000011,0B00001001}, //V {0B00110011,0B00000101}, //W {0B00000000,0B00101101}, //X {0B00000000,0B00101010}, //Y {0B11001100,0B00001001}, //Z }; //清显示缓冲区 void ClrBuf(void) { disp_buf[0] = 0; disp_buf[1] = 0; disp_buf[2] = 0; disp_buf[3] = 0; disp_buf[4] = 0; disp_buf[5] = 0; disp_buf[6] = 0; disp_buf[7] = 0; disp_buf[8] = 0; disp_buf[9] = 0; disp_buf[10]= 0; disp_buf[11]= 0; } //显示功能显示 //bit0:out of service //bit1:overload //bit2:full load void DispF(unsigned char ff,unsigned char language) { if(language&0x04)//中文繁体 { if(ff&0x04) disp_buf[1] |= 0x08; else disp_buf[1] &=~0x08; if(ff&0x02) disp_buf[1] |= 0x04; else disp_buf[1] &=~0x04; if(ff&0x01) disp_buf[3] |= 0x04; else disp_buf[3] &=~0x04; } if(language&0x02)//中文简体 { if(ff&0x04) disp_buf[2] |= 0x40; else disp_buf[2] &=~0x40; if(ff&0x02) disp_buf[2] |= 0x04; else disp_buf[2] &=~0x04; if(ff&0x01) disp_buf[3] |= 0x08; else disp_buf[3] &=~0x08; } if(language&0x01)//English { if(ff&0x04) disp_buf[2] |= 0x80; else disp_buf[2] &=~0x80; if(ff&0x02) disp_buf[2] |= 0x08; else disp_buf[2] &=~0x08; if(ff&0x01) disp_buf[3] |= 0x80; else disp_buf[3] &=~0x80; } } //显示方向箭头 //arrow:1=dn,2=up,3=up&dn void DispArrow(unsigned char arrow) { if((arrow&0x03)!= 0x03){ if(arrow&0x01) disp_buf[8] |= 0x40; else disp_buf[8] &=~0x40; if(arrow&0x02) disp_buf[8] |= 0x80; else disp_buf[8] &=~0x80; } if(arrow&0x03) disp_buf[8] |= 0x08; else disp_buf[8] &=~0x08; } //楼层高位字段编码 void EncodeH(unsigned char hh) { if((hh>='0')&&(hh<='Z'))hh-='0'; else hh=16; unsigned char segcode1,segcode2; const prog_uchar *p_zk = seg16[hh]; segcode1 = pgm_read_byte(p_zk++); segcode2 = pgm_read_byte(p_zk++); if(segcode1&0x80) disp_buf[10]|= 0x40; //A1 if(segcode1&0x40) disp_buf[10]|= 0x80; //A2 if(segcode1&0x20) disp_buf[9] |= 0x04; //B if(segcode1&0x10) disp_buf[9] |= 0x40; //C if(segcode1&0x08) disp_buf[1] |= 0x80; //D2 if(segcode1&0x04) disp_buf[0] |= 0x80; //D1 if(segcode1&0x02) disp_buf[11]|= 0x40; //E if(segcode1&0x01) disp_buf[10]|= 0x04; //F if(segcode2&0x80) disp_buf[11]|= 0x80; //G1 if(segcode2&0x40) disp_buf[9] |= 0x80; //G2 if(segcode2&0x20) disp_buf[10]|= 0x08; //J if(segcode2&0x10) disp_buf[0] |= 0x04; //K if(segcode2&0x08) disp_buf[9] |= 0x08; //L if(segcode2&0x04) disp_buf[1] |= 0x40; //M if(segcode2&0x02) disp_buf[0] |= 0x08; //N if(segcode2&0x01) disp_buf[0] |= 0x40; //P } //楼层低位字段编码 void EncodeL(unsigned char ll) { if((ll>='0')&&(ll<='Z'))ll-='0'; else ll=16; unsigned char segcode1,segcode2; const prog_uchar *p_zk = seg16[ll]; segcode1 = pgm_read_byte(p_zk++); segcode2 = pgm_read_byte(p_zk++); if(segcode1&0x80) disp_buf[6] |= 0x04; if(segcode1&0x40) disp_buf[6] |= 0x08; if(segcode1&0x20) disp_buf[6] |= 0x40; if(segcode1&0x10) disp_buf[5] |= 0x04; if(segcode1&0x08) disp_buf[5] |= 0x80; if(segcode1&0x04) disp_buf[4] |= 0x80; if(segcode1&0x02) disp_buf[7] |= 0x04; if(segcode1&0x01) disp_buf[7] |= 0x40; if(segcode2&0x80) disp_buf[7] |= 0x08; if(segcode2&0x40) disp_buf[5] |= 0x08; if(segcode2&0x20) disp_buf[7] |= 0x80; if(segcode2&0x10) disp_buf[4] |= 0x04; if(segcode2&0x08) disp_buf[6] |= 0x80; if(segcode2&0x04) disp_buf[5] |= 0x40; if(segcode2&0x02) disp_buf[4] |= 0x08; if(segcode2&0x01) disp_buf[4] |= 0x40; }
本文档为【ht1621段码LCD显示驱动】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_105949
暂无简介~
格式:doc
大小:28KB
软件:Word
页数:10
分类:互联网
上传时间:2017-10-01
浏览量:18