⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 lcd.h

📁 基于M16的字符液晶1602的驱动
💻 H
字号:
/*
****************************************
//头文件名:LCD液晶驱动
//创建人  :hebei
//创建时间:2008-5-30
//芯片    : m16
//晶振    : 8.0000Mhz
//说明    : 为节省程序空间,尽量不用浮点型显示, 可以用条件编译去掉,可自行修改。
            函数前带有使用例子。
//		  	
// 注意   : 本驱动对以前版本做更新,带写负浮点数和写负整数(其实是从12864的驱动里拷贝过来而已)
            如果没有必要不推荐使用此版本,因为在算法上增加额外时间与空间。
****************************************
*/

/*------AVR与LCD连接信息-----------------------------------------
PA_2 ->RS
PA_3 ->EN
PA_4 ->D4
PA_5 ->D5
PA_6 ->D6
PA_7 ->D7            6根线
----------------------------------------------------------------*/

#ifndef _LCD_H_
#define _LCD_H_
#include "DELAY.H"
#include <string.h>
#include <stdlib.h>


//===============使用本驱动,改变下面配置信息即可==================
#define uint    unsigned int
#define uchar   unsigned char

#define LEFT        0
#define RIGHT       1
#define RS_SET      PORTA |=  (1 << 2)
#define RS_CLR      PORTA &=~ (1 << 2)
#define EN_SET      PORTA |=  (1 << 3)
#define EN_CLR      PORTA &=~ (1 << 3)
#define DB          PORTA                  //定义数据口
#define DB_DDR_OUT  { DDRA |= 0b11110000, DDRA |= 0b00001100; }    //使用到的口线定义为1
//=================================================================

//===================函数说明======================================
void long_to_string( long int dataint, char *p  );                 //整型数据转化为字符串
void float_2_string( float dataf, char *datastr, uchar p );        // 浮点型数据转化为字符串

void LCD_en_write(void);										   //使能
void LCD_write_command(uchar command);							   //写指令
void LCD_write_data(uchar DATA);								   //写数据
void LCD_init( void );	  										   //初始化
void LCD_set_rc( uchar r, uchar c );							   //写位置
void LCD_write_string(uchar r, uchar c, uchar *s);				   //写字符串
void LCD_write_char(uchar r, uchar c, uchar DATA);				   //写字符
void LCD_write_chardata( uchar r, uchar c, uchar chardata[]);      //写整型字符n
void LCD_write_array( uchar r, uchar c, uchar array[] );			  //写字符数组

void LCD_write_datalongint( uchar r, uchar c, long int datalongint );  //写整数
void LCD_write_datafloat( uchar r, uchar c, float dataf, uchar p );    //写浮点型数据
//==================================================================
#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -