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

📄 lcm.h

📁 用GCC编写ATMEG128应用软件源代码
💻 H
字号:
/***********************************************************/
/*														   */
/*文 件 名:LCM.h								           */
/*功    能:LCD显示系统硬件接口文件                        */
/*当前版本:V1.0										   */
/*作    者:白广斌									       */
/*														   */
/*授    权:										       */
/*														   */
/*开始日期:2007.08.01								       */
/*完成日期:2007.08.01								       */
/*      	                                               */
/***********************************************************/
#include <avr/io.h>
#include <avr/pgmspace.h>
#include <str_16x08.h>
#include <hz16x16.h>
#include <Picture.h>

#define uchar unsigned char
#define uint unsigned int
#define ulong unsigned long int


#define LCD_RES(x) if(x==0){PORTD&=~_BV(PD7);}else{PORTD|=_BV(PD7);}  //定义液晶复位引脚
#define LCDBUS     PORTC	   //LCD数据总线

#define A0(x)      if(x==0){PORTD&=~_BV(PD6);}else{PORTD|=_BV(PD6);}  //A0信号
#define _WR(x)     if(x==0){PORTB&=~_BV(PB7);}else{PORTB|=_BV(PB7);}  //写
#define _RD(x)     if(x==0){PORTD&=~_BV(PD4);}else{PORTD|=_BV(PD4);}  //读
#define _CS(x)     if(x==0){PORTD&=~_BV(PD5);}else{PORTD|=_BV(PD5);}  //片选

extern uchar AddrNuber;          //本机地址值
extern uchar  YJ_Type;           //预警类型  1:井喷,2:井漏,3:井涌,否则正常
extern uint   Updat_Cn;          //更新屏幕计数器

extern uint   BPL;    //泵排量
extern uint   CKYW;   //出口液位
extern uint   CKLL;   //出口流量
extern uint   CKLS;   //出口流速
extern int    LLC_S;  //流量差(升/秒)
extern uint   LLPL;   //理论排量(升/秒)
extern uint   LJLL;   //累计流量
extern uint   LJSJ;   //累计时间
extern uchar  BXL_1;  //#1 泵效率
extern uchar  BXL_2;  //#2 泵效率

extern uint   GT_ZJ1_1; //#1 钢套直径1
extern uint   GT_ZJ1_2; //#1 钢套直径2
extern uint   GT_ZJ1_3; //#1 钢套直径3

extern uint   GT_ZJ2_1; //#2 钢套直径1
extern uint   GT_ZJ2_2; //#2 钢套直径2
extern uint   GT_ZJ2_3; //#2 钢套直径3

extern uchar  Start_Month;   //起始  月
extern uchar  Start_Date;    //起始  日
extern uchar  Start_HH;      //起始  小时
extern uchar  Start_MM;      //起始  分钟

extern void SYS_TimerDisplay(uchar Row,uchar Col);
extern void SYS_DateDisplay(uchar Row,uchar Col);
extern void SYS_WeekDisplay(uchar Row,uchar Col);

uchar JK_Pic_OK=0;   //0:未显示监控界面;否则已显示

/*以下定义液晶显示器接口函数*/
uchar LcdRead(void);
void CmdWrite(uchar cmdcode);                               //写命令函数
void DataWrite(uchar wrdata);                               //写数据或参数函数

void On_Pic(void);                                          //开机界面显示
void Surveillance(void);                                    //监控界面函数

void FullScreenFill(uchar low,uchar high,uchar fill_data);  //整屏幕写入数据函数
void LCD_Initial(void);                                     //显示系统初始化函数
void ClearScreen(void);                                     //清屏函数

void GS_NameDisplay(uchar Row,uchar Col,uchar Layer,uchar fs);      //公司名头显示函数
void GTZJ_Display(uchar Row,uchar Col,uchar Layer,uchar fs);        //钢套直径显示函数
void HZ_JingLou(uchar Row,uchar Col,uchar Layer,uchar fs);          //"井漏"显示函数
void HZ_JingPen(uchar Row,uchar Col,uchar Layer,uchar fs);          //"井喷"显示函数
void HZ_JingYong(uchar Row,uchar Col,uchar Layer,uchar fs);         //"井涌"显示函数
void HZ_Zhengchang(uchar Row,uchar Col,uchar Layer,uchar fs);       //"正常"显示函数
void YJ_Display(uchar x);                                           //预警类型显示函数

void RowLine(uchar Row,uchar Col,uchar Length,uchar Position,uchar Layer);//画直线函数(水平线)
void ColLine(uchar Row,uchar Col,uchar Position,uchar Length,uchar Layer);//画竖线函数(垂直线)

void LCM_Screen_str(uchar low,uchar high,const prog_char *pstr,uchar Layer,uchar fs);//16X8点阵字符串输出到屏幕指定位置显示
void LCM_Screen_HZ(uchar Row,uchar Col,uchar bm,uchar Layer,uchar fs);     //16x16点阵汉字输出到屏幕指定位置显示
void LCM_Screen_RAMstr(uchar Row,uchar Col,uchar *pstr,uchar Layer,uchar fs);
void Pic_Screen(uchar Row,uchar Col);                                         //写入图片数据函数
void LCM_NumberDisplay(uchar Row,uchar Col,uchar Layer,uchar Number,uchar fs);//数值显示

void SignedXXX_XX_Display(uchar Row,uchar Col,uchar Layer,int Number,uchar fs);  //有符号数值xxx.xx显示函数
void XXX_XX_Display(uchar Row,uchar Col,uchar Layer,uint Number,uchar fs);//xxx.xx显示函数
void XX_XX_Display(uchar Row,uchar Col,uchar Layer,uint Number,uchar fs); // xx.xx显示函数
void XXX_X_Display(uchar Row,uchar Col,uchar Layer,uint Number,uchar fs); // xxx.x显示函数
void X_XXX_Display(uchar Row,uchar Col,uchar Layer,uint Number,uchar fs); // x.xxx显示函数
void XXX_Display(uchar Row,uchar Col,uchar Layer,uchar Number,uchar fs);  // xxx显示函数

void Start_Timer_Display(uchar Row,uchar Col,uchar Layer,uchar fs);       //起始时间显示函数

⌨️ 快捷键说明

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