📄 lcd1602fortran.c
字号:
/*********************************************************************
微 雪 电 子 WaveShare http://www.waveShare.net
目 的: 建立LCD1602的测试程序
目标系统: 基于任何兼容C51的微处理器
应用软件: Keil C
版 本: Version 1.0
圆版时间: 2004-10-26
开发人员: SEE
说 明: 若用于商业用途,请保留此段文字或注明代码来源
深 圳 微 雪 电 子 保 留 所 有 的 版 权
*********************************************************************/
/*01010101010101010101010101010101010101010101010101010101010101010101
----------------------------------------------------------------------
版本更新记录:
版 本: Version 1.1
圆版时间: 2005-03-25
----------------------------------------------------------------------
接入模块: LCD1602
接口说明: 短接以下端子:P35-RS,P36-RW,P37-E,P24-D4,P25-D5,P26-D6,P27-D7
----------------------------------------------------------------------
注意事项:
* 操作LCD使用的IO口,该IO对应的LED-SW不得短接使能
* 短接以下端子:P35-RS,P36-RW,P37-E,P24-D4,P25-D5,P26-D6,P27-D7
----------------------------------------------------------------------
10101010101010101010101010101010101010101010101010101010101010101010*/
#include <REGX51.H>
#include "D:\C51_H\CmmC51.H"
#include "D:\C51_H\HardExt.H"
sbit RS = P3^5;
sbit RW = P3^6;
sbit E = P3^7;
sbit D4 = P2^4;
sbit D5 = P2^5;
sbit D6 = P2^6;
sbit D7 = P2^7;
sbit BUSY = P2^7;
/* control port */
#define SET_RS RS = 1
#define CLR_RS RS = 0
#define SET_RW RW = 1
#define CLR_RW RW = 0
#define SET_E E = 1
#define CLR_E E = 0
/* data port */
#define SET_D4 D4 = 1
#define CLR_D4 D4 = 0
#define SET_D5 D5 = 1
#define CLR_D5 D5 = 0
#define SET_D6 D6 = 1
#define CLR_D6 D6 = 0
#define SET_D7 D7 = 1
#define CLR_D7 D7 = 0
/* busy port */
#define GET_BF BUSY
#include "D:\C51_H\LCD1602ForTran.H"
/*--------------------------------------------------------------------
函数全称:
函数功能:
注意事项:
提示说明:
输 入:
返 回:
--------------------------------------------------------------------*/
void main()
{
const uint8 userCh0[8]={0x10,0x1f,0x01,0x02,0x04,0x08,0x10,0x1f};
const uint8 userCh1[8]={0x00,0x08,0x0f,0x01,0x02,0x04,0x08,0x0f};
const uint8 userCh2[8]={0x00,0x00,0x04,0x07,0x01,0x02,0x04,0x07};
LCD1602_init();
LCD1602_setCmd("CLR_SCR");
while(1)
{
LCD1602_puts(0xC6," ");
delay50ms(5);
LCD1602_puts(0xC6,"Sleeping");
delay50ms(5);
LCD1602_puts(0xC6," ");
delay50ms(5);
LCD1602_puts(0xC6,"Sleeping");
delay50ms(5);
LCD1602_setCGRAM(CGRAM0,userCh0); //Set CGRAM0' data
LCD1602_setCGRAM(CGRAM1,userCh1); //Set CGRAM1' data
LCD1602_setCGRAM(CGRAM2,userCh2); //Set CGRAM2' data
LCD1602_putc(0x84,CGRAM2); //putc to 0x84 by CGRAM2' data
delay50ms(10);
LCD1602_putc(0x83,CGRAM1); //putc to 0x83 by CGRAM1' data
delay50ms(12);
LCD1602_putc(0x82,CGRAM0); //putc to 0x82 by CGRAM0' data
delay50ms(14);
LCD1602_setCmd("CLR_SCR");
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -