一、51单片机
51单片机汇编语言
指令格式
【标号:】操作码 目的操作数 ,源操作数;注释
如:LOOP:MOV A, 33H;将33H输入到累加器A中
ORG xxxxH命令
是指向程序不同功能固定入口。
如:0000H----系统复位入口 0013H—外中断1入口
0003H—外部中断0入口 001BH—T1溢出中断入口
000BH—T0溢出中断入口 0023H串口中断入口
数据传送类指令
MOV direct, A; 累加器传送到直接地址
MOV A,#data; data就是数据,直接赋给A
逻辑运算类指令
RR A; 累加器循环右移
控制转移类指令
JMP @A+DPTR; 相对DPTR的无条件间接转移
DJNZ Rn,rel; 寄存器减1,不为0则转移
RET 从子程序转移
LJMP add16 无条件长转移
L CALL add16 长调用子程序
SJMP 无条件相对转移
SETB C 置位进位位
LOOP 循环指令
二、实验
(一) 点亮一个LED灯
程序
ORG 0100H
SETB P2.0
SJMP $ ;无条件相对转移 $就是本句语言的指针地址
;SJMP $,就是硬件部分
END
(1)ORG 0100H:在汇编语言中,ORG(Origin)指令用于程序的起始地址。因此在该代码中,ORG 0100H 设置的起始地址为0x0100
(2)SETB P2.0:把P2.0置1,使接入P2.0端口的LED灯亮。
(3)SJMP $:为无条件相对转移指令
图
原理
点亮一个LED灯的电路设计原理是先引入一个AT89C51芯片,然后将LED灯接入芯片的某一个端口,在这里是将LED接入P2.0端,最后把代码生成的hex文件导入芯片中,来控制P2.0端,从而点亮LED灯。