C51 单片机入门——软件仿真

时间:2024-04-06 10:35:51

必要准备

工具下载

首先,必须先安装一个 Proteus(用于设计电路)和一个 Keil
为了简化大家的学习,使大家专注于 C51,这里特意弄了一个简化版的 Keil uv3、以及 proteus 7.8。当然,这里的简化不会影响读者的学习。
读者们可以点击以下链接下载:
C51 初学者必备工具

Proteus 与 Keil 级联仿真

方式一

  • 如果不是用上面的连接下载的,那么可以打开 Proteus 的安装路径,然后将 MODELS 文件夹下的 VDM51.dll 复制到 Keil 安装路径下的 C51 文件夹的 BIN 目录中。
  • 之后将 Keil\C51\TOOLS.INI 文件打开,然后在[C51]栏目下加入:TDRV5=BIN\VDM51.DLL (“Proteus VSM Monitor-51 Driver”)——其中“TDRV5”中的“5”要根据实际情况写,不要和原来的重复

方式二

如果是用上面连接下载的。那么请将下载目录中的 VDM51.dll 文件复制到 Keil 中的 C51\BIN 下即可!

应用举例

电路设计

首先打开 Proteus,设计好如下电路:
C51 单片机入门——软件仿真
首先画好电路图。下面是几点注意点

在画电路图之前,首先应该将元器件添加到工作区。可以点击左边的那个 P ,然后双击所需要的元器件,就可以将相应的元器件添加到工作区。

然后,在画图过程中,若遇到需要旋转的元器件。可以放置后,点击右键旋转。
如果有相同的元器件,可以直接在上面的工具栏,点击“复制块”即可。
双击元器件,可以修改元器件的属性。

之后,将设计完成的电路图,保存到新建的 Demo 文件夹中。保存为默认的 DSN 即可!

Keil 生成 hex 文件

1、首先打开 Keil 新建一个工程,命名为 demo.
然后弹出选择 CPU 的对话框,选择 AT89C51 即可
C51 单片机入门——软件仿真
之后弹出一个对话框:
C51 单片机入门——软件仿真
选择否就行了。
2、之后点击工具栏的 new file 创建一个文件:
C51 单片机入门——软件仿真
按 Ctrl + S 保存为 demo.c 记得修改后缀为 .c。这个文件就是我们需要的 C 语言源文件
C51 单片机入门——软件仿真
3、在最左边的项目工作空间中,Target1 的 Source Group 1 下面,右键,点击 Add Files to Group ‘Source Group1’:
C51 单片机入门——软件仿真
双击 demo.c 即可添加到 Source Group 1 文件夹下。之后在 demo.c 中输入如下代码:
C51 单片机入门——软件仿真
4、点击工具栏上的魔法棒,修改如下设置:
C51 单片机入门——软件仿真
C51 单片机入门——软件仿真
单击确定,之后点击 Build Target:
C51 单片机入门——软件仿真
即可在调试窗口输出如下信息:
C51 单片机入门——软件仿真
同时在我们的 Demo 文件夹下,出现了一个 demo.hex 文件

C51 单片机入门——软件仿真

将 hex 文件烧录进单片机

返回我们的 Proteus,双击芯片,弹出对话框。将 Program Files 选择为 demo.hex:
C51 单片机入门——软件仿真
在最下面,点击开始仿真即可:
C51 单片机入门——软件仿真
C51 单片机入门——软件仿真

联合仿真

首先我们删除掉之前的 program files 的设定:
C51 单片机入门——软件仿真
然后点击仿真,当然是没什么卵用。

我们在 ISIS 的调试那儿,勾选使用远程调试:
C51 单片机入门——软件仿真
然后,返回我们的 Keil,在魔法棒中的 Debug 下,设置 use,选择 Proteus …:
C51 单片机入门——软件仿真
然后进行 debug,并点击 run:
C51 单片机入门——软件仿真
注意,上述工具栏必须进行 debug 后才会出现。

之后,返回我们的 ISIS(Proteus):

可以看到,不用点击开始仿真,软件就直接进入了仿真状态:
C51 单片机入门——软件仿真
到此结束,谢谢大家,喜欢的就点赞哦