?? lcda1098.lst
字號(hào):
C51 COMPILER V7.20 LCDA1098 10/18/2005 11:14:17 PAGE 1
C51 COMPILER V7.20, COMPILATION OF MODULE LCDA1098
OBJECT MODULE PLACED IN LCDA1098.OBJ
COMPILER INVOKED BY: c:\KEIL\C51\BIN\C51.exe LCDA1098.c DB OE
line level source
1
2 //-----------------------------------------------------------------------------
3 // 版權(quán)歸新華龍電子公司所有
4 //-----------------------------------------------------------------------------
5 //
6 // 文件名:LCD.c
7 //
8 // 編寫(xiě)人:LC
9 //
10 // 編寫(xiě)時(shí)間:2004/12/31
11 //
12 // 目標(biāo)器件: C8051F31x
13 //
14 // 編譯工具: Silicon Laboratories IDE
15 //
16 //-----------------------------------------------------------------------------
17 //程序描述:
18 // 這個(gè)程序可以在該液晶模塊上顯示二行字符:Welcom To NCD,www.xhl.com.cn
19 // 此程序用8位數(shù)據(jù)線來(lái)驅(qū)動(dòng)液晶
20 //
21 //-----------------------------------------------------------------------------
22 // 頭文件包含
23 //-----------------------------------------------------------------------------
24 #include <c8051f020.h>
25
26 //-----------------------------------------------------------------------------
27 //全局變量定義
28 //-----------------------------------------------------------------------------
29
30 //---------------------------------------------------
31 unsigned long x; //w w w . x h l . c o |
32 unsigned char xdata Netdata[15]={0x77,0x77,0x77,0x2e,0x78,0x68,0x6c,0x2e,0x63,0x6f,//|
33 0x6d,0x2e,0x63,0x6e};// |
34 //m . c n |
35 //-----------------------------------------------------
36 unsigned char xdata NCDdata[15]={0x57,0x65,0x6c,0x63,0x6f,0x6d,0x65,0x20,0x74,0x6f,//|
37 0x20,0x4e,0x43,0x44};// |
38 unsigned char *lcdpoint; //指向 lcddata數(shù)組的指針
39 unsigned char lcd_data_count; //要顯示的數(shù)據(jù)個(gè)數(shù)
40 //-----------------------------------------------------------------------------
41 // 函數(shù)定義
42 //-----------------------------------------------------------------------------
43 void SYSCLK_Init (void);
44 void PORT_Init (void);
45 void LCD_Init(void);
46 void SEND_LCD(unsigned char lcd_data_count);
47 //-----------------------------------------------------------------------------
48 // 主程序
49 //-----------------------------------------------------------------------------
50 void main (void)
51 {
52 1 static unsigned char data1,data2;
53 1 WDTCN = 0xde;
54 1 WDTCN = 0xad; //禁止看門狗定時(shí)器
55 1
C51 COMPILER V7.20 LCDA1098 10/18/2005 11:14:17 PAGE 2
56 1 SYSCLK_Init (); // 系統(tǒng)時(shí)鐘初始化
57 1
58 1 PORT_Init (); // 交叉開(kāi)關(guān)和通用I/O口初始化
59 1 while(1){
60 2 LCD_Init(); //LCD初始化
61 2 P6 = 0x0d; //準(zhǔn)備送數(shù)據(jù)
62 2 for(x=0;x<5000;x++);
63 2 lcdpoint=&NCDdata;
64 2 for(lcd_data_count=14;lcd_data_count>0;lcd_data_count--) //顯示第一行字符
65 2 {
66 3 data1=*lcdpoint;
67 3 P7 = data1;
68 3 P6 = 0x0c;
69 3 P6 = 0x0d;
70 3 lcdpoint++;
71 3 for(x=0;x<100;x++);
72 3 }
73 2 P6 = 0x09;
74 2 P7 = 0xc0;
75 2 P6 = 0x08;
76 2 P6 = 0x09;
77 2 //P6 = 0x0c;
78 2 //P6 = 0x0d;
79 2 for(x=0;x<1000;x++);
80 2 lcdpoint=&Netdata;
81 2 for(lcd_data_count=14;lcd_data_count>0;lcd_data_count--) //顯示第一行字符
82 2 {
83 3 data1=*lcdpoint;
84 3 P7 = data1;
85 3 P6 = 0x0c;
86 3 P6 = 0x0d;
87 3 lcdpoint++;
88 3 for(x=0;x<100;x++);
89 3 }
90 2 }
91 1 }
*** WARNING C280 IN LINE 52 OF LCDA1098.C: 'data2': unreferenced local variable
92
93 //-----------------------------------------------------------------------------
94 //函數(shù)名稱: SYSCLK_Init ()
95 //函數(shù)功能: 系統(tǒng)時(shí)鐘初始化
96 //入口參數(shù): 無(wú)
97 //出口參數(shù): 無(wú)
98 //全局變量引用: 無(wú)
99 //調(diào)用模塊: 無(wú)
100 //-----------------------------------------------------------------------------
101 //
102 void SYSCLK_Init (void)
103 {
104 1
105 1 OSCICN = 0x05; // 系統(tǒng)時(shí)鐘初始化為片內(nèi)的 24.5MHz / 8
106 1
107 1 }
108
109 //-----------------------------------------------------------------------------
110 //函數(shù)名稱: PORT_Init ()
111 //函數(shù)功能: 通用I/O口及交叉開(kāi)關(guān)初始化
112 //入口參數(shù): 無(wú)
113 //出口參數(shù): 無(wú)
114 //全局變量引用: 無(wú)
115 //調(diào)用模塊: 無(wú)
116 //-----------------------------------------------------------------------------
C51 COMPILER V7.20 LCDA1098 10/18/2005 11:14:17 PAGE 3
117
118 void PORT_Init (void)
119 {
120 1
121 1 XBR0 = 0x00; // 沒(méi)有選擇數(shù)字外設(shè)
122 1 P74OUT = 0xff; // P0口設(shè)為推挽方式
123 1 }
124 //-----------------------------------------------------------------------------
125 // //函數(shù)名稱: LCD_Init ()
126 //函數(shù)功能: LCD初始化
127 //入口參數(shù): 無(wú)
128 //出口參數(shù): 無(wú)
129 //全局變量引用: 無(wú)
130 //調(diào)用模塊: 無(wú)
131 //-----------------------------------------------------------------------------
132 void LCD_Init(void)
133 {
134 1 P6 = 0x09;
135 1 for(x=0;x<50000;x++);
136 1 //P7 = 0x30; /*一行顯示*/
137 1 P7 = 0x38; /*兩行顯示*/
138 1 P6 = 0x08;
139 1 P6 = 0x09;
140 1 for(x=0;x<1000;x++);
141 1 P7 = 0x0e; /*開(kāi)顯示,開(kāi)光標(biāo),字符不閃爍*/
142 1 P6 = 0x08;
143 1 P6 = 0x09;
144 1 for(x=0;x<1000;x++);
145 1 P7= 0x06; /*I/D=1,AC自動(dòng)增1;S=0,整體顯示不移動(dòng)*/
146 1 P6 = 0x08;
147 1 P6 = 0x09;
148 1 for(x=0;x<5000;x++);
149 1 P7 = 0x01; /*清除DDRAM,置AC=0*/
150 1 P6 = 0x08;
151 1 P6 = 0x09;
152 1 for(x=0;x<5000;x++);
153 1
154 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 657 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = 30 ----
PDATA SIZE = ---- ----
DATA SIZE = 10 ----
IDATA SIZE = ---- ----
BIT SIZE = ---- ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 1 WARNING(S), 0 ERROR(S)
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -