📄 lcd1602.lst
字号:
143 1
144 1 lck = 0;
145 1 P1 = 0x00;//LCD_EN = 0;
146 1 lck = 1;
147 1 }
148
149 /*******************************************************************/
150 /* */
-
151 /* 设定显示位置 */
-
152 /* */
-
153 /*******************************************************************/
154
155 void lcd_pos(uchar pos)
156 {
157 1 lcd_wcmd(pos|0x80); //数据指针=80+地址变量
C51 COMPILER V7.06 LCD1602 04/18/2009 11:51:07 PAGE 4
158 1 }
159
160 /*******************************************************************/
161 /* */
-
162 /* LCD初始化设定 */
-
163 /* */
-
164 /*******************************************************************/
165
166 void lcd_init()
167 {
168 1 delay(15); //等待LCD电源稳定
169 1 lcd_wcmd(0x38); //16*2显示,5*7点阵,8位数据
170 1 delay(5);
171 1 lcd_wcmd(0x38);
172 1 delay(5);
173 1 lcd_wcmd(0x38);
174 1 delay(5);
175 1
176 1 lcd_wcmd(0x0c); //显示开,关光标
177 1 delay(5);
178 1 lcd_wcmd(0x06); //移动光标
179 1 delay(5);
180 1 lcd_wcmd(0x01); //清除LCD的显示内容
181 1 delay(5);
182 1 }
183
184 /*******************************************************************/
185 /* */
-
186 /* 清屏子程序 */
-
187 /* */
-
188 /*******************************************************************/
189
190 void lcd_clr()
191 {
192 1 lcd_wcmd(0x01); //清除LCD的显示内容
193 1 delay(5);
194 1 }
195
196 /*******************************************************************/
197 /* */
-
198 /* 闪动子程序 */
-
199 /* */
-
200 /*******************************************************************/
201
202 void flash()
203 {
204 1 delay(600); //控制停留时间
205 1 lcd_wcmd(0x08); //关闭显示
206 1 delay(100); //延时
207 1 lcd_wcmd(0x0c); //开显示
208 1 delay(100);
209 1 lcd_wcmd(0x08); //关闭显示
210 1 delay(100); //延时
C51 COMPILER V7.06 LCD1602 04/18/2009 11:51:07 PAGE 5
211 1 lcd_wcmd(0x0c); //开显示
212 1 delay(100);
213 1 lcd_wcmd(0x08); //关闭显示
214 1 delay(100); //延时
215 1 lcd_wcmd(0x0c); //开显示
216 1 delay(100);
217 1 }
218
219 /*******************************************************************/
220 /* */
-
221 /* 主程序 */
-
222 /* */
-
223 /*******************************************************************/
224
225 /*main()
226 {
227 uchar i,j;
228 uchar temp=123;
229 uchar tj[3];
230 delay(10);
231 lcd_init(); //初始化LCD
232
233 while(1)
234 {
235 lcd_clr();
236 tj[0]=temp/100+48;
237 tj[1]=(temp/10)%10+48;
238 tj[2]=temp%10+48;
239
240 lcd_pos(0x00); //设置显示位置为第一行第17列
241 i = 0;
242
243 while(dis1[i] != '\0')
244 { //显示字符" Happy "
245 lcd_wdat(dis1[i]);
246 i++;
247 }
248
249 lcd_pos(0x40); //设置显示位置为第二行第17列
250 i = 0;
251
252 while(dis2[i] != '\0')
253 {
254 lcd_wdat(dis2[i]); //显示字符" NEW YEAR "
255 i++;
256 }
257
258 lcd_pos(0x02);
259 i=0;
260 while(tj[i] != '\0')
261 {
262 lcd_wdat(tj[i]); //显示字符" NEW YEAR "
263 i++;
264 }
265 delay(1000);
266 for(j=0;j<16;j++) //向左移动16格
267 {
268 lcd_wcmd(0x18); //字符同时左移一格
269 delay(100); //控制移动时间
C51 COMPILER V7.06 LCD1602 04/18/2009 11:51:07 PAGE 6
270 }
271
272 flash(); //闪动三次
273
274 }
275 }*/
276
277
278 /**********************************结束*****************************/
279
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 280 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- ----
IDATA SIZE = ---- ----
BIT SIZE = ---- 1
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -