📄 lcd.lst
字号:
C51 COMPILER V8.01 LCD 08/30/2008 22:50:03 PAGE 1
C51 COMPILER V8.01, COMPILATION OF MODULE LCD
OBJECT MODULE PLACED IN lcd.OBJ
COMPILER INVOKED BY: D:\Keil\C51\BIN\C51.EXE lcd.c BROWSE DEBUG OBJECTEXTEND
line level source
1 /*****************************************************************************************
-***
2 * 文 件 名:test019.c
3 * 功 能:LCM12864液晶模块驱动。
4 * 硬件条件:1.CPU型号:AT89S52
5 * 2.晶振:12.000MHz
6 * 3.用跳线帽短接JP4跳线,即P0口全部接上拉电阻。
7 * 4.LCM12864与AT89S52的连接如下:
8 *
9 * LCM12864 AT89S52 备 注
10 * ==================================================================================
11 * RS P2.7 0:写指令或读状态; 1:数据操作
12 * R/W P2.6 0:进行写操作; 1:进行读操作
13 * E P2.5 读写脉冲:在E下降沿,数据被锁存(写)入KS0108
14 * 在E高电平期间,数据被读出。
15 * DB0 P0.0 数据线0
16 * DB1 P0.1 数据线1
17 * DB2 P0.2 数据线2
18 * DB3 P0.3 数据线3
19 * DB4 P0.4 数据线4
20 * DB5 P0.5 数据线5
21 * DB6 P0.6 数据线6
22 * DB7 P0.7 数据线7
23 * CS1 P2.4 高电平选通,选中左半屏。.
24 * RESET P2.2 低电平有效,复位信号有效时,关闭液晶显示,使显示
25 * 起始行为0,该引脚可与MCU相连,由MCU控制;也可以
26 * 直接接VDD,使之不起作用。
27 * LEDK(BLK) P2.1 背光控制,高电平点亮。
28 * 注意:LEDK与P2.1不是直接连接!P2.1应通过一个1K的
29 * 电阻接8050三极管的B极,LEDK接8050的C极,8050
30 * 的E极接地。
31 * ==================================================================================
32 #include "reg52.h" // 包含头文件
33 /* 与编译器无关的数据类型定义 */
34 /********************************************************************************************/
35 typedef unsigned char uint8; // 无符号8位整型变量
36 typedef signed char int8; // 有符号8位整型变量
37 typedef unsigned short uint16; // 无符号16位整型变量
38 typedef signed short int16; // 有符号16位整型变量
39 typedef unsigned int uint32; // 无符号32位整型变量
40 typedef signed int int32; // 有符号32位整型变量
41 typedef float fp32; // 单精度浮点数(32位长度)
42 typedef double fp64; // 双精度浮点数(64位长度)
43 /********************************************************************************************/
44
45 #define LCM12864_DB7_DB0 P0 // 定义LCM12864的数据总线
46 /* 定义位变量 */
47 sbit LCM12864_RS = P2 ^ 7; // 定义LCM12864的RS控制线
*** ERROR C202 IN LINE 47 OF LCD.C: 'P2': undefined identifier
48 sbit LCM12864_RW = P2 ^ 6; // 定义LCM12864的RW控制线
*** ERROR C202 IN LINE 48 OF LCD.C: 'P2': undefined identifier
49 sbit LCM12864_E = P2 ^ 5; // 定义LCM12864的E控制线
*** ERROR C202 IN LINE 49 OF LCD.C: 'P2': undefined identifier
50 sbit LCM12864_CS1 = P2 ^ 4; // 定义LCM12864的CS1控制线
*** ERROR C202 IN LINE 50 OF LCD.C: 'P2': undefined identifier
C51 COMPILER V8.01 LCD 08/30/2008 22:50:03 PAGE 2
51 sbit LCM12864_CS2 = P2 ^ 3; // 定义LCM12864的CS2控制线
*** ERROR C202 IN LINE 51 OF LCD.C: 'P2': undefined identifier
52 sbit LCM12864_RESET = P2 ^ 2; // 定义LCM12864的RESET控制线
*** ERROR C202 IN LINE 52 OF LCD.C: 'P2': undefined identifier
53 sbit LCM12864_LEDK = P2 ^ 1; // 定义LCM12864的LEDK(BLK)控制线
*** ERROR C202 IN LINE 53 OF LCD.C: 'P2': undefined identifier
54 /* 定义LCM12864的命令字 */
55 #define LCM12864_DISP_ON 0x3f // 打开LCM12864显示
56 #define LCM12864_DISP_OFF 0x3e // 关闭LCM12864显示
57 #define LCM12864_START_ROW 0xc0 // 显示起始行0,可以用LCM12864_START_ROW+x设置起始行。(x
-<64)
58 #define LCM12864_PAGE_START_ADDR 0xb8 // 页起始地址,可以用LCM12864_PAGE_START_ADDR+x设置当前
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -