我有三个问题,关于单片机程序的,第一个,采用循环结构,试编制能延时50ms的子程序,第二个,如下,

把累加器A中的二进制数转变成3位BCD码,并将百十个位数分别存放在内部RAM的50H,51H,52H单元中。第三题,在内部RAM中,有一个以BLOCK为起始地址的数据块,块放在LEN单元中,请用查表指令编写程序,先检查它们是否是十六进制数中的A~F,若是,则把它们变为ASCII码,若不是,则把他们变为00H。 赶紧的,我在线等,我知道对于高手而言肯定是小意思,拜托拜托!!

1、循环子程序,延时50ms。
DEL: MOV R7,#100
LP: MOV R6,#248
DJNZ R6,$
DJNZ R7,LP
RET

2、把累加器A中的二进制数转变成3位BCD码,并将百十个位数分别存放在内部RAM的50H,51H,52H单元中。
MOV B,#64H
DIV AB
MOV 50H,A
MOV A,B
MOV B,#0AH
DIV AB
MOV 51H,A
MOV 52H,B

3、在内部RAM中,有一个以BLOCK为起始地址的数据块,块放在LEN单元中,请用查表指令编写程序,先检查它们是否是十六进制数中的A~F,若是,则把它们变为ASCII码,若不是,则把他们变为00H。
这道题要写一会儿。
温馨提示:内容为网友见解,仅供参考
无其他回答

我有三个问题,关于单片机程序的,第一个,采用循环结构,试编制能延时50ms...
1、循环子程序,延时50ms。DEL:MOVR7,#100 LP:MOVR6,#248 DJNZR6,DJNZR7,LP RET 2、把累加器A中的二进制数转变成3位BCD码,并将百十个位数分别存放在内部RAM的50H,51H,52H单元中。MOV B,#64H DIV AB MOV 50H,A MOV A,B MOV B,#0AH DIV AB MOV 5...

通过循环结构,编写一段延时0.5s的程序(单片机的)
;时钟晶振12MHZ,CALL delay_500ms 即可 delay_500ms:MOV R3,#5 LOOP0:MOV R1,#64H LOOP1:MOV R0,#0F9H LOOP2:NOP NOP DJNZ R0,LOOP2 DJNZ R1,LOOP1 DJNZ R3,LOOP0 RET

设单片机8051的时钟频率为MHZ,试编写Ms的软件延时程序。
例如:设计一个延时1ms的延时子程序ys1ms,设单片机8051的时钟频率为12MHZ。则单片机8051一个机器周期=12T=12\/f=12\/12MHZ=1微秒 程序和延时时间计算如下:ys1ms: MOV R7,#4 ; 单周期1uS ( 晶振为12MHz)DEL1: MOV R6,#123 ; 单周期1uS DEL2: DJNZ R6,DEL2 ; 双...

单片机实训总结范文5篇
显示管的屏幕上涂有一层荧光粉,电子枪发射出的电子击打在屏幕上,使被击打位置的荧光粉发光,从而产生了图像,每一个发光点又由“红”“绿”“蓝”三个小的发光点组成,这个发光点也就是一个象素。由于电子束是分为三条的,它们分别射向屏幕上的这三种不同的发光小点,从而在屏幕上出现绚丽多彩的画面。显示器显示...

和延时程序,最好简单点儿。基于单片机设计的红绿灯电路图。很狠很急...
嘿嘿 俺来帮你设计一个延时子程序的一个入口,送给入口的不同的参数 就可以得到不同的延时时间了。可以循环嵌套结构:假设单片机晶振频率为12MHZ YS: MOV R6,#200 YS1: MOV R5,#250 YS2: NOP NOP DJNZ R5,YS2 DJNZ R6,YS1 DJNZ R7,YS RET 延时时间=((4×R5)×...

试用do...while循环结构编写一段延时程序。
再次进入循环体,直到a的值为0,退出循环体。由于整个过程没做任何事,只是消耗了单片机的运行时间,所以这是一个延时程序。do...while语句与while语句的区别是:在do...while循环结构中,先执行一次循环体,再判断是否满足循环条件:而在while循环结构中,先判断是否满足循环条件,再执行一次循环体。

单片机循环程序有哪几种基本结构
1、DJNZ指令,常见延时程序。DELAY:MOV R2,#250 DJNZ R2,RET 2、CJNE指令,常见处理数据块。MOV DPTR,#1000H MOV R0,#30H LOOP:CLR A MOVX A,@DPTR MOV @R0,A INC DPTR INC R0 CJNE R0,#50H,LOOP RET 3、直接跳转,用LJMP或SJMP,常见主循环 MAIN:JB P1.0,MAIN1 CLR P0.0 SJMP ...

单片机的延时函数如何编写准确时间
将汇编语言与C51结合起来,充分发挥各自的优势,无疑是单片机开发人员的最佳选择。 2.3 使用示波器确定延时时间 利用示波器来测定延时程序执行时间。方法如下:编写一个实现延时的函数,在该函数的开始置某个I\/O口线如P1.0为高电平,在函数的最后清P1.0为低电平。在主程序中循环调用该延时函数,通过示波器测量P1.0引脚上...

单片机流水灯循环前要不要调用延时子程序
单片机流水灯循环前不百一定要调用延时的,如果用定时器来调整时间的话,延时子程序就没有必要了。时钟周期如果是12Mhz的话,每个时钟周期MC=6*2/12M=1us,所以延迟是让机器数到100万次,这个公式在24MHz时适用于它本身,它将是200万次。c语言的循环次数自己算,每个指令都有一个周期,所以楼上...

51单片机中如何用汇编语言编写流水灯
END;汇编程序结束 扩展资料: 实现流水灯的三个方法: 第一种,总线方法实现流水灯。这是一种比较笨但又最易理解的方法,采用顺序程序结构,用位指令控制P1口的每一个位输出高低电平,加上延时函数,即可控制每个LED灯的亮灭。 第二种,移位方法实现流水灯采用循环程序结构编程。首先在程序开始给P1.0口送一个低电平...

相似回答
大家正在搜