谁能给我解释一下下面的这个单片机汇编程序是什么意思?请服具体些

作者&投稿:时齐 (若有异议请与网页底部的电邮联系)
单片机汇编程序谁给我讲下啥意思~

; FLAG 20H EXPRESS THE 0.5S TIME ARRIVED.
; FLAG 21H EXPRESS THE LED LIGHTED.
ORG0000h ;code位置0000h 一般为开机跳转到程序开始位置。这样做是为了给中断向量表留些空间。
AJMPmain0 ;如上 直接跳转到0030h
ORG0030h ;此处为0030位置
MAIN0: ;主程序位置
CLR21H;清标志
main:
MOVC,P0.0;检测按键 ;p00接的是一个按键。
JCmain ;如果c寄存器是1 继续监测p00(死循环),如果按键被按下,p00清零,程序继续往下走。
MOVR6,#200;设定延时
MOVR7,#200
TT0:
JNB21H,TT2;检测灯状态 ;如果灯状态寄存器为1 ,跳转到tt2
tt:
MOVC,P0.0;检测按键 ;继续监视按键P00
JNCtt1 ;如果没被按下,跳转到tt1,否则继续下一条

JNB20H,MAIN;检测时间标志 ;如果20H寄存器为0 跳转到main
CLR20H
AJMPTT3
TT2: ;此处只能跳转到。正常的程序无法到这里。
MOVc,P0.0;检测按键 ;同样是监视按键p00
JNCtt2
TT3:
CPL21H;改变灯状态
CPLp2.0 ;灯应该接在p20
AJMPmain
TT1:NOP;延时但不是子程序 ;执行几步NOP(no operation)
NOP
NOP
NOP
NOP
NOP
DJNZR6,TT
MOVR6,#200
DJNZR7,TT
MOVR7,#200
SETB20H ;置1
AJMPTT ;跳到tt 继续监视按键。
END


程序写的乱七八糟,简单的功能写这么多。一句一句解释好像没什么意义。

无论什么实践活动,一定要自己试试,把上面的程序编程自己的语句一点不困难。
楼主努力啊。
good good study,day day up!

ORG 00H ;起始地址STRAT ;程序已开始初始一些所需要的变量,如进位c清零等 MOV A,#0FFH ;累加器的八位全置一(0ffh),发光二极管全熄灭 CLR C ;进位c被清零,c=0 MOV R1,#8 ;R1等于八,循环八次(右移八次),用R1做计数器RIGHT RRC A ;把进位c在累加器A中从左到右轮换一次 MOV P2,A ;输出到P2口 CALL DELAY ;调用延时子程序,延时一秒 DJNZ R1,RIGHT ;R1减一如果不为零,跳回RIGHT循环执行 MOV R2,#7 ; R2=7为向左流动设置次数LEFT RLC A ;把进位C在累加器中从左向右轮换一位 MOV P2,A ; 输出至P2口 CALL DELAY ;调用延时子程序延时1秒 DJNZ R2,LEFT;是否左移了七次,如果不是则跳回LEFT继续执行 JMP START ;跳回一开始重复执行该流水灯程序DELAY MOV R3,#20D1: MOV R4,#100D2: MOV R5,#248 DJNZ R5,$ ;R5减一如果不为零就执行本行。时间计算【1+(248×2)】×100×20 DJNZ R4,D2 ;上一个语句是执行一次耗费两个周期,要执行248次 DJNZ R3,D1 ;所以时间就是248×2,MOV R5,#248这个语句是一个周期 ;所以为248×2+1,DJNZ R4,D2这个是R4减一次就执行D2 RET ; DJNZ R3,D1同理 所以是(1+248×2)×100×20个机器周期 END ;如果是按12兆的晶振(一个机器周期1微妙)来算那 时间等于(1+248×2)×100×20个机器周期×1微妙=1000000微妙=1秒,如果是11.0592兆的晶振那 时间等于(1+248×2)×100×20×12/11.0592微妙,也就是说一个机器周期的时间等于12/(晶振的频率)。这个是P2口 8个灯的循环亮程序;顺便帮你写个c语言的程序,高手勿喷啊 #include #include #define uint unsigned int #define uchar unsigned char void delay(); void main() { uchar a; P2=0x01; while(1){ for(a=0;a0;s--) for(i=100;i>0;i--); }c语言就不多说啦,仅供参考。不过我觉得还是用c语言单片机编程简单。 电路连接见仿真图

应该是个液晶显示的程序,这里最主要的不是读程序,而是首先要很好的了解你使用的液晶的硬件资料,然后再根据自己的理解去写程序,,,现在的朋友都已经很好了,一般网上都会有相关的参考程序或者购买LCD时有附带的演示代码,,想当初我在搞这些东西的时候,就只有一份器件资料,只能靠自己的理解在那里反复琢磨,但最后还是调试出来的(有些题外话了)。

当然,如果有参考代码在的话,会让你在有很好的了解期间基础上,事半功倍,读代码,一般局部的读,理解局部功能了,然后在一行行看,比如:
HE2: MOV DPTR, #PCC
MOVX A, @DPTR
JNB ACC.7, HE2
这里应该是读“忙”标志位

明显是个液晶模块显示程序,要根据你所选用的显示模块资料和硬件电路图来看。没人会告诉你每一句的意思的,这得自己下功夫看。

这是个游戏的切入 点汇编代码 L平台的 我翻译了 阁下可否看明白


请能解释一下下面这段数字的含义?
8.我发誓,我无法,儿要离开爸,幺儿才二三四岁要离开爸,我无法无法,我怕离婚,幺儿永久是我的,怕儿总是歧视我。9.我发誓,我无法爱已情去醒醒吧,多爱要生事,一起想法,请顺道来吧,我抱歉不要再纠缠我,把爱就还给我。10.我发誓,我不愿放弃北京的工作,要爱爱生世,一起去吧,请考虑...

有大佬能帮我解释一下这个梦是什么意思啊?
梦境往往是人类大脑在休息状态下的自我调节和整合,可能与日常生活中的情感和经历有关。基于梦境的个人情境和背景,每个梦境的含义可能会有所不同。因此,下面提供的解释仅供参考,你可以根据自己的实际情况进行思考。梦见喜欢的人的亲人去世可能是因为你在日常生活中对喜欢的人的亲人感到担忧,或者你对喜欢...

谁能给我解释一下3g网络是什么意思。3g时代是不是就意味着手机无限流量...
谁能给我解释一下3g网络是什么意思。3g时代是不是就意味着手机无限流量上网。  我来答 5个回答 #热议# 《请回答2021》瓜分百万奖金 百度网友b483fe147 2008-11-26 · TA获得超过489个赞 知道小有建树答主 回答量:429 采纳率:0% 帮助的人:0 我也去答题访问个人页 关注 展开全部 3G,...

机械制图 CAD 中的形位公差符号谁能给我解释一下都是什么意思?
5、线轮廓度 符号为一上凸的曲线(⌒),是限制实际曲线对理想曲线变动量的一项指标。它是对非圆曲线的形状精度要求。6、面轮廓度 符号为上面为一半圆下面加一横,是限制实际曲面对理想曲面变动量的一项指标,它是对曲面的形状精度要求。形位公差包括形状公差和位置公差。任何零件都是由点、线、面构成...

勿意,勿必,勿固,勿我谁能解释一下?谢谢
“勿意”的意思是指做事不能凭空猜测主观臆断。“勿必”的意思是指对事情不能绝对肯定。“勿固”的意思就是不能拘泥固执。“勿我”的意思就是不要自以为是。《论语·子罕篇》有言:“子绝四——勿意,勿必,勿固,勿我”。大意是说:孔子之所以为圣人,在于四点——凡事不主观臆测,不想当然,不...

谁能帮我解释一下什么是煤改电
3、电锅炉的具体方法就是讲原有煤锅炉的进出水口与原暖通系统断开,并与电锅炉相连,为电锅炉配备独立电源即可进行强制采暖(多有循环泵) 而使用电热膜或发热电缆类的电采暖产品则需将原有锅炉、暖气片或者地热全部裁掉。4、国家在煤改电这部分是有补助的,是按照采暖面积按平米给的。煤改电可领的...

谁能给我解释下动漫和动画的几个动作
我以前做过一段手绘动画的插画和原画设计。你说的术语和我学的不太一样,但老师也给我们讲过这些动作理论。老师经常用迪士尼的动画给我们举例,下面我就按照记忆大致解答一下。1、预备动作:比如一个人在打拳击,要挥出一拳。那么按照迪士尼的原画设计理论,这个人在手臂前伸之前,手臂要向后摆动,然后...

数学问题:给我解释一下,上面的式子怎么转换到下面的式子的,谢谢。_百 ...
请采纳

谁能给我解释下动漫和动画的几个动作
我以前做过一段手绘动画的插画和原画设计。你说的术语和我学的不太一样,但老师也给我们讲过这些动作理论。老师经常用迪士尼的动画给我们举例,下面我就按照记忆大致解答一下。1、预备动作:比如一个人在打拳击,要挥出一拳。那么按照迪士尼的原画设计理论,这个人在手臂前伸之前,手臂要向后摆动,然后...

你好啊~能不能帮我解释一下I've got to get in here的意思和类似用法呢...
Hello~下面是我的回答:这里的I've got to是一般现在时,就相当于I have to, I need to的意思。由于是to结尾,所以后面只需要加动词的原形就可以(或者说可以叫做不定式,即to do的形式)。不过这种用法有两个情况:1)英式英语惯用形式,相当于美式英语里面的I have to ; 2)美式英语里面比较...

河源市17176492619: 谁能给我解释一下下面的这个单片机汇编程序是什么意思?请服具体些 -
艾贤浦优: 单独一条代码没有完整的意思,给你说一下过程,首先是8279 的初始化,然后检测是否有键被按下,如果没有,循环等待,如果检测到有键被按下,则读取被按下键的ASCII码,并把ASCII码送到RAM中,下面就是如何用LED显示被按下的键的过程了,显示分两个过程,就是ASCII的前后两个字节分别显示到两个LED上大致过程就是这样

河源市17176492619: 谁能帮我解释下这个单片机汇编程序
艾贤浦优: 双机通讯程序: 单片机1发送,单片机2接收. 详解如下: 单片机1代码: ORG 00H ;初始地址 AJMP START ;跳主程序 START: MOV SP,#60H ;堆栈从六十开始MOV SCON,#50H ;串行通讯初始设置 MOV TMOD,#20H ;定时器初始设...

河源市17176492619: 谁帮我注释一下下面单片机汇编语言啊!! -
艾贤浦优: 这是一段反汇编程序吧,程序不全,也有点乱,直接照原样注释的.MOV @R0,A ;将累加器的值送R0所指示的地址DJNZ R0,IDATALOOP ;如果R0不为0则转移到IDATALOOPMOV SP,#0x64 ;堆栈栈顶设为64HLJMP C:03CC ;跳转...

河源市17176492619: 单片机汇编,谁能给我解释一下这一小段代码 -
艾贤浦优: MOV A , First ;将变量First的值赋值给累加器A ADD A , #01H ;累加器A加1 MOV First , A ;回送给变量First CJNE A , #0AH , DONE ;与10比较,如果不等于10转移到DONE MOV First , #00H ;等于10则将变量First清零;这段程序的意思就是变量加1后小于10转移到DONE,等于10则清零

河源市17176492619: 帮忙看下这个单片机汇编程序,给个注释,高分追加!
艾贤浦优: 定义30H为count p3.7位定义为SP1, P1.7只为1或0 从00H单元开始 count 清零 把COUNT 中数据送A 把10送B寄存器 A除以B 商到A,余数到B 变址寻址 A开始为0时,A+DPTR送入A,A=3FH 送到P0口显示 把B中数据送入A 然后送到P2口显示 开...

河源市17176492619: 哪位大神可以帮忙把这个汇编语言解释一下,单片机的 -
艾贤浦优: ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;猜测该程序通过按键加1,并在两位静态共阳数码管上显示;初始值为98,加1到99,然后加1变成100又回到98从98开始显示;P3.7按按键端口;P0...

河源市17176492619: 一段单片机汇编程序看不懂,哪位能帮忙分析下,谢谢! -
艾贤浦优: 1,单片机复位时堆栈指针在内存(RAM)07H地址处,08H-1FH是寄存器区,而寄存器区是单片机使用较频繁的区域,为了避开这个区域,有时需要调整堆栈指针的位置,使之指向大于1FH的位置,8051单片机的内存只有128(80H)个字节,堆...

河源市17176492619: 帮忙解释一下下面的单片机程序 -
艾贤浦优: 解:a=tempb=temp>>(8-i); //把temp右移8-i位后赋给b,temp不变 P1=a|b; //a和b相“或”后赋给P1>(8-i); 各自的作用是什么?a|b是比较选择吗?看示例:a=a上句与a a=temp b=temp>>(8-i); ;//b的值为temp右移8-i位后的值.注意执行后temp本身的值不变

河源市17176492619: 谁能帮我翻译下这个单片机跑马灯的汇编程序 -
艾贤浦优: ORG 0000H ; 程序起始地址,从0开始存放LJMP START ; 跳转到 START(100H) ORG 0100H ; 下面的程序从100H开始存放 START: MOV SP,#60H ; 堆栈指针,指向60HMOV A,#0FFH ; 累加器A为全 1 (11111111)CLR C ; 清除CF...

河源市17176492619: 是可以详细给解释一下这个单片机汇编语言? -
艾贤浦优: 这是个AD转换控制程序,并将结果在LCD上显示的程序.不过程序比较罗嗦,个人觉得有些程序没用.说明的部分用“////”标注了,应该比较清楚了.你自己看吧.LED_0 EQU 30H;LED_1 EQU 31HLED_2 EQU 32H;存放段码ADC ...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网