📄 main.lst
字号:
C51 COMPILER V7.50 MAIN 07/20/2007 15:04:03 PAGE 1
C51 COMPILER V7.50, COMPILATION OF MODULE MAIN
OBJECT MODULE PLACED IN main.OBJ
COMPILER INVOKED BY: D:\Keil\C51\BIN\C51.EXE main.c BROWSE DEBUG OBJECTEXTEND
line level source
1 #include <reg52.h>
2 #include <intrins.h>
3 sbit cs = P1^5;
4 sbit wr = P1^3;
5 sbit da = P1^2;
6 #define LCM067_CS_UP cs=1
7 #define LCM067_CS_DOWN cs=0
8 #define LCM067_WR_UP wr=1
9 #define LCM067_WR_DOWN wr=0
10 #define LCM067_DATA_UP da=1
11 #define LCM067_DATA_DOWN da=0
12 #define LCM067_DISPLAY_OFF 0x0002
13 #define LCM067_DISPLAY_ON 0x0003
14 #define LCM067_MODULE_INIT 0x0029
15 #define LCM067_32768 0x0018
16 #define LCM067_EN_OSC 0x0001
17 void delay2us(unsigned char dly) {
18 1 while (--dly);
19 1 }
20 void LCMWriteCom(unsigned int uCom) {
21 1 unsigned int temp = 0x0800;
22 1 unsigned char i;
23 1 uCom += 1024;
24 1 uCom <<= 1;
25 1 LCM067_CS_UP;
26 1 _nop_();_nop_();_nop_();_nop_();_nop_();
27 1 LCM067_CS_DOWN;
28 1 _nop_();_nop_();_nop_();_nop_();_nop_();
29 1 LCM067_WR_DOWN;
30 1 _nop_();_nop_();_nop_();_nop_();_nop_();
31 1 for (i=0; i<12; i++) {
32 2 if (temp & uCom) LCM067_DATA_UP;
33 2 else LCM067_DATA_DOWN;
34 2 LCM067_WR_UP;
35 2 _nop_();_nop_();_nop_();_nop_();_nop_();
36 2 LCM067_WR_DOWN;
37 2 _nop_();_nop_();_nop_();_nop_();_nop_();
38 2 temp >>= 1;
39 2 }
40 1 LCM067_CS_UP;
41 1 LCM067_WR_UP;
42 1 }
43
44 void LCMInit() {
45 1 // P6DIR |= (BIT0 + BIT1 + BIT2);
46 1 LCM067_CS_UP;
47 1 LCM067_WR_UP;
48 1 LCMWriteCom(LCM067_MODULE_INIT);
49 1 LCMWriteCom(LCM067_32768);
50 1 LCMWriteCom(LCM067_EN_OSC);
51 1 LCMWriteCom(LCM067_DISPLAY_ON);
52 1 }
53 void LCMWriteData(unsigned int uData) {
54 1 unsigned int temp = 0x1000;
55 1 unsigned char i;
C51 COMPILER V7.50 MAIN 07/20/2007 15:04:03 PAGE 2
56 1 uData += (0x0400 + 0x1000);
57 1 LCM067_CS_UP;
58 1 _nop_();_nop_();_nop_();_nop_();_nop_();
59 1 LCM067_CS_DOWN;
60 1 _nop_();_nop_();_nop_();_nop_();_nop_();
61 1 LCM067_WR_DOWN;
62 1 _nop_();_nop_();_nop_();_nop_();_nop_();
63 1 for (i=0; i<13; i++) {
64 2 if (temp & uData) LCM067_DATA_UP;
65 2 else LCM067_DATA_DOWN;
66 2 LCM067_WR_UP;
67 2 _nop_();_nop_();_nop_();_nop_();_nop_();
68 2 LCM067_WR_DOWN;
69 2 _nop_();_nop_();_nop_();_nop_();_nop_();
70 2 temp >>= 1;
71 2 }
72 1 LCM067_CS_UP;
73 1 LCM067_WR_UP;
74 1 }
75 int main()
76 {
77 1 delay2us(200);
78 1 delay2us(200);
79 1 delay2us(200);
80 1 delay2us(200);
81 1 delay2us(200);
82 1 LCMInit();
83 1 LCMWriteData(0x000f);
84 1 LCMWriteData(0x002f);
85 1 LCMWriteData(0x001f);
86 1 // LCMWriteData(0x0000);
87 1 // LCMWriteData(0x0020);
88 1 while (1);
89 1 return 0;
90 1 }
91
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 252 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- ----
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 + -