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

📄 lph7366.c

📁 近来自己做了温度计,MCU芯片是51的, 温度芯片是DS18B20,显示屏是3310.
💻 C
📖 第 1 页 / 共 2 页
字号:
//LPH7366液晶应用  ISP总线
//文件包含
#include <config.h>

//参数定义
sbit SCLK=P2^3;  //时钟信号
sbit SDIN=P2^2;  //数据输入
sbit D_C=P2^1;   //数据或指令
sbit RES=P2^0;   //复位
sbit LED=P1^5;
#define COM  0  //指令
#define DAT  1  //数据
//-------------------
#define STR  1  //字符
#define HAN  2  //汉字
//--------------------------LPH7366指令集---------------------------
#define LPH7366_basic_fun_set  0x20 //基本功能设置 
#define LPH7366_expand_fun_set 0x21 //扩展功能设置
//  D7  D6  D5  D4  D3  D2  D1  D0
//  0   0   1   0   0   PD  V   H
//                      |   |   |_______1->扩展指令集  0->基本指令集
//                      |   |___________1->垂直寻址    0->水平寻址 
//                      |_______________1->低功耗模式  0->正常模式
//-------------------------------------------------------------------
//基本指令集
#define LPH7366_dis_set  0x0c//显示模式设置
//  D7  D6  D5  D4  D3  D2  D1  D0
//  0   0   0   0   1   D   0   E
//                      |       |_______0    0        1    1
//                      |_______________0    1        0    1
//                                      白屏 正常显示 全显 反转
//-------------------------------------------------------------------
#define LPH7366_add_Yset  0x40 //设置Y地址 
//  D7  D6  D5  D4  D3  D2  D1  D0
//  0   1   0   0   0   Y1  Y2  Y3
//-------------------------------------------------------------------
#define LPH7366_add_Xset  0x80 //设置X地址 
//  D7  D6  D5  D4  D3  D2  D1  D0
//  0   1   X6  X5  X4  X3  X2  X1
//-------------------------------------------------------------------
//扩展指令集
#define LPH7366_tem_set  0x06   //温度系数设置
//  D7  D6  D5  D4  D3  D2  D1  D0
//  0   0   0   0   0   1  TC1  TC0
//-------------------------------------------------------------------
#define LPH7366_vot_set  0xD7  //电压系数设置
//  D7  D6  D5  D4  D3  D2  D1  D0
//  1   vo6 vo5 vo4 vo3 vo2 vo1 vo0  
//-------------------------------------------------------------------
//函数说明
void LPH7366_init();  //LPH7366初始化
void LPH7366_write(unsigned char type,unsigned char in_data);  //LPH7366读函数
void LPH7366_clr();  //显示屏幕清屏
void LPH7366_flash(unsigned int delay_time);  //LPH7366闪屏函数
void LPH7366_write_str(unsigned char line,unsigned char row,unsigned char str); //LPH7366任意写入字符函数
void LPH7366_write_han(unsigned char symbol_line,unsigned char symbol_row,unsigned char han); //LPH7366任意写入汉字函数
void LPH7366_write_doc(unsigned char symbol_line,unsigned char symbol_row,unsigned char doc); //LPH7366任意写入字节函数
void data_tick(unsigned char i_data);  //数据拆分函数
void LPH7366_doc_move(unsigned char symbol_line);  //屏幕上的任意一行水平移动
unsigned char row(unsigned char stye,unsigned char i);  //计算屏幕的列地址   类型
bit data_flag=0;  //是否动态显示数据标志位 0:不动态  1:动态
unsigned char ge,shi;  //数据拆分


//外部函数说明
//********************delay.c********************
extern void delay(unsigned int delay_time);   //延时子程序
//--------------------time.c--------------------------
extern bit second_flag;  //秒信号标志位
//---------------------------------------

//--------------The standard ASCLL characters in a 5x7 dot format-------------
unsigned char code ASCLL[][5]=
{
   { 0x00, 0x00, 0x00, 0x00, 0x00 },  // sp
   { 0x00, 0x00, 0x2f, 0x00, 0x00 },  // !
   { 0x00, 0x07, 0x00, 0x07, 0x00 },  // "
   { 0x14, 0x7f, 0x14, 0x7f, 0x14 },  // #
   { 0x24, 0x2a, 0x7f, 0x2a, 0x12 },  // $
   { 0xc4, 0xc8, 0x10, 0x26, 0x46 },  // %
   { 0x36, 0x49, 0x55, 0x22, 0x50 },  // &
   { 0x00, 0x05, 0x03, 0x00, 0x00 },  // '
   { 0x00, 0x1c, 0x22, 0x41, 0x00 },  // (
   { 0x00, 0x41, 0x22, 0x1c, 0x00 },  // )
   { 0x14, 0x08, 0x3E, 0x08, 0x14 },  // *
   { 0x08, 0x08, 0x3E, 0x08, 0x08 },  // +
   { 0x00, 0x00, 0x50, 0x30, 0x00 },  // ,
   { 0x10, 0x10, 0x10, 0x10, 0x10 },  // -
   { 0x00, 0x60, 0x60, 0x00, 0x00 },  // .
   { 0x20, 0x10, 0x08, 0x04, 0x02 },  // /
   { 0x3E, 0x51, 0x49, 0x45, 0x3E },  // 0
   { 0x00, 0x42, 0x7F, 0x40, 0x00 },  // 1
   { 0x42, 0x61, 0x51, 0x49, 0x46 },  // 2
   { 0x21, 0x41, 0x45, 0x4B, 0x31 },  // 3
   { 0x18, 0x14, 0x12, 0x7F, 0x10 },  // 4
   { 0x27, 0x45, 0x45, 0x45, 0x39 },  // 5
   { 0x3C, 0x4A, 0x49, 0x49, 0x30 },  // 6
   { 0x01, 0x71, 0x09, 0x05, 0x03 },  // 7
   { 0x36, 0x49, 0x49, 0x49, 0x36 },  // 8
   { 0x06, 0x49, 0x49, 0x29, 0x1E },  // 9
   { 0x00, 0x36, 0x36, 0x00, 0x00 },  // :
   { 0x00, 0x56, 0x36, 0x00, 0x00 },  // ;
   { 0x08, 0x14, 0x22, 0x41, 0x00 },  // <
   { 0x14, 0x14, 0x14, 0x14, 0x14 },  // =
   { 0x00, 0x41, 0x22, 0x14, 0x08 },  // >
   { 0x02, 0x01, 0x51, 0x09, 0x06 },  // /
   { 0x32, 0x49, 0x59, 0x51, 0x3E },  // @
   { 0x7E, 0x11, 0x11, 0x11, 0x7E },  // A
   { 0x7F, 0x49, 0x49, 0x49, 0x36 },  // B
   { 0x3E, 0x41, 0x41, 0x41, 0x22 },  // C
   { 0x7F, 0x41, 0x41, 0x22, 0x1C },  // D
   { 0x7F, 0x49, 0x49, 0x49, 0x41 },  // E
   { 0x7F, 0x09, 0x09, 0x09, 0x01 },  // F
   { 0x3E, 0x41, 0x49, 0x49, 0x7A },  // G
   { 0x7F, 0x08, 0x08, 0x08, 0x7F },  // H
   { 0x00, 0x41, 0x7F, 0x41, 0x00 },  // I
   { 0x20, 0x40, 0x41, 0x3F, 0x01 },  // J
   { 0x7F, 0x08, 0x14, 0x22, 0x41 },  // K
   { 0x7F, 0x40, 0x40, 0x40, 0x40 },  // L
   { 0x7F, 0x02, 0x0C, 0x02, 0x7F },  // M
   { 0x7F, 0x04, 0x08, 0x10, 0x7F },  // N
   { 0x3E, 0x41, 0x41, 0x41, 0x3E },  // O
   { 0x7F, 0x09, 0x09, 0x09, 0x06 },  // P
   { 0x3E, 0x41, 0x51, 0x21, 0x5E },  // Q
   { 0x7F, 0x09, 0x19, 0x29, 0x46 },  // R
   { 0x46, 0x49, 0x49, 0x49, 0x31 },  // S
   { 0x01, 0x01, 0x7F, 0x01, 0x01 },  // T
   { 0x3F, 0x40, 0x40, 0x40, 0x3F },  // U
   { 0x1F, 0x20, 0x40, 0x20, 0x1F },  // V
   { 0x3F, 0x40, 0x38, 0x40, 0x3F },  // W
   { 0x63, 0x14, 0x08, 0x14, 0x63 },  // X
   { 0x07, 0x08, 0x70, 0x08, 0x07 },  // Y
   { 0x61, 0x51, 0x49, 0x45, 0x43 },  // Z
   { 0x00, 0x7F, 0x41, 0x41, 0x00 },  // [
   { 0x55, 0x2A, 0x55, 0x2A, 0x55 },  // 55
   { 0x00, 0x41, 0x41, 0x7F, 0x00 },  // ]
   { 0x04, 0x02, 0x01, 0x02, 0x04 },  // ^
   { 0x40, 0x40, 0x40, 0x40, 0x40 },  // _
   { 0x00, 0x01, 0x02, 0x04, 0x00 },  // '
   { 0x20, 0x54, 0x54, 0x54, 0x78 },  // a
   { 0x7F, 0x48, 0x44, 0x44, 0x38 },  // b
   { 0x38, 0x44, 0x44, 0x44, 0x20 },  // c
   { 0x38, 0x44, 0x44, 0x48, 0x7F },  // d
   { 0x38, 0x54, 0x54, 0x54, 0x18 },  // e
   { 0x08, 0x7E, 0x09, 0x01, 0x02 },  // f
   { 0x0C, 0x52, 0x52, 0x52, 0x3E },  // g
   { 0x7F, 0x08, 0x04, 0x04, 0x78 },  // h
   { 0x00, 0x44, 0x7D, 0x40, 0x00 },  // i
   { 0x20, 0x40, 0x44, 0x3D, 0x00 },  // j
   { 0x7F, 0x10, 0x28, 0x44, 0x00 },  // k
   { 0x00, 0x41, 0x7F, 0x40, 0x00 },  // l
   { 0x7C, 0x04, 0x18, 0x04, 0x78 },  // m
   { 0x7C, 0x08, 0x04, 0x04, 0x78 },  // n
   { 0x38, 0x44, 0x44, 0x44, 0x38 },  // o
   { 0x7C, 0x14, 0x14, 0x14, 0x08 },  // p
   { 0x08, 0x14, 0x14, 0x18, 0x7C },  // q
   { 0x7C, 0x08, 0x04, 0x04, 0x08 },  // r
   { 0x48, 0x54, 0x54, 0x54, 0x20 },  // s
   { 0x04, 0x3F, 0x44, 0x40, 0x20 },  // t
   { 0x3C, 0x40, 0x40, 0x20, 0x7C },  // u
   { 0x1C, 0x20, 0x40, 0x20, 0x1C },  // v
   { 0x3C, 0x40, 0x30, 0x40, 0x3C },  // w
   { 0x44, 0x28, 0x10, 0x28, 0x44 },  // x
   { 0x0C, 0x50, 0x50, 0x50, 0x3C },  // y
   { 0x44, 0x64, 0x54, 0x4C, 0x44 }   // z
};
//-------------------------汉字字库----------------------------------
unsigned char code HZK[][24]={
//气
{0X80,0X40,0Xb0,0Xa0,0Xa0,0Xa0,0Xa0,0Xa0,0Xa0,0Xa0,0X00,0X00,
 0X00,0X02,0X02,0X02,0X02,0X02,0X02,0X02,0X02,0X3e,0X40,0X60},
//温
{0X90,0X20,0X00,0X00,0Xf0,0X50,0X50,0X50,0X50,0Xf0,0X00,0X00,
 0X78,0X07,0X40,0X7c,0X45,0X7d,0X45,0X7d,0X45,0X7d,0X40,0X00},
	};
//---------------------------------------------------------

/***************************LPH7366初始化函数**************************/
/*函数原型:void LPH7366_init()
/*函数功能:LPH7366初始化
/*输入参数:无
/*输出参数:无
/*调用模块:LPH7366_clr(),delay(),LPH7366_write()
/*建立时间:2005/10/31
/*作者:丁霄
/**********************************************************************/
void LPH7366_init()
{
  RES=1;        
  D_C=1;
  SDIN=1;
  SCLK=1;
  delay(1000);
  RES=0;
  delay(1000);
  RES=1; //模块复位

  LPH7366_write(COM,LPH7366_expand_fun_set);   //显示模块扩展指令
  LPH7366_write(COM,LPH7366_vot_set);          //显示模块对比度电压设置
  LPH7366_write(COM,LPH7366_tem_set);          //显示模块温度参数设置

  LPH7366_write(COM,LPH7366_basic_fun_set);    //显示模块基本指令
  LPH7366_write(COM,LPH7366_dis_set);          //显示模块显示模式设置
  LPH7366_write(COM,LPH7366_add_Yset);         //显示模块行地址设置

⌨️ 快捷键说明

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