求高人指导~~单片机T1定时一分钟的汇编程序~~ 下面是我自己写的程序,请大家改正~~谢谢了!!! ORG 0;1、漏了开机入口地址,最好加上AJMP MAINORG 001BHLJMP TIME1INTORG 0050HMAIN:MOV SP,#60HMOV R7,#250MOV R6,#4MOV TMOD,#10HMOV TL1,#0A0HMOV TH1,#15H;2、笔误,应该是15A0H,60000次计数。SETB ET1SETB EASETB TR1SJMP$TIME1INT:MOV TL1,#0A0HMOV TH1,#15H;3、非自动重装载,需再次赋初值。(否则为65536次)DJNZ R7,RETURNMOV R7,#250DJNZ R6,RETURNMOV R6,#4;4、原来的程序,只能定1分钟,仅翻转一次。CLR TR1;4、增加上一句,去掉下面两句。CLR ET1CPL P1.0RETURN:RETIEND
单片机,循环程序,8个2极管,左边4个每隔1S亮,右边4个每隔2S亮,汇编语言编。求解。 左边4个LED每隔1S亮1个。从P1.0到P1.3。右边4个LED每隔2S亮1个。从P1.4到P1.7。org 0000hjmp startorg 4000hstart:mov A,#0FEH;mov R2,#4;LOOP1:mov p1,A;左边4个LED每隔1S亮1个。从P1.0到P1.3。call delay1s;调用定时1s程序RL A;djnz R2,LOOP1mov R2,#4;LOOP2:mov p1,A;右边4个LED每隔2S亮1个。从P1.4到P1.7。call delay1s;调用定时1s程序call delay1s;调用定时1s程序RL A;djnz R2,LOOP2jmp startdelay1s:mov r7,#20lpr7:call delay50ms;djnz r7,lpr7retdelay50ms:mov TMOD,#01Hmov TH0,#(65536-50000)/256;mov TL0,#(65536-50000)mod 256;setb TR0;jnb TF0,$clr TF0;retjmp$end
51单片机,定时器方式1的1s定时,怎么编程 本程序来自《单片机C语言程序设计实训100例—基于8051+Proteus仿真》没用中断。includeincludedefine uchar unsigned chardefine uint unsigned intvoid main(){uchar T_Count=0;P0=0xfe;P2=0xfe;TMOD=0x10;定时器1方式1TH1=(65535-50000)/256;定时50000us=50msTL1=(65535-50000)%256;TR1=1;启动定时器1while(1){if(TF1=1)/查询方式定时时间e799bee5baa6e58685e5aeb931333332623430到后TF1=1{TF1=0;TH1=(65535-50000)/256;TL1=(65535-50000)%256;if(+T_Count=20)/50ms*20=1000ms{P0=_crol_(P0,1);P2=_crol_(P2,1);T_Count=0;}}}}