锐单电子商城 , 一站式电子元器件采购平台!
  • 电话:400-990-0325

带字符型12864单片机显示程序

时间:2024-04-17 01:07:10

//带字符型12864单片机显示程序 #include #include void lcd_init(void); void clr_lcd(void); void send_com(unsigned char cmd); void send_data(unsigned char dat); void chek_busy(void); void set_xy(unsigned char xpos,unsigned char ypos); void print(unsigned char x,unsigned char y,char* str); void printstr(unsigned char xpos,unsigned char ypos,unsigned char str[],unsigned char k); unsigned char code buf[4] ={0xbb,0xb6,0xd3,0xad};//欢迎 #define DATA P2 #define CO ROL P1 #define E 2 //并行的使能信号 sbit E = P0^7 #define RW 1 //并行的读写信号 sbit RW = P0^6 #define RS 0 //并行的指令数据选择信号 sbit RS = P0^5 #define PSB 3 //并/串行 选择 sbit PSB = P0^4 12864 分为字符型和点阵型,字符型即内带中文字库的有PSB串并选择引脚。 #define R 5 //复位低电平有效 sbit RST = P0^3 #define SETB(x,y) (x|=(1< 基本指令集 send_com(0x0c); 0000,1100 整体显示,游标off,游标位置off send_com(0x01); 0000,0001 清d DRAM send_com(0x02);//0000,0010 AM地址归位 send_com(0x80);//1000,0000 设定DDRAM 7位地址000,0000到地址 AC } // 设置显示位置 xpos(1~16),tpos(1~4) void set_xy(unsigned char xpos,unsigned char ypos) { switch(ypos) { case 1: send_com(0X80|xpos);break; case 2: send_com(0X90|xpos);break; case 3: send_com(0X88|xpos);break; case 4: send_com(0X98|xpos);break; default:break; } } // 在指定位置显示字符串 void print(unsigned char x,unsigned char y,char* str) { unsigned char lcd_temp; set_xy(x,y); lcd_temp=*str; while(lcd_temp != 0x00) { send_data(lcd_temp); lcd_temp=*(++str); } } //写字符串 //写字符串子程序 //xpos1取0~7共八列,ypos1取0~3共四行。 void printstr(unsigned char xpos,unsigned char ypos,unsigned char str[],unsigned char k) { unsigned char n; switch (ypos) { case 1: xpos |= 0x80;break; //第一行 case 2: xpos |= 0x90;break; //第二行 case 3: xpos |= 0x88;break; //第三行 case 4: xpos |= 0x98;break; //第四行 default: break; } send_com(xpos); //此处的Xpos已转换为LCM的显示寄存器实际地址 for(n=0;n < k;n++) { send_data(str[n]);//显示汉字时注意码值,连续两个码表示一个汉字 } } //清屏 void clr_lcd(void) { send_com(0x01); //send_com(0x34); //send_com(0x30); } //主函数 void main () { lcd_init(); //设定液晶工作方式 printstr(1,1,buf,4); print(5,1,"光临"); print(0,3," NATHAN_ZHANG"); while(1) { } }
-电子元器件采购网(www.ruidan.com)是本土元器件目录分销商,采用“小批量、现货、样品”销售模式,致力于满足客户多型号、高质量、快速交付的采购需求。 自建高效智能仓储,拥有自营库存超过50,000种,提供一站式正品现货采购、个性化解决方案、选型替代等多元化服务。

相关文章