?? 12.lst
字號:
C51 COMPILER V7.06 12 03/25/2008 09:34:31 PAGE 1
C51 COMPILER V7.06, COMPILATION OF MODULE 12
OBJECT MODULE PLACED IN 12.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE 12.c BROWSE DEBUG OBJECTEXTEND
stmt level source
1 #include <sst89E564RD.H>
2 #include <intrins.h>
3
4 typedef unsigned char BYTE;
5 typedef unsigned int WORD;
6 typedef bit BOOL ;
7
8 sbit rs = P2^0; //
9 sbit rw = P2^1;
10 sbit ep = P2^2;
11
12 BYTE code dis1[] ={"we"};// {"welcome!"};
13 BYTE code dis2[] = {"me"};//{"www.willar.com"};
14
15 delay(BYTE ms)
16 { // 延時子程序
17 1 BYTE i;
18 1 while(ms--)
19 1 {
20 2 for(i = 0; i< 250; i++)
21 2 {
22 3 _nop_();
23 3 _nop_();
24 3 _nop_();
25 3 _nop_();
26 3 }
27 2 }
28 1 }
29
30 BOOL lcd_bz()
31 { // 測試LCD忙碌狀態
32 1 BOOL result;
33 1 rs = 0;
34 1 rw = 1;
35 1 ep = 1;
36 1 _nop_();
37 1 _nop_();
38 1 _nop_();
39 1 _nop_();
40 1 result = (BOOL)(P0 & 0x80);
41 1 ep = 0;
42 1 return result;
43 1 }
44
45 lcd_wcmd(BYTE cmd)
46 { // 寫入指令數據到LCD
47 1 while(lcd_bz());
48 1 rs = 0;
49 1 rw = 0;
50 1 ep = 0;
51 1 _nop_();
52 1 _nop_();
53 1 P0 = cmd;
54 1 _nop_();
55 1 _nop_();
C51 COMPILER V7.06 12 03/25/2008 09:34:31 PAGE 2
56 1 _nop_();
57 1 _nop_();
58 1 ep = 1;
59 1 _nop_();
60 1 _nop_();
61 1 _nop_();
62 1 _nop_();
63 1 ep = 0;
64 1 }
65
66 lcd_pos(BYTE pos)
67 { //設定顯示位置
68 1 lcd_wcmd(pos | 0x80);
69 1 }
70
71 lcd_wdat(BYTE dat)
72 { //寫入字符顯示數據到LCD
73 1 while(lcd_bz());
74 1 rs = 1;
75 1 rw = 0;
76 1 ep = 0;
77 1 P0 = dat;
78 1 _nop_();
79 1 _nop_();
80 1 _nop_();
81 1 _nop_();
82 1 ep = 1;
83 1 _nop_();
84 1 _nop_();
85 1 _nop_();
86 1 _nop_();
87 1 ep = 0;
88 1 }
89
90 lcd_init()
91 { //LCD初始化設定
92 1 lcd_wcmd(0x38); //
93 1 delay(1);
94 1 lcd_wcmd(0x0c); //
95 1 delay(1);
96 1 lcd_wcmd(0x06); //
97 1 delay(1);
98 1 lcd_wcmd(0x01); //清除LCD的顯示內容
99 1 delay(1);
100 1 }
101
102 main()
103 {
104 1 BYTE i;
105 1 lcd_init(); // 初始化LCD
106 1 delay(10);
107 1 lcd_pos(4); // 設置顯示位置為第一行的第5個字符
108 1 i = 0;
109 1 while(dis1[i] != '\0')
110 1 { // 顯示字符"welcome!"
111 2 lcd_wdat(dis1[i]);
112 2 i++;
113 2 }
114 1 lcd_pos(0x41); // 設置顯示位置為第二行第二個字符
115 1 i = 0;
116 1 while(dis2[i] != '\0')
117 1 {
C51 COMPILER V7.06 12 03/25/2008 09:34:31 PAGE 3
118 2 lcd_wdat(dis2[i]); // 顯示字符" www.willar.com "
119 2 i++;
120 2 }
121 1 while(1); //
122 1 }
123
124
*** WARNING C316 IN LINE 124 OF 12.c: unterminated conditionals
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 193 ----
CONSTANT SIZE = 6 ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- ----
IDATA SIZE = ---- ----
BIT SIZE = ---- 1
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 1 WARNING(S), 0 ERROR(S)
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -