一、SDCC和Edsim51介绍
1.SDCC
SDCC(Small Device C Compiler),它是一款专门为小型微控制器设计的免费开源C语言编译器。SDCC主要用于支持8051架构及其他一些嵌入式系统的软件开发。主要用于嵌入式系统的软件开发。它专注于为小型微控制器(如Intel 8051系列、Maxim 80DS390、Zilog Z80、Motorola 68HC08等)生成高效的目标代码。SDCC包含一系列工具,包括预处理器、编译器、汇编器、链接器以及优化器,并且提供了一个名为SDCDB的源代码级调试工具。
2.Edsim51
Edsim51(Education Simulation 8051)是一款基于8051单片机的仿真软件。它提供了一个可视化的界面,可以模拟和调试8051单片机的程序。通过Edsim51,用户可以编写、调试和运行8051单片机的汇编语言程序,以及观察程序在单片机上的执行过程。该软件还提供了丰富的仿真功能,如单步执行、断点设置、寄存器监视等,方便用户进行程序调试和性能优化。
二、在Edsim51虚拟开发板上点亮一个Led灯
1.汇编语言点亮
注意,在仿真运行之前,Edsim51的Update Frequency (刷新频率)要加大到10000或更高。
汇编语言比较简单,因为LED0 接在P1.0端口上,8051中P1.0的地址固定为 90H,因此,对这个地址(指针)对应的寄存器写入立即数 0(低电平),就可以是 LED0电路导通,亮灯。
(1)代码如下
MOV 90H, #0xFE
或者
MOV 0x90,#0xFE
或者
MOV 0x90,#254
(2)代码解释
以MOV 90H, #0xFE
为例
“MOV”为操作码;
“90H ,#0xFE”为操作数;
“90H”为