<p><img src="https://pic.wenwen.soso.com/p/20190221/20190221012857-31083967_jpeg_500_330_38077.jpg"></p> <p> </p> <p>89c51 led电子钟</p> <p>参考链接: <a href="http://wenwen.soso.com/z/urlalertpage.e?sp=shttp%3a%2f%2fwww.51picavr.com%2fnews%2fc8%2f2009-01%2f109.htm" target="_blank">http://www.51picavr.com/news/c8/2009-01/109.htm</a></p> <p> </p> <p>*application note e6000 icexplorer ***************</p> <p>* title: for colk_time *</p> <p>* version: 00 *</p> <p>* last updated: *</p> <p>* mcu: at89c91 *</p> <p>* for: www.picavr.com *</p> <p>***************************************************</p> <p> k1 bit p3.2</p> <p> k2 bit p3.4</p> <p> k3 bit p3.3</p> <p> k4 bit p3.5</p> <p> c_hour equ 23h</p> <p> c_minute equ 24h</p> <p> c_second equ 25h</p> <p> on_hour equ 26h</p> <p> on_minute equ 27h</p> <p> off_hour equ 28h</p> <p> off_minute equ 29h</p> <p> org 0000h</p> <p> ajmp main</p> <p> org 0003h</p> <p> ajmp wint0</p> <p> org 000bh</p> <p> ajmp wto</p> <p> org 0030h</p> <p>main: mov sp,#50h</p> <p> clr 00h</p> <p> mov 21h,#0</p> <p> mov 22h,#0</p> <p> mov c_hour,#0</p> <p> mov c_minute,#0</p> <p> mov c_second,#0</p> <p> mov on_hour,#0</p> <p> mov on_minute,#0</p> <p> mov off_hour,#0</p> <p> mov off_minute,#0</p> <p> mov th0,#05</p> <p> mov tl0,#05</p> <p> mov tmod,#02h</p> <p> setb ea</p> <p> setb ex0</p> <p> clr et0</p> <p> clr tr0</p> <p> clr it0</p> <p>m: mov a,c_hour</p> <p> cjne a,on_hour,off_time</p> <p> mov a,c_minute</p> <p> cjne a,on_minute,off_time</p> <p> setb p3.7</p> <p> ajmp next</p> <p>off_time: mov a,c_hour</p> <p> cjne a,off_hour,next</p> <p> mov a,c_minute</p> <p> cjne a,off_minute,next</p> <p> clr p3.7</p> <p>next: jnb 00h,m</p> <p> acall disp1</p> <p> ajmp m</p> <p> </p> <p>tab: db 0c0h,0f9h,0a4h,0b0h,99h</p> <p> db 92h,82h,0f8h,80h,90h</p> <p> </p> <p>disp1: mov r0,c_hour</p> <p> mov dptr,#tab</p> <p> mov a,r0</p> <p> swap a</p> <p> anl a,#0fh</p> <p> movc a,@a+dptr</p> <p> mov p1,a</p> <p> clr p2.0</p> <p> acall dl ;send dispplay hour hight bit</p> <p> setb p2.0</p> <p> mov a,r0</p> <p> anl a,#0fh</p> <p> movc a,@a+dptr</p> <p> mov p1,a</p> <p> clr p2.1</p> <p> acall dl</p> <p> setb p2.1 ;send dispplay hour low bit</p> <p> mov r1,c_minute</p> <p> mov a,r1</p> <p> swap a</p> <p> anl a,#0fh</p> <p> movc a,@a+dptr</p> <p> mov p1,a</p> <p> clr p2.2</p> <p> acall dl</p> <p> setb p2.2 ;send dispplay minute hight bit</p> <p> mov a,r1</p> <p> anl a,#0fh</p> <p> movc a,@a+dptr</p> <p> mov p1,a</p> <p> clr p2.3</p> <p> acall dl</p> <p> setb p2.3 ;send display minute low bit</p> <p> mov r2,c_second </p> <p> mov a,r2</p> <p> swap a</p> <p> anl a,#0fh</p> <p> movc a,@a+dptr</p> <p> mov p1,a</p> <p> clr p2.4</p> <p> acall dl</p> <p> setb p2.4 ;send dispplay second hight bit</p> <p> mov a,r2</p> <p> anl a,#0fh</p> <p>*****************************************************************************************</p> <p> </p>