?? clock_show_time_data.lst
字號:
179 //*************************************************
C51 COMPILER V7.50 CLOCK_SHOW_TIME_DATA 07/25/2007 10:48:55 PAGE 4
180 uchar LCD_GET_FLAG(void)
181 {
182 1 SEND_IN=0xff;
183 1 LCD_RS=0;
184 1 LCD_RW=1;
185 1 LCD_E=1;
186 1 _nop_();
187 1 _nop_();
188 1 return(SEND_IN);
189 1 }
190 //*************************************************
191 //函數功能:在LCD第一行輸出“time: : :”
192 //輸入變量:*DATA
193 //輸出變量:無
194 //調用模塊:LCD_SEND_COMMAND(),LCD_SEND_DATA()
195 //*************************************************
196 void LCD_DISPLAY_COLON(uchar *DATA)
197 {
198 1 int x=1;
199 1 LCD_SEND_COMMAND(LCD_LINE1); //發送顯示位置命令
200 1 for(;x<(17)&&*DATA!='\0';x++)
201 1 {
202 2 LCD_SEND_DATA(*DATA++); //發送數據
203 2 }
204 1 }
205 //*************************************************
206 //函數功能:在LCD第二行輸出“date:”
207 //輸入變量:*DATA
208 //輸出變量:無
209 //調用模塊:LCD_SEND_COMMAND(),LCD_SEND_DATA()
210 //*************************************************
211 void LCD_DISPLAY_DATE(uchar *DATA)
212 {
213 1 int x=1;
214 1 LCD_SEND_COMMAND(LCD_LINE2); //發送顯示位置命令
215 1 for(;x<(17)&&*DATA!='\0';x++)
216 1 {
217 2 LCD_SEND_DATA(*DATA++); //發送數據
218 2 }
219 1 }
220 //*************************************************
221 //函數功能:顯示時,分,秒
222 //輸入變量:無
223 //輸出變量:無
224 //調用模塊:LCD_SEND_COMMAND(),LCD_SEND_DATA()
225 //*************************************************
226 void LCD_DISPLAY_STR(void)
227 {
228 1 LCD_SEND_COMMAND(LCD_LINE1+5); //發送顯示位置命令
229 1 LCD_SEND_DATA(DISPLAY[hour_2]); //發送時十位數據
230 1 LCD_SEND_COMMAND(LCD_LINE1+6); //發送顯示位置命令
231 1 LCD_SEND_DATA(DISPLAY[hour_1]); //發送時個位數據
232 1 LCD_SEND_COMMAND(LCD_LINE1+8); //發送顯示位置命令
233 1 LCD_SEND_DATA(DISPLAY[minute_2]); //發送分十位數據
234 1 LCD_SEND_COMMAND(LCD_LINE1+9); //發送顯示位置命令
235 1 LCD_SEND_DATA(DISPLAY[minute_1]); //發送分個位數據
236 1 LCD_SEND_COMMAND(LCD_LINE1+11); //發送顯示位置命令
237 1 LCD_SEND_DATA(DISPLAY[second_2]); //發送秒十位數據
238 1 LCD_SEND_COMMAND(LCD_LINE1+12); //發送顯示位置命令
239 1 LCD_SEND_DATA(DISPLAY[second_1]); //發送秒個位數據
240 1 LCD_SEND_COMMAND(LCD_LINE2+5); //發送顯示位置命令
241 1 LCD_SEND_DATA(DISPLAY[year_4]); //發送年千位數據
C51 COMPILER V7.50 CLOCK_SHOW_TIME_DATA 07/25/2007 10:48:55 PAGE 5
242 1 LCD_SEND_COMMAND(LCD_LINE2+6); //發送顯示位置命令
243 1 LCD_SEND_DATA(DISPLAY[year_3]); //發送年百位數據
244 1 LCD_SEND_COMMAND(LCD_LINE2+7); //發送顯示位置命令
245 1 LCD_SEND_DATA(DISPLAY[year_2]); //發送年十位數據
246 1 LCD_SEND_COMMAND(LCD_LINE2+8); //發送顯示位置命令
247 1 LCD_SEND_DATA(DISPLAY[year_1]); //發送個個位數據
248 1 LCD_SEND_COMMAND(LCD_LINE2+10); //發送顯示位置命令
249 1 LCD_SEND_DATA(DISPLAY[month_2]); //發送月十位數據
250 1 LCD_SEND_COMMAND(LCD_LINE2+11); //發送顯示位置命令
251 1 LCD_SEND_DATA(DISPLAY[month_1]); //發送月個位數據
252 1 LCD_SEND_COMMAND(LCD_LINE2+13); //發送顯示位置命令
253 1 LCD_SEND_DATA(DISPLAY[date_2]); //發送日十位數據
254 1 LCD_SEND_COMMAND(LCD_LINE2+14); //發送顯示位置命令
255 1 LCD_SEND_DATA(DISPLAY[date_1]); //發送日個位數據
256 1
257 1 }
258 //*****************************************
259 //
260 //定時器0的溢出中斷程序
261 //
262 //*****************************************
263 void timer0(void) interrupt 1 using 0
264 {
265 1 t++;
266 1 if(t==4000)
267 1 {
268 2 t=0;
269 2 second_1++;
270 2 if(second_1==10)
271 2 {
272 3 second_1=0;
273 3 second_2++;
274 3 if(second_2==6)
275 3 {
276 4 second_2=0;
277 4 minute_1++;
278 4 if(minute_1==10)
279 4 {
280 5 minute_1=0;
281 5 minute_2++;
282 5 if(minute_2==6)
283 5 {
284 6 minute_2=0;
285 6 hour_1++;
286 6 if(hour_1==10)
287 6 {
288 7 hour_1=0;
289 7 hour_2++;
290 7 }
291 6 if(hour_1==4&&hour_2==2)
292 6 {
293 7 hour_1=0;
294 7 hour_2=0;
295 7 date_1++;
296 7 if(date_1==10)
297 7 {
298 8 date_1=0;
299 8 date_2++;
300 8 }
301 7 if(date_2==3&&date_1==1)
302 7 {
303 8 date_2=0;
C51 COMPILER V7.50 CLOCK_SHOW_TIME_DATA 07/25/2007 10:48:55 PAGE 6
304 8 month_1++;
305 8 if(month_1==10)
306 8 {
307 9 month_1=0;
308 9 month_2++;
309 9 }
310 8 if(month_1==3&&month_2==1)
311 8 {
312 9 month_1=1;
313 9 month_2=0;
314 9 year_1++;
315 9 if(year_1==10)
316 9 {
317 10 year_1=0;
318 10 year_2++;
319 10 if(year_2==10)
320 10 {
321 11 year_2=0;
322 11 year_3++;
323 11 if(year_3==10)
324 11 {
325 12 year_3=0;
326 12 year_4++;
327 12 if(year_4==10)
328 12 {
329 13 year_4=0;
330 13 }
331 12 }
332 11 }
333 10 }
334 9 }
335 8 }
336 7
337 7
338 7 }
339 6 }
340 5 }
341 4
342 4 }
343 3
344 3 }
345 2
346 2 }
347 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 932 ----
CONSTANT SIZE = 37 ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 32 15
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 + -