Proteus是一个仿真软件,可以在里面设计电路并模拟测试,也可生成PCB的布线等等,反正就是强大的不行。初学单片机,除了开发板,这个仿真器就是一个很好的调式环境。软件安装信息:

  • Proteus 8.7
  • Keil uvision4
  • Window 10

很多人说window10安装不成功,其他还好,刚开始装Proteus 8.7,出现了一个缺少hhctrl.ocx的组件,下载后注册,就好了。其他安装不再说明,没有什么大问题。目前Keil和Proteus联调成功:

代码如下所示:

/*------------------------------------------------------------------------------
HELLO.CCopyright 1995-2005 Keil Software, Inc.
------------------------------------------------------------------------------*/#include<REG52.H>                /*special function register declarations*//*for the intended 8051 derivative*/#include<stdio.h>                /*prototype declarations for I/O functions*/#ifdef MONITOR51/*Debugging with Monitor-51 needs*/
char code reserve [3] _at_ 0x23;         /*space for serial interrupt if*/
#endif                                   /* Stop Exection with Serial Intr.   *//*is enabled*//*------------------------------------------------
The main C function.  Program execution starts
here after stack initialization.
------------------------------------------------*/
void main (void) {/*------------------------------------------------
Setup the serial port for 1200 baud at 16MHz.
------------------------------------------------*/#ifndef MONITOR51SCON= 0x50;                /*SCON: mode 1, 8-bit UART, enable rcvr*/TMOD|= 0x20;               /*TMOD: timer 1, mode 2, 8-bit reload*/TH1= 221;                /*TH1:  reload value for 1200 baud @ 16MHz*/TR1= 1;                  /*TR1:  timer 1 run*/TI= 1;                  /*TI:   set TI to send first char of UART*/
#endif/*------------------------------------------------
Note that an embedded program never exits (because
there is no operating system to return to).  It
must loop and execute forever.
------------------------------------------------*/while (1) {P1^= 0x01;                 /*Toggle P1.0 each time we print*/printf ("Hello World\n");   /*Print "Hello World"*/}
}

这段代码为安装Keil之后,打开默认显示的代码,我没有修改,就直接用了,它是修改P1口的状态。

先看看Proteus的界面:

新建工程就不说了,建好之后,就是找元件了,如图:

图中标记了几处,元件库,端点POWER和GROUND,探针,其中元件初始化为空,需要自己添加,点P,打开搜索框添加。几个常用的元件名称如下(搜索时用英文名称搜索,右侧可看见符号):

  • 电池组BATTERY
  • 按键BUTTON
  • 电容CAP
  • 晶振CEYSTAL
  • 发光二极管LED
  • 黄色发光二极管LED-YELLOW(其他颜色类似)
  • 电阻RES
  • 开关SWITCH
  • 单片机80C51

(元件)(端点,连线的终端)(探针,电流、电压)

在使用POWER的时候,需要设置全局的电压值,如图:

(打开菜单)

(新增GND和VCC,并设置电压值,在POWER属性上可以选择)

关于探针,在探针使用时不要与线路交叉重叠就行,动态显示探针的值,需要设置:System-》Set Animation Options,右侧Animation Options下面的复选框,全部勾上就行,保存。

关于Keil4与Proteus8联调,配置如下:

1.Proteus中,菜单栏Debug-》Enable Remote Debug Monitor,即允许远程调式;

2.Keil中,打开Target Options ,即选择模拟器;

3.打开DEBUG页签,如图:

4.在Use下拉框中选择Proteus VSM Simulator模拟器,新安装的如果没有的话,需要给keil安装Proteus的调试插件:vdmagdi.exe,安装时选择Keil的安装路径,会自动修改配置文件:

D:\Keil\TOOLS.INI

[UV2]
ORGANIZATION="**"
NAME="**", "**"
EMAIL="**"
BOOK0=UV4\RELEASE_NOTES.HTM("uVision Release Notes",GEN)
[C51]
PATH="D:\Keil\C51\"
VERSION=V9.00
BOOK0=HLP\Release_Notes.htm("Release Notes",GEN)
BOOK1=HLP\C51TOOLS.chm("Complete User's Guide Selection",C)
TDRV0=BIN\MON51.DLL ("Keil Monitor-51 Driver")
TDRV1=BIN\ISD51.DLL ("Keil ISD51 In-System Debugger")
TDRV2=BIN\MON390.DLL ("MON390: Dallas Contiguous Mode")
TDRV3=BIN\LPC2EMP.DLL ("LPC900 EPM Emulator/Programmer")
TDRV4=BIN\UL2UPSD.DLL ("ST-uPSD ULINK Driver")
TDRV5=BIN\UL2XC800.DLL ("Infineon XC800 ULINK Driver")
TDRV6=BIN\MONADI.DLL ("ADI Monitor Driver")
TDRV7=BIN\DAS2XC800.DLL ("Infineon DAS Client for XC800")
TDRV8=BIN\UL2LPC9.DLL ("NXP LPC95x ULINK Driver")
RTOS0=Dummy.DLL("Dummy")
RTOS1=RTXTINY.DLL ("RTX-51 Tiny")
RTOS2=RTX51.DLL ("RTX-51 Full")
LIC0=14R8T-R0VMF-C5DT5-GNLT9-76GJH-QEQ8V
TDRV9=BIN\VDM51.DLL ("Proteus VSM Simulator")
BOOK2=HLP\VDMAGDI.HLP ("Proteus VSM AGDI Driver")
[ARM]
TDRV0=BIN\VDMARM.DLL ("Proteus VSM Simulator")
BOOK0=HLP\VDMAGDI.HLP ("Proteus VSM AGDI Driver")
[KARM]
TDRV0=BIN\VDMARM.DLL ("Proteus VSM Simulator")
BOOK0=HLP\VDMAGDI.HLP ("Proteus VSM AGDI Driver")

如果这个配置文件中有Proteus VSM Simulator,说明可用;

5.选择好模拟器,就可以运行程序,会自动运行Proteus的电路,可以点亮LED灯,如出现一下,请检查步骤1:

如出现一下情况,则表明没有选对模拟器,如图:

以上就是我的总结,最后,放一张设计的80C51的电路图结束。

转载请注明出处

风雨咒之无上密籍

转载于:https://www.cnblogs.com/flowerbirds/p/10658350.html

初学单片机:Proteus介绍、Proteus与Keil联调(Windows10环境下)相关推荐

  1. 在Keil MDK编译环境下使用UEstudio编写程序

    在Keil MDK编译环境下使用UEstudio编写程序 由于一些原因目前只能使用ulink2来调试arm微处理器,因此不得不放弃iar与jlink.转入MDK的阵营后,为了减小对自己的习惯的影响,今 ...

  2. Keil嵌入式开发环境下完成一个基于STM32汇编程序的编写

    文章目录 一.keil的安装 二.新建工程 三.配置环境 3.1选择设备 3.2选择运行环境 3.3添加源文件 四.测试代码 4.1源码 4.2仿真器设置 4.3编译调试 五.分析HEX文件 六.总结 ...

  3. 基于51单片机简易数字示波器Proteus仿真

    功能介绍: 采用51单片机作为主控CPU:LCD12864可显示方波,三角波,锯齿波,正弦波等,可通过光标对波形进行测量,可以调节显示波形的幅度和频率,也可以将波形进行左右拖拉,完美的仿真出一个51单 ...

  4. Proteus ISIS与Keil uVersion开发环境的互连

    Proteus ISIS与Keil uVersion开发环境的互连 [一]简介 Proteus ISIS 6 Professional是一个强大的电路仿真(VSM,Virtual System Mod ...

  5. 51单片机全自动洗衣机proteus仿真设计

    51单片机全自动洗衣机proteus仿真设计 目录标题 51单片机全自动洗衣机proteus仿真设计 设计介绍 仿真图 电动机驱动模块电路设计 电源模块电路设计 控制按键 进水阀和排水阀控制继电器 程 ...

  6. 51单片机DS18B20温度报警器proteus仿真设计_可调上下限

    51单片机DS18B20温度报警器proteus仿真设计_可调上下限 (仿真+源码+原理图+报告) 原理图:Altium Designer 仿真版本:proteus 7.8 程序编译器:keil 4/ ...

  7. 基于51单片机篮球计分器proteus仿真设计

    本设计是51单片机篮球计分器proteus仿真(源码+原理图+PCB+仿真+报告) 仿真:proteus 7.8 程序编译器:keil 4/keil 5 编程语言:C语言 编号C0004 资料文件下载 ...

  8. 基于51单片机的电子秤proteus仿真设计

    本设计仅供学习参考 基于51单片机的电子秤proteus仿真设计(仿真+程序+原理图+报告+讲解) 原理图:Altium Designer 仿真图proteus 7.8 程序编译器:keil 4/ke ...

  9. 51单片机实验软件proteus出现错误集锦

    51单片机实验软件proteus出现错误集锦 错误一:安装KELI和proteus后,点击仿真但是出现下面错误. 错误二:点击仿真后,源代码本来有程序后面变空白,或者出不来这个调试窗口. 错误一:安装 ...

最新文章

  1. Discuz常见小问题-如何快速清除帖子
  2. 机房合作--驼峰命名法
  3. JZOJ__Day 6:【普及模拟】Oliver的成绩(score)
  4. Elasticsearch 实战经验总结
  5. Spring AOP原理浅析及入门实例
  6. C++ 获取类型信息
  7. 信息学奥赛C++语言:判断两位数
  8. python递归实例_python实现递归实例代码
  9. 解决shutil.copyfile常见错误:PermissionError: [Errno 13] Permission denied
  10. python函数的组成要素_写好一个Python函数的六要素
  11. E 定向 牛客练习赛25
  12. 计算机网络的DIX,《计算机网络》期末考试试卷(B卷)
  13. 论文笔记_S2D.01-2018-ICRA_Sparse-to-Dense:从稀疏深度样本+单一图像的深度预测
  14. 网络调试助手NetAssist的使用
  15. VirtualBox安装Windows 98步骤
  16. 分享个三国志2017挂机脚本 可玩性很高占用小
  17. CSS3设置按钮的样式
  18. java数据类型有哪几种_java数据类型有哪些
  19. Java永久保存数据_java怎么保存数据
  20. Unbuntu更换阿里源

热门文章

  1. SRS 代码分析【mpeg-ts解析】
  2. hololens拍照
  3. VS2015:解决VS2015许可证已过期的问题
  4. github 访问慢,一键加速,完美访问
  5. MySQL 支持表情字符
  6. python笔记-2020/09/01下午-字符串练习(2)
  7. R语言散点图+趋势线+标注
  8. iO逆向 触动精灵网络请求
  9. ns3网络模拟器使用相关问题
  10. 多个moudle混淆配置问题