1.1 Proteus 与 Keil C51 环境搭建
学习目标:完成 Proteus(电路仿真)与 Keil C51(代码编译)的安装配置,实现两个软件的双机联调。
1.1.1 软件简介
Proteus
Proteus 是英国 Labcenter 公司推出的 EDA 工具软件,集电路原理图设计、PCB 设计、单片机仿真于一体。其最突出的功能是单片机虚拟仿真——可以在电脑上直接运行 8051、AVR、PIC 等多种单片机程序,配合虚拟示波器、逻辑分析仪、信号发生器等虚拟仪表,无需真实硬件即可验证电路与程序。
┌────────────────────────────────────────────────┐
│ Proteus 主要功能 │
│ │
│ ┌──────────┐ ┌──────────┐ ┌──────────────┐ │
│ │ ISIS │ │ ARES │ │ VSM 仿真 │ │
│ │ 原理图设计 │ │ PCB 布线 │ │ 单片机仿真 │ │
│ └──────────┘ └──────────┘ └──────────────┘ │
│ ▲ ▲ ▲ │
│ └──────────────┴──────────────┘ │
│ 本课程主要使用 ISIS + VSM │
└────────────────────────────────────────────────┘Keil C51
Keil C51 是德国 Keil 公司(现属 ARM)推出的 8051 系列单片机 C 语言开发环境,包含:
- uVision IDE:集成的编辑、编译、调试界面
- C51 编译器:将 C 语言源码编译为 8051 机器码(HEX 文件)
- 调试器:支持单步、断点、变量监视等
1.1.2 Proteus 安装
- 下载 Proteus 8.x 安装包(Proteus 8 Professional)
- 运行安装程序,按提示完成安装(默认安装即可)
- 安装完成后运行 Proteus,界面如下:
┌───────────────────────────────────────────────────┐
│ Proteus 8 Professional │
├──────────┬────────────────────────────────────────┤
│ 元器件 │ │
│ 选择面板 │ 原理图绘制区 │
│ (P按钮) │ │
│ │ │
│ 模型选 │ │
│ 择工具栏 │ │
├──────────┴────────────────────────────────────────┤
│ 状态栏:坐标 / 缩放 / 网格 │
└───────────────────────────────────────────────────┘- 创建新工程:
File → New Project,选择 Schematic 模式
1.1.3 Keil C51 安装
- 下载 Keil C51(注意:不是 Keil MDK-ARM,单片机为 8051 需用 C51 版)
- 运行
C51Vxxx.exe安装,路径默认C:\Keil_v5或C:\Keil即可 - 安装完成后打开 uVision,界面如下:
┌───────────────────────────────────────────────────┐
│ uVision5 [Project] │
├───────────────────────────────────────────────────┤
│ 工程窗口 │ 编辑区(写代码) │ 输出窗口 │
│ (Target1) │ │ (编译信息) │
│ │ │ │
└──────────────┴────────────────────────┴───────────┘1.1.4 联调配置(核心)
让 Keil 编译生成的 HEX 文件能被 Proteus 加载仿真,只需两个步骤:
步骤 1:Keil 输出 HEX 文件
- 在 Keil 中打开工程,点击工具栏魔术棒(Options for Target)
- 切换到 Output 选项卡
- 勾选 "Create HEX File"(创建 HEX 文件)
- 编译(F7),在工程目录生成
.hex文件
Options for Target
├── Output 选项卡
│ └── ☑ Create HEX File ← 必须勾选
└── 编译后生成 工程名.hex步骤 2:Proteus 加载 HEX 并仿真
- 在 Proteus 原理图中放置 AT89C51(或 AT89C52)单片机
- 双击单片机打开属性对话框
- 在 Program File 栏点击文件夹图标,选择 Keil 生成的
.hex文件 - 设置晶振频率(Clock Frequency),如 12MHz
- 点击左下角 ▶(Run) 按钮开始仿真
1.1.5 关键知识点
| 知识点 | 说明 |
|---|---|
| HEX 文件 | Keil 编译产物,含机器码,供单片机烧录/仿真 |
| Program File | Proteus 单片机属性中加载 HEX 的字段 |
| 晶振频率 | 决定单片机时钟周期,仿真时需与程序设定一致 |
| 联调本质 | Keil 负责"编译",Proteus 负责"运行",通过 HEX 文件衔接 |
1.1.6 常见问题
Q1:Proteus 中单片机不运行(绿色三角点了没反应)?
- 检查是否已加载 HEX 文件(Program File 为空则无程序可运行)
- 检查单片机是否接入电源(VCC/GND 引脚默认已接,无需显式连线)
Q2:Keil 编译报错 "target not created"?
- 检查是否选择了正确的芯片型号(C51 系列)
- 检查编译器是否安装完整
Q3:如何区分 Keil C51 和 Keil MDK?
- C51 版:支持 8051 内核,安装包名含
C51 - MDK 版:支持 ARM 内核,安装包名含
MDK - 本课程使用 C51 版
实验任务
安装并配置好 Proteus 与 Keil C51,创建一个空工程,确认能正常打开两个软件、Keil 能编译出 HEX 文件。
考核点 / 验收标准
| 考核项 | 验收标准 | 分值 |
|---|---|---|
| 软件安装 | Proteus 与 Keil C51 均安装成功并能正常打开 | 20 |
| 工程创建 | Keil 中成功创建 C51 工程,编译无错误 | 30 |
| HEX 输出 | 正确勾选 Create HEX File,编译生成 .hex 文件 | 20 |
| 联调配置 | 在 Proteus 中正确加载 HEX 并启动仿真 | 30 |
实操要求:现场演示 Keil 编译到 Proteus 仿真的完整流程。