第二行程序的开始地址是02,第二条机器码程序有两个指令有分别是“0B”、“05”,其中02地址单元中存放“0B”指令,03地址单元中存放“05”数据。第三条程序的开始地址是04,第三条机器码程序有三个指令有分别是“12”、“05”、“02”。......
2023-11-07
在上面已经介绍了简易汇编的概念和“宏”指令的特点,现在我们可以进行“宏”指令源程序的编辑、输入和执行操作。
1.各按键功能介绍
符号定义:↓表示按下,↑表示抬起,↓↑表示按下立即抬起。
RST键↓↑,机器手动复位,显示“C”。
A/D键↓,显示当前地址,↑显示当前地址存储的数据。
在显示数据时,+1键↓↑,数据+1。
在显示数据时,-1键↓↑,数据-1。
A/D键↓并保持,+1键↓↑,地址+1。
A/D键↓并保持,-1键↓↑,地址-1。
H键↓并保持,再↓↑+1,当前数据的高位+1。
H键↓并保持,再↓↑-1,当前数据的高位-1。
WR键↓↑,将当前显示的数据写入片外存储器,蜂鸣器响一声,显示下一个地址的内容。
A/D键↓并保持,H键↓并保持,↓↑+1,地址高位+1。
A/D键↓并保持,H键↓并保持,↓↑-1,地址高位-1。
-1键↓并保持,WR键↓,同时抬起↑,显示“F”,表示进入存储器清FF状态。等待几秒,蜂鸣器响一声,表示完成。
A/D键↓保持,WR键↓,同时抬起↑,显示“-1”,表示进入用户程序执行状态。
2.【例1-1】 指示灯D0点亮
asm(asm是assembly的缩写,就是汇编文件)文件:
查“宏”指令集汇编后,生成机器码源程序LST文件(就是列表文件)为
hex文件(hex是hexadecimal的缩写,就是十六进制文件)为
(1)程序输入操作
↓↑RST键,显示“C”,机器初始化。
输入第1个字节:地址00输入0B。
↓A/D键,显示“00.”,↑显示“FF”,表示当前地址00存储的内容。
↓↑+1键,显示“00”,表示当前地址内容+1后结果为“00”。
↓↑+1键,连续进行,直到显示“0b”为止。表示存储器内容改变为“0b”。
↓↑WR键,蜂鸣器响一声,表示显示的内容已经被写入存储器的当前地址内,并自动显示下一个地址01的内容为“FF”。
输入第2个字节:地址01输入00。
↓↑+1键,显示“00”。表示当前地址内容+1后结果为“00”。
↓↑WR键,蜂鸣器响一声,表示显示的内容已经被写入存
储器的当前地址内,并自动显示下一个地址02的内容为“FF”。
输入第3个字节:地址02输入13。
↓↑+1键,显示“00”。表示当前地址02内容+1后结果为“00”。
↓H键,并保持,↓+1键,全部抬起,高位数码管+1显示“10”。
↓↑+1键,连续进行,直到显示“13”为止。
↓↑WR键,蜂鸣器响一声,表示显示的内容已经被写入存储器的当前地址内,并自动显示下一个地址03的内容为“FF”。第4个字节无效。
到此,程序代码输入结束。
(2)程序校验(www.chuimin.cn)
↓↑RST键,显示“C”。
↓A/D键显示“00.”,↑显示“0b”。表示当前地址00的内容为“0b”。
↓↑WR键,抬起,蜂鸣器响一声,显示地址01的内容应为“00”。
↓↑WR键,抬起,蜂鸣器响一声,显示地址02的内容应为“13”。
若以上显示正确,表示程序代码输入正确。
(3)程序执行
↓↑RST键显示“C”,同时地址初始化为00。
↓A/D键并保持,↓WR键并全部↑↑,应显示“-1”。
指示灯D0被点亮,表示程序从地址00开始正确执行。
↓↑RST键,显示“C”,指示灯D0灭。机器返回初始状态。可反复操作,表示机器功能正确,可以使用。如果输入新程序,应当先进行存储器擦除,然后输入新数据。当然,这不是必须的,主要是因为原有的程序数据不擦除可能会引起混乱。
(4)硬件连接原理
指示灯D0的“-”极接00口,“+”极通过390Ω电阻接5V电源,实验机上电复位后,00口置“1”,灯D0电路被关断,灯灭。当00口被程序置“0”,指示灯D0电路被导通,灯亮,如图1-13所示。
这个程序虽然很简单,但却说明了一个重要概念,即通过软件的变化,能够在硬件不变的条件下改变功能。这对无软件的纯电子系统是无法实现的。应用单片机能够在低成本的条件下,实现较高的功能,能够迅速升级产品性能。如果通过实际操作了解了这一点,可以深切地体会到它的重大经济意义。
图1-13 指示灯D0电路连接图
3.【例1-2】 指示灯D0闪烁
(1)源程序(asm文件)
(2)查表“宏”指令集汇编后,生成机器码文件(LST文件)
因为标号地址X1所表示的目的地址是“00”,所以地址09的内容就是“00”。
(3)hex文件
(4)程序输入
对于hex文件用上面示例的方法,将机器码输入到存储器内。
复位后显示“C”表明机器已初始化。
输入第1字节:
↓A/D键显示“00.”,↑显示“FF”,表示当前地址00存储的内容。
↓H键并保持,↓+1键,全部抬起,高位数码管+1,显示“10”。
↓↑+1键,连续进行,直到显示“16”为止。
↓↑WR键,蜂鸣器响一声,表示显示的内容已经被写入存储器的当前地址内,并显示下一个地址01的内容为“FF”。
输入第2字节:
↓↑+1键显示“00”。
↓↑WR键,蜂鸣器响一声,表示显示的内容已经被写入存储器的当前地址内,并自动显示下一个地址02的内容为“FF”。
按此方法逐步顺序输入全部存储器字节,直到地址09为止。
(5)程序校验
从地址00开始,用WR键核对全部地址内容应与hex文件相符合,否则要进行修改直到正确为止。
(6)程序执行
按例1-1中的方法执行程序,应能看到指示灯D0闪烁,间隔为0.5s。
有关零起点学习单片机多语言编程的文章
第二行程序的开始地址是02,第二条机器码程序有两个指令有分别是“0B”、“05”,其中02地址单元中存放“0B”指令,03地址单元中存放“05”数据。第三条程序的开始地址是04,第三条机器码程序有三个指令有分别是“12”、“05”、“02”。......
2023-11-07
变量可以灵活变化加工过程轨迹,用变量编程称为宏编程,用变量编制的程序称为宏程序。在宏编程中虽然子程序对编制相同加工操作的程序非常有用,但由于用户宏程序允许使用变量算术和逻辑运算及条件转移,使得编制相同加工操作的程序更加方便,可将相同加工操作编为通用程序。表6-1 变量与引数赋值的对应方法之一表6-2 变量与引数赋值的对应方法之二宏程序调用及赋值 宏程序调用及赋值,见图6-7。......
2023-06-25
安装在单片机上的两个数码管从“00”开始累加1显示,到“99”后循环。需要讲解的指令重点是累加器A加1赋值指令“INC A”和十进制变换指令“DA A”。低位数码管逐段循环显示源程序实例程序运行效果:在完成了源文件建立、汇编、下载的步骤后,单片机自动运行该程序。......
2023-11-07
进位后回到显示第一位数据,即循环显示。程序点评:程序中高、低两个数码管位赋值为0FEH,则显示字形“a段”。数码管数据的静态显示还可以通过查表实现。同样也可以将这种方法作为数码管数据显示制作为一套子程序或为一个程序模块。DISP是数码管显示,它的任务是将2个字形码送74HC164数码管显示。安装在单片机上的两个数码管显示器静态显示“25”。同理,可以在20H内设置0~9任意数据,观察数码管数据的静态显示。......
2023-11-07
应用判0指令控制累加“1”循环显示的程序。程序点评:控制“01”位就改变“01”位的状态,由“0”变“1”。应用判0指令编写倒计时程序实例运行效果:在单片机键盘上输入机器码程序复位并运行后,01位灯亮,倒计时程序不运行。只有跨线一端接电源正极,另一端触接01位,01位被触接置“1”状态,倒计时程序才开始计时显示。实际中可以通过程序控制驱动执行机构做动作。程序点评:在单片机电路中“-1”键与06位相连接。......
2023-11-07
为此,我们采用逐次逼近,边焊边试的操作方法,保证读者能100%按质量完成整机装焊。用逻辑笔测试U3-74HC164的引脚13、12、11、10、6、5、4、3的状态,应为11000110。若不能显示以上状态,应立即断开电源开关K1,逐项检查。如果直接进行下一步会相当危险,可能导致整板报废。2)插放芯片U2、U3、U4、U5及数码管。达不到要求不能进行下一步。按第3步3)操作,应正常显示。......
2023-11-07
可进行置位、复位、取反、等于0转移、等于1转移且清“0”、逻辑运算以及与可寻址位之间传送数据的操作。MCS51系列单片机的I/O接口位输入、输出操作指令只能通过累加位C进行。本例中使用了I/O接口置位清“0”输出操作指令,而例3-1使用了I/O接口按口输出操作指令。......
2023-11-07
单片机是将CPU+ROM+RAM+I/O集成在一块小小的芯片上,这种结构使用非常灵活,可以“嵌入”任何控制对象内,组成嵌入式系统。单片机中的片内程序存储器是一种可编程可擦除的只读存储器。通用计算机的CPU主要是进行高速数据处理。单片机体积很小,可以直接“嵌入”到机器的控制板上,实际上就是将计算机系统嵌入到机器内,组成所谓的“嵌入式系统”。......
2023-11-07
相关推荐