📄 lcd.lst
字号:
C51 COMPILER V7.50 LCD 07/26/2007 17:32:37 PAGE 1
C51 COMPILER V7.50, COMPILATION OF MODULE LCD
OBJECT MODULE PLACED IN LCD.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE LCD.C BROWSE DEBUG OBJECTEXTEND
line level source
1 #include <reg52.h>
2 #include <absacc.h>
3 #include <stdio.h>
4 #include "lcd.h"
*** ERROR C141 IN LINE 8 OF LCD.H: syntax error near 'com', expected ')'
*** ERROR C141 IN LINE 9 OF LCD.H: syntax error near 'da', expected ')'
*** ERROR C141 IN LINE 10 OF LCD.H: syntax error near 'da', expected ')'
*** ERROR C141 IN LINE 11 OF LCD.H: syntax error near 'data1', expected ')'
*** ERROR C141 IN LINE 12 OF LCD.H: syntax error near 'data1', expected ')'
*** ERROR C141 IN LINE 13 OF LCD.H: syntax error near 'start_base', expected ')'
5
6 #define LINECHARS 0x1e //30
7 #define DATA XBYTE[0X8000] /*显示屏数据端口地址*/
8 #define COMMAND XBYTE[0X8100] /*显示屏命令端口地址*/
9 #define CHARBLANK 0
10 sbit flag0 = ACC^0 ; /* command r/w flag */
11 sbit flag1 = ACC^1 ; /* DATA R/W flag */
12 sbit flag2 = ACC^2 ; /* AUTO read */
13 sbit flag3 = ACC^3 ; /* AUTO write */
14
15 /* 一次读写状态判断 */
16 void wait()
17 {
18 1 while( flag0 != 1 )
19 1 {
20 2 ACC = COMMAND ;
21 2 }
22 1
23 1 while( flag1 != 1 )
24 1 {
25 2 ACC = COMMAND ;
26 2 }
27 1 }
28
29 /* 连续读写状态判断*/
30 void waits( )
31 {
32 1 while( flag3 != 1 )
33 1 {
34 2 ACC = COMMAND ;
35 2 }
36 1 }
37
38 /* 一次写数据 */
39 void writedata( uchar da )
*** ERROR C141 IN LINE 39 OF LCD.C: syntax error near 'da', expected ')'
40 {
41 1 wait();
42 1 DATA = da;
*** ERROR C202 IN LINE 42 OF LCD.C: 'da': undefined identifier
43 1 }
44
45
46 /* 连续写数据 */
47 void writedatas( uchar da )
C51 COMPILER V7.50 LCD 07/26/2007 17:32:37 PAGE 2
*** ERROR C141 IN LINE 47 OF LCD.C: syntax error near 'da', expected ')'
48 {
49 1 waits();
50 1 DATA = da;
*** ERROR C202 IN LINE 50 OF LCD.C: 'da': undefined identifier
51 1 }
52
53 /* 写命令 */
54 void writecom ( uchar com )
*** ERROR C141 IN LINE 54 OF LCD.C: syntax error near 'com', expected ')'
55 {
56 1 wait();
57 1 COMMAND = com;
*** ERROR C202 IN LINE 57 OF LCD.C: 'com': undefined identifier
58 1 }
59
60 /* 写双参数命令 */
61 void writedc ( uchar data1, uchar data2, uchar com )
*** ERROR C141 IN LINE 61 OF LCD.C: syntax error near 'data1', expected ')'
62 {
63 1 writedata( data1 );
*** ERROR C202 IN LINE 63 OF LCD.C: 'data1': undefined identifier
64 1 writedata( data2 );
*** ERROR C202 IN LINE 64 OF LCD.C: 'data2': undefined identifier
65 1 writecom ( com );
*** ERROR C202 IN LINE 65 OF LCD.C: 'com': undefined identifier
66 1 }
67 /*写单参数命令 */
68 void writesdc ( uchar data1,uchar com )
*** ERROR C141 IN LINE 68 OF LCD.C: syntax error near 'data1', expected ')'
69 {
70 1 writedata (data1) ;
*** ERROR C202 IN LINE 70 OF LCD.C: 'data1': undefined identifier
71 1 writecom (com);
*** ERROR C202 IN LINE 71 OF LCD.C: 'com': undefined identifier
72 1 }
73 /****************************************************************
74 显示一个汉字在X,Y位置,其中X必须为8的倍数
75 S指向一个长度为32的字模数组,start_base为整个缓冲区在RAM中的位置
76 ******************************************************************/
77 void display32( uchar start_base, uchar x,uchar y, char *s )
*** ERROR C141 IN LINE 77 OF LCD.C: syntax error near 'start_base', expected ')'
78 {
79 1 uint start;
*** ERROR C202 IN LINE 79 OF LCD.C: 'uint': undefined identifier
*** ERROR C141 IN LINE 79 OF LCD.C: syntax error near 'start'
80 1 uchar i;
*** ERROR C141 IN LINE 80 OF LCD.C: syntax error near 'i'
*** ERROR C202 IN LINE 80 OF LCD.C: 'i': undefined identifier
81 1 uchar high,low;
*** ERROR C141 IN LINE 81 OF LCD.C: syntax error near 'high'
*** ERROR C202 IN LINE 81 OF LCD.C: 'high': undefined identifier
82 1 for( i = 0; i < 16 ; i++ ) //把字模写入LCD
*** ERROR C202 IN LINE 82 OF LCD.C: 'i': undefined identifier
83 1 {
84 2 start = x + (y*i)*LINECHARS*8;
*** ERROR C202 IN LINE 84 OF LCD.C: 'start': undefined identifier
85 2 low = (start/8)&0x00ff;
*** ERROR C202 IN LINE 85 OF LCD.C: 'low': undefined identifier
86 2 high = (start/8)>>8;
*** ERROR C202 IN LINE 86 OF LCD.C: 'high': undefined identifier
87 2 writedc( low, high + start_base, 0x24 );
C51 COMPILER V7.50 LCD 07/26/2007 17:32:37 PAGE 3
*** ERROR C202 IN LINE 87 OF LCD.C: 'low': undefined identifier
88 2 writesdc( s[i] , 0xc0 ); //数据写入LCD地址加1
*** ERROR C202 IN LINE 88 OF LCD.C: 'i': undefined identifier
89 2 writesdc( s[i+16] ,0xc0 ); //数据写入LCD地址加1
*** ERROR C202 IN LINE 89 OF LCD.C: 'i': undefined identifier
90 2 }
91 1 }
92
93 /************************************************
94 显示一个字符,在X,Y位置,其中X必须为8的倍数
95 S指向一个长度为16的字模数组。
96 ************************************************/
97 void display16( uchar start_base, uchar x,uchar y, char *s )
*** ERROR C141 IN LINE 97 OF LCD.C: syntax error near 'start_base', expected ')'
98 {
99 1 uint start;
*** ERROR C202 IN LINE 99 OF LCD.C: 'uint': undefined identifier
*** ERROR C141 IN LINE 99 OF LCD.C: syntax error near 'start'
100 1 uchar i;
*** ERROR C141 IN LINE 100 OF LCD.C: syntax error near 'i'
*** ERROR C202 IN LINE 100 OF LCD.C: 'i': undefined identifier
101 1 uchar high,low;
*** ERROR C141 IN LINE 101 OF LCD.C: syntax error near 'high'
*** ERROR C202 IN LINE 101 OF LCD.C: 'high': undefined identifier
102 1 for( i = 0; i < 16 ; i++ ) //把字模写入LCD
*** ERROR C202 IN LINE 102 OF LCD.C: 'i': undefined identifier
103 1 {
104 2 start = x + (y*i)*LINECHARS*8;
*** ERROR C202 IN LINE 104 OF LCD.C: 'start': undefined identifier
105 2 low = (start/8)&0x00ff;
*** ERROR C202 IN LINE 105 OF LCD.C: 'low': undefined identifier
106 2 high = (start/8)>>8;
*** ERROR C202 IN LINE 106 OF LCD.C: 'high': undefined identifier
107 2 writedc( low, high + start_base, 0x24 );
*** ERROR C202 IN LINE 107 OF LCD.C: 'low': undefined identifier
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -