é£ä¸ªDM LPæ¯ä»ä¹ææï¼ä¸éè¦åMAINåï¼
追çä¸ä¸ªæ å·ï¼è¿éæ¯åç¨åºå½¢å¼
追é®è¿ä¸ªç¨åºæ¯ä¸å¥çæææ¯ä»ä¹ï¼
追çè¿æ ·ä¸å¥½å§ï¼ä½ å°ç¨åºè´´ä¸æ¥ï¼æ好åçï¼å¾çå½¢å¼ç»åçå¢å äºå¾å¤§çé¾åº¦çå¦
追é®ORG 0000H
LIMP MAIN
ORG 0100H
MAIN:MOV R2,#00H
MOV R3,00H
MOV R4,#20H
MOV R5,#00H
MOV R6,#1FH
MOV R7#0FFH
SE22:MOV DPH,R2
MOV DPL,R3
MOVX A,@DPTR
MOV DPH,R4
MOV DPL,R5
MOVX @DPTR,A
CJNE R3,#0FFH,L042
INC R2
L042:INC R5
CJNE R7,#00H,L044
CJNE R6,#00H,L045
SJNP $
NOP
L044:DEC R7
SJMP SE22
L045:DEC R7
DEC R6
SJMP SE22
END
ORG 0000Hç¨åºå
¥å£
LIMP MAIN 转移å°MAIN
ORG 0100Hç¨åºå¼å§è¿è¡å°å
MAIN:MOV R2,#00Héæ°æ®00å°R2
MOV R3,00Hå°R0ä¸çæ°éR3ï¼ä¼°è®¡è¿éæ¯é误çæ¯ä¸æ¯åºè¯¥#00ï¼
MOV R4,#20Hå°20HéR4
MOV R5,#00Hå°00HéR5
MOV R6,#1FHå°1FHéR6
MOV R7#0FFHå°FFHéR7
SE22:MOV DPH,R2å°R2çå¼éDPH
MOV DPL,R3å°R3çå¼éDPLï¼ä»¥ä¸ä¸¤æ¡ç»ææ°æ®æé
MOVX A,@DPTRéå¤é¨åå¨å¨ä¸åæ°
MOV DPH,R4å°R4çå¼éDPH
MOV DPL,R5å°R5çå¼éDPL
MOVX @DPTR,Aå°Aä¸çå¼éå¤é¨åå¨å¨
CJNE R3,#0FFH,L042å¦æR3ä¸çäºFFH转L042
INC R2å·¥ä½å¯åå¨R2å 1
L042:INC R5å·¥ä½å¯åå¨R5å 1
CJNE R7,#00H,L044å¦æR7ä¸çäº0转L044
CJNE R6,#00H,L045å¦æR6ä¸çäº0转L045
SJNP $åå°å¾ªç¯
NOP空æä½
L044:DEC R7å·¥ä½å¯åå¨R7å1
SJMP SE22转SE22
L045:DEC R7å·¥ä½å¯åå¨R7å1
DEC R6å·¥ä½å¯åå¨R6å1
SJMP SE22转SE22
ENDç¨åºç»æ
求解单片机程序的每一步的意思,谢谢?
AJMP MAIN;跳转至主程序,为了躲开中断入口地址 MAIN: 主程序 CLR A;清累加器A MOV P2,#0FFH;没啥用,P2上电就 是0FFH JNB P1.0,LOOP1 判断P1.0状态 是0转LOOP1,不为0顺序执行 JNB P1.1,LOOP2 判断P1.1状态 是0转LOOP2,不为0顺序执行 JNB P1.2,LOOP3 判断P1.2状态...
求解释下下面单片机程序的每一步是什么意思,谢谢了
RAM:数据存储区 ROM: 程序存储区 mov a,#0c5h 与 mov a,0c5h 是不同的,前者是将0c5h放入a;后者是将RAM地址数为0c5h处的数据放入a。mov r0,a 与 mov @r0,a 是不同的,前者将a的内容放入r0寄存器;后者将a的内容放入数据存储区某处,其地址为r0的内容。这段指令把数据挪来...
求这道数码管单片机程序的每一步含义
LOOP:MOV A,R7 MOVC A,@A+DPTR ;将TAB表中的偏移量对应的数据 即要显示的数的显示编码送A MOV P2,A ;送到P2口显示 LCALL DELAY1S ;调用延时程序 延时1秒钟 INC R7 ;偏移量加1 即要显示的数加1 CJNE R7,#10,LOOP ;0~9十个数没有显示完 则转继续LOOP继续...
单片机编程,求大神每一步的讲解,作用,
程序内部是个while大循环,只要不退出while,程序就在反复运行循环体内的代码。ys作用是延时计数。while(ys--); 就是个空循环,直到ys递减为0;PO是控制输出的,PO=a,各管脚输出的电平需要根据a的数值来变化。0xFE和0x7F的控制,自己看对应的二进制数值就明白了。a=a<<1和a=a>>1就是比特位左...
求助这个关于loop的单片机的程序的每一步的含义?
ACALL MOVE_MEM ; 调用块移动函数 DONE: SJMP DONE ; 主循环体,空 MOVE_MEM:MOV R1, #40H ; 块移动的目的地址,片内RAM的40H MOV R4, #0 ; 初始偏移为0 MOV DPTR,#STR ; 加载字符串基地址 MOVE_1:MOV A, R4 ; 加载偏移 MOVC A,@A+DPTR ; 加载字符串中的字符 CJNE A,#...
这个单片机程序该怎么用c语言写 说说每一步是干什么的 谢谢
uchar keyval,num;sbit skey=P1^0; \/\/独立键P1.0 void delay(uchar a){ uchar i,j;for(i=0;i<a;i++)for(j=0;j<125;j++);} uchar kbscan(void) \/\/矩阵键扫描程序 { unsigned char sccode,recode;P3=0x0f; \/\/发0扫描,列线输入 if ((P3 & 0x0f) != 0x0f) \/...
下面的单片机程序的每一步都是什么意思?
DEL3,DEL2,DEL1,DEL 是DELAY延时的循环。时长16*171*167*2us ~=1S CPL P1.0 将端口变反。这是最简单的8051测试程序,通过端口P1.0不断输随时间变化、可肉眼观察到的电平。
关于单片机数码管显示的程序。看不太懂,求大神帮忙分析一下每一步在
程序:void main() \/\/主函数 这一讲的主要内容: 按键检测主函数 功能描述: 按键检测主函数 输 入:输 出:全局变量:调用模块:作 者: 吴鉴鹰 日 期: 14.04.12 备注:有什么错误的地方,欢迎各大烧友指正,感谢电子发烧友提供这个平台能跟各大烧友一同分享,一同进步 O(∩_∩)O~...
单片机中一个程序的运行过程
单片机中PC=0002H,PC在CPU每次向存储器取指或取数时自动加1,单片机又进入下一取指阶段。这一过程一直重复下去,直至收到暂停指令或循环等待指令暂停。CPU就是这样一条一条地执行指令,完成所有规定的功能。ROM是只读存储器,用于存储程序代码;RAM是数据存储器,用于存放单片机运行时的数据,也就是说...
单片机程序求注释,查平方表实验
ORG 0100H ;下面的程序从0100开始存放 MAIN: MOV R2,#06H ; ;把06H放入R2里 MOV A,R2 ; ;将R2的内容放入A里 MOV DPTR,#TABLE ; ;将table的地址放入DPTR里 MOVC A,@A+DPTR ; ;查表指令,将(A+DPTR)地址里的内容放入A MOV R2,A ; ;将A中...