LCD1602液晶驱动程序
/**************************************LCD1602Í?ÎÄ?þ*********************************/
#ifndef _LCD1602_H_
#define _LCD1602_H_
//ÊäÈë??Ê?ÉèÖÃ
#define LCD_AC_AUTO_INCREMENT 0x06
//Êý?Ý?Á??Ð??Ù×?ºó??AC×Ô??ÔöÒ?
#define LCD_AC_AUTO_DECREASE 0x04
//Êý?Ý?Á??Ð??Ù×?ºó??AC×Ô???õÒ?
#define LCD_MOVE_ENABLE 0x05 //Êý?Ý?Á??Ð??Ù×????-ÃæÆ?ÒÆ #define LCD_MOVE_DISENABLE 0x04 //Êý?Ý?Á??Ð??Ù×????-Ãæ???? #define LCD_GO_HOME 0x02 //AC=0???â?ê???-Ãæ?ØHOMEÎ? //ÉèÖÃÏÔÊ????â?ê??ÉÁË??ª???Ø
#define LCD_DISPLAY_ON 0x0C //ÏÔÊ??ª #define LCD_DISPLAY_OFF 0x08 //ÏÔÊ??Ø #define LCD_CURSOR_ON 0x0A //?â?êÏÔÊ? #define LCD_CURSOR_OFF 0x08 //?â?ê??ÏÔÊ? #define LCD_CURSOR_BLINK_ON 0x09 //?â?êÉÁË? #define LCD_CURSOR_BLINK_OFF 0x08 //?â?ê??ÉÁË? //?â?ê???-ÃæÒÆ??????Ó?ÏìDDRAM
#define LCD_LEFT_MOVE 0x18 //LCDÏÔÊ?×óÒÆÒ?Î? #define LCD_RIGHT_MOVE 0x1C //LCDÏÔÊ?ÓÒÒÆÒ?Î? #define LCD_CURSOR_LEFT_MOVE 0x10 //?â?ê×óÒÆÒ?Î? #define LCD_CURSOR_RIGHT_MOVE 0x14 //?â?êÓÒÒÆÒ?Î? //??×???Ê?ÉèÖÃ
#define LCD_DISPLAY_DOUBLE_LINE 0x38 //Á?ÐÐÏÔÊ? #define LCD_DISPLAY_SINGLE_LINE 0x30 //µ?ÐÐÏÔÊ? #define LCD_CLEAR_SCREEN 0X01 //ÇåÆÁ
/***********************LCD1602µØÖ?Ïà?Ø******************************/
#define LINE1_HEAD 0x80 // µÚÒ?ÐÐDDRAMÆðÊ?µØÖ? #define LINE2_HEAD 0xc0 // µÚ?þÐÐDDRAMÆðÊ?µØÖ? #define LINE1 0 //µÚÒ?ÐÐ
#define LINE2 1 //µÚ?þÐÐ
#define LINE_LENGTH 16 //Ã?ÐеÄ×î?ó×Ö?û???È
/***********************LCD1602?ÓÏßÒý?Å??Òå**************************/
#define LCDIO P0 //??ÒåP2?ÚÓëLCD1602µÄÊý?Ý?ÚÏà?Ó
sbit LCD_RS=P3^0;
sbit LCD_RW=P3^1;
sbit LCD_EN=P3^2;
sbit LCD_BUSY=LCDIO^7;
/**********************ÁíÍâÏà?صÄ??*********************************/
#define HIGH 1
#define LOW 0
#define TURE 1
#define FALSE 0
#define uchar unsigned char
#define uint unsigned int
/*************************ÒÔÏÂÊǺ?ÊýµÄÉêÃ???*************************/
void LCD_init(void); //LCD1602?õÊ???
void LCD_send_command(uchar command); //
void LCD_send_data(uchar dat);
void LCD_write_char(uchar x,uchar y,uchar dat);
void LCD_disp_string(uchar x,uchar y,char *Data);
void delay_ms(uint n);
void LCD_check_busy(void);
#endif
/******************************************************************
本文档为【LCD1602液晶驱动程序】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑,
图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。