1602液晶静态显示
2017-04-18 11:10
274 查看
#include<reg52.h> //包含头文件,一般情况不需要改动,头文件包含特殊功能寄存器的定义 #include<intrins.h> sbit RS = P2^4; //定义端口 sbit RW = P2^5; sbit EN = P2^6; #define RS_CLR RS=0 #define RS_SET RS=1 #define RW_CLR RW=0 #define RW_SET RW=1 #define EN_CLR EN=0 #define EN_SET EN=1 #define DataPort P0 void DelayUs2x(unsigned char t) { while(--t); } void DelayMs(unsigned char t) { while(t--) { //大致延时1mS DelayUs2x(245); DelayUs2x(245); } } bit LCD_Check_Busy(void) { DataPort= 0xFF; RS_CLR; RW_SET; EN_CLR; _nop_(); EN_SET; return (bit)(DataPort & 0x80); } void LCD_Write_Com(unsigned char com) { // while(LCD_Check_Busy()); //忙则等待 DelayMs(5); RS_CLR; RW_CLR; EN_SET; DataPort= com; _nop_(); EN_CLR; } void LCD_Write_Data(unsigned char Data) { //while(LCD_Check_Busy()); //忙则等待 DelayMs(5); RS_SET; RW_CLR; EN_SET; DataPort= Data; _nop_(); EN_CLR; } void LCD_Clear(void) { LCD_Write_Com(0x01); DelayMs(5); } void LCD_Write_String(unsigned char x,unsigned char y,unsigned char *s) { if (y == 0) { LCD_Write_Com(0x80 + x); //表示第一行 } else { LCD_Write_Com(0xC0 + x); //表示第二行 } while (*s) { LCD_Write_Data( *s); s ++; } } void LCD_Write_Char(unsigned char x,unsigned char y,unsigned char Data) { if (y == 0) { LCD_Write_Com(0x80 + x); } else { LCD_Write_Com(0xC0 + x); } LCD_Write_Data( Data); } void LCD_Init(void) { LCD_Write_Com(0x38); /*显示模式设置*/ DelayMs(5); LCD_Write_Com(0x38); DelayMs(5); LCD_Write_Com(0x38); DelayMs(5); LCD_Write_Com(0x38); LCD_Write_Com(0x08); /*显示关闭*/ LCD_Write_Com(0x01); /*显示清屏*/ LCD_Write_Com(0x06); /*显示光标移动设置*/ DelayMs(5); LCD_Write_Com(0x0C); /*显示开及光标设置*/ } void main(void) { LCD_Init(); LCD_Clear();//清屏 while (1) { LCD_Write_Char(7,0,'o'); LCD_Write_Char(8,0,'k'); LCD_Write_String(1,1,"www.doflye.net"); while(1); } }
相关文章推荐
- 1602液晶静态显示
- PCF8591 1602液晶显示
- 12.9 1602液晶简单显示程序
- 1602液晶显示
- 1602液晶显示实验报告
- 51单片机-1602液晶显示的时钟代码
- 1602液晶显示程序
- 51单片机配合超声波测距以及用1602液晶进行显示
- 1602液晶移动显示
- fpga驱动1602液晶显示字符
- DS1602液晶显示程序代码
- 1602液晶按键输入显示
- 1602液晶显示DS18B20温度
- 1602液晶显示
- 1602静态显示
- 单片机-1602液晶基本显示程序
- 51单片机 1602液晶显示
- 1602静态显示一个数字--汇编语言版本
- 1602液晶动态显示
- c语言通过89C51驱动1602液晶显示(入门级别)