Proteus单片机仿真

一、软件介绍

1、Proteus

官网:PCB Design and Circuit Simulator Software - Proteus (labcenter.com)

安装教程:【仿真】Proteus8.9 下载与安装教程(超详细)-CSDN博客

        Proteus是英国著名的EDA工具(仿真软件),从原理图布图、代码调试到单片机与外围电路协同仿真,一键切换到PCB设计,真正实现了从概念到产品的完整设计。是世界上唯一将电路仿真软件、PCB设计软件和虚拟模型仿真软件三合一的设计平台,其处理器模型支持8051、HC11、PIC10/12/16/18/24/30/DSPIC33、AVR、ARM、8086和MSP430等,2010年又增加了Cortex和DSP系列处理器,并持续增加其他系列处理器模型。在编译方面,它也支持IAR、Keil和MATLAB等多种编译器。
                                                                                                                                ——百度百科

2、Keil C51

官网:Keil MDK (arm.com)

安装教程:keil5安装教程-CSDN博客​​​​

        Keil提供了包括C编译器、宏汇编、链接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境(μVision)将这些部分组合在一起,且拥有C51版本以及适用于32系列单片机的MDK版本。
    目前软件对中文的支持不友好,不建议进行汉化使用,使用熟料之后,即使看不到英文,也完全不会影响开发。另外建立的工程文件路径也尽量不要存在中文,否则可能会出现一些异常。

二、软件使用

1、创建项目

(1)打开软件,点击新建工程,如下图:

ec5ec29fec5442398e33703ad1371b4e.png

  也可以菜单栏左上角点击文件然后新建工程。

(2)给工程文件取名并设置保存路径,然后点击下一步(Next)9ebb1195087d48aa8f07cef71ece91b0.png

(3)点击下一步(next)

1c2e4d97bb2d4e0fb801f68e1c081acf.png

(4)默认选择不创建PCB布板设计,如有需要选择第二个“基于所选模板……”,点击Next

cd7600a4f6f74efcbbb85cd3682f6b3b.png

(5)这一步我们选择没有固件项目,我们可以使用keil5编写程序,如果你要使用proteus编写程序的话可以选择创建固件项目。(但是它的使用效果不如Keil5,所以不建议使用),点击Next

e7f075bcffbe49789ae2eb70b42d5eba.png

(6)点击finish,完成项目创建。

2、项目搭建

(1)配置单片机最小系统(AT89C52单片机为例)

        我们可以在左侧贴着边的元器件栏停留查看每一项的内容:第一项选择模式、第二项元器件模式、第三项结点模式……大家挨个点击尝试。在以后的开发实践中,慢慢就会知道这些按键的功能是什么了。

        我们在英文输入状态下按快捷键p,进入元件选择窗口,然后在左上角Keywords框搜索用到的元器件(如AT89C52):

552212ed3ba0437f860157383c0c7cb1.png

点击确认,进入画布之后,再次点击鼠标就可将AT89C52单片机放置在画布中。

(2)继续放置其他需要的元器件,如果遇到不知道的元器件的名字,可以在网站查询,也可以通过元器件选择窗口进行筛选选择:

2cd6db3de62549b3ab3e843603f86412.png​常用元器件:晶振(CRYSTAL)、按键(BUTTON)、发光二极管(LED)、数码管(SEG)、电阻(Resistors)、排阻(RESPACK)电容(Capacitors)、三极管(Transistors)、电感(Inductors)、二极管(Diodes)等等。电源和地在左侧的终端模式按钮里面:power和Ground

8e59fdb9f22d4be2898d6218eb93125e.png

                值得注意的是,Proteus的很多芯片都是自带电源和接地的,并且是隐藏的,如果想显示,可以在菜单栏的模板——设置设计默认值——勾选是否显示隐藏引脚,点击确认即可。

7ef6141d57114fff919cf22098fc1da6.png

c78ed000adf54183a5c86037a28bab92.png

(3)搭建好如图所示:

726d185d7c8d4a839a9a8ae63b01e667.png

        图中用到了51单片机AT89C52,电机驱动模块L298N芯片,编码电机,LCD显示屏,LED,排阻,矩阵键盘。其中连线方式由点连法,就是用鼠标点一个端子,然后拖到到另一个端子,然后再次点击鼠标即可。这样的方式快捷,但是当连线过多时会显得很杂乱无章,看不清哪个端子和哪个端子连接的。

        那么就有了图中的另一种连线方法,标号连线(左侧的LBL按钮):

c4bb4573edb843039aa6b529b573ab17.png

        在任意要连接的一个端子上点击鼠标,然后向外拖到一点,双击两下鼠标,出现如下图的一端有一个点的状态后鼠标点击绿色的线:

aae259d17f6e4cac8ad9babc407500d8.png

        点击左侧LBL按钮,然后在绿色线上点击,出下面的窗口:

48fc1d45e6f948ddb56eca82b98552cd.png

                        此时在字符串后面输入标号:如P01(注意两个端子输入的字符串大小写要一致),点击确认。同样的在要连接的另外一端也是同样的操作:

72ecdcf91a73486bbadca1b253af86b7.png

                        (这样两个端子就连接成功了)

2、编写程序

(1)打开Keil 5,点击菜单栏Project,选择第一项:

ca6ee51d54254fc68246354fccb2bb8f.png

(2)选择工程文件存放位置,写入工程名(尽量不要有中文路径和中文名,不然容易出错),点击确认:b705eeff69bd423491328aa1be05a1c5.png

(3)在Search框输入AT89C52,在下面选择AT89C52,点击OK,点击否。4ce1330253c6462a9dd84376bb1a4a21.png

(4)在左侧框点击Target前面的+号展开,然后在Source Group右击,点击Add New Item…… 

f91c55c0e7cd47df8f932a3b4ec3c903.png

(5)选择C File,在Name后面写入main.c(主程序),后续也可以添加其他.c和.h文件,点击Add:

28ccaa595fda4cc7843959bbf8feb116.png

(6)在main.c第一行右击,选择第二行Insert‘#include ……’加入单片机的头包含文件,后面就可以用C语言封装过得函数:

38f146f4cbc041848e1cb777447a27d9.png

(7)写入主函数和程序:

1b1d3cbfa3d1464bb3c95944b2bd56b3.png

(8)生成单片机可执行程序(.hex文件)

        点击图中按钮

15188e0e27e94b959f422e3b30fabac4.png

        点击第三个Output,勾选Greate Hex File(每个工程文件只需要点击一次),点击OK

ca57289a6862469aa6989d94f50d36ed.png

点击2框的三个按钮,从左到右依次点击:

        99b3cfa795f1425199216d1585faf6df.png

如果有错误会在下面提示

376b06d8f0004c0b88fab32934f8e703.png

注:更多教程可以去系统的学习51单片机keil5开发教程。

3、烧录程序

(1)回到proteus,在单片机上右键,选择编辑属性

7b7a805f836b444dafcab039035ff316.png

(2)点击Program File右边黄色文件夹,选择保存工程文件的路径中的.hex文件(在Objects文件夹中)

831a2809e4794f43bcad72f2ac20a8ce.png

afeeda4a77944335843ef9d0c6a36725.png

        选择后点击打开,然后确定即可。

4、仿真

          (1)因为我们给P01是低电平,所以先给电机另外一端一个高电平输入,然后点击菜单栏的调试,点击开始仿真,即可以看到电机转动

1b7f5462910f4940934053208a889d60.png

(2)遇到问题多在个平台查询问题,也可以向作者我提问。

也欢迎关注作者,作者后续会发布相关的实践任务,欢迎大家前来学习。

作者首页的可下载资源即为之前设计的一个仿真项目——电机控制——可测速并显示

  • 13
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

辰宇Ais

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值