?? 1602.lst
字號:
C51 COMPILER V7.20 1602 06/19/2006 11:11:51 PAGE 1
C51 COMPILER V7.20, COMPILATION OF MODULE 1602
OBJECT MODULE PLACED IN 1602.OBJ
COMPILER INVOKED BY: D:\Program Files\Keil\C51\BIN\C51.EXE 1602.c BROWSE DEBUG OBJECTEXTEND
line level source
1 #include "reg52.h"
2 #include "intrins.h"
3
4 #define uchar unsigned char
5 #define uint unsigned int
6
7 sbit RS=P3^7;
8 sbit RW=P3^6;
9 sbit EN=P3^5;
10 static void delay(uint j);
11 //************************
12 void initlcd(); /*LCD初始化*/
13 void writecom(uchar c);
14 void writedata(uchar c);
15 void showchar(uchar pos,uchar c); /*顯示一個字符 pos為位置 范圍0-31 c為字符*/
16 void showstring(uchar line,uchar *ptr);/*顯示一行字符 line為行號 范圍0,1 *ptr為首地址*/
17 void disp_1602(uchar line,uchar *add);/*顯示一行數字line為行號 范圍0,1 *add為首地址*/
18 code uchar disp1[16]={0,1,2,3,4,5,6,7,8,9,0,1,2,3,4,5};
19 code uchar disp2[]="ABCDEFGHIJKLMNOP";
20 //************************
21 void writecom(uchar c)
22 { delay(100);
23 1 EN=0;
24 1 RS=0;
25 1 RW=0;
26 1 _nop_();
27 1 P0=c;
28 1 EN=1;
29 1 _nop_();
30 1 EN=0;
31 1 }
32 //*************************
33 void writedata(uchar c)
34 { delay(100);
35 1 EN=0;
36 1 RS=1;
37 1 RW=0;
38 1 _nop_();
39 1 P0=c;
40 1 EN=1;
41 1 _nop_();
42 1 EN=0;
43 1 RS=1;
44 1 }
45 //*****************
46 void showchar(uchar pos,uchar c)
47 { uchar p;
48 1 if(pos>=0x10)
49 1 p=pos+0xb0;
50 1 else
51 1 p=pos+0x80;
52 1 writecom(p);
53 1
54 1 writedata(c);
55 1 }
C51 COMPILER V7.20 1602 06/19/2006 11:11:51 PAGE 2
56 //****************************
57 void showstring(uchar line,char *ptr)
58 { uchar l,i;
59 1 l=line<<4;
60 1 for(i=0;i<16;i++)
61 1 {showchar(l++,*(ptr+i));}
62 1 }
63 //***************************
64 void initlcd()
65 {
66 1 writecom(0x38);
67 1 writecom(0x38);
68 1 writecom(0x06);
69 1 writecom(0x0c);
70 1 writecom(0x01);
71 1 }
72 //*********************
73 void delay(uint j)
74 {
75 1 while(j--);
76 1 }
77 //***************************************
78 void disp_1602(uchar line,uchar *add)
79 {
80 1 uchar k;
81 1 for(k=0;k<16;k++)
82 1 showchar(16*line+k,*(add+k)+0x30);
83 1 }
84 //*************************
85 void delayms(uint j)
86 {
87 1 uchar i;
88 1 while(j--)
89 1 {
90 2 for(i=0;i<125;i++)
91 2 ;
92 2 }
93 1 }
94 //************************
95 main()
96 {
97 1 delayms(1);
98 1 initlcd();
99 1 disp_1602(0,disp1);
100 1 showstring(1,disp2);
101 1 while(1)
102 1 ;
103 1 }
104
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 271 ----
CONSTANT SIZE = 33 ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- 14
IDATA SIZE = ---- ----
BIT SIZE = ---- ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -