零、闲话三两
不得不惊叹于计算机功能的强大且全面,分明与51单片机是不同宗不同源的两样机种,其效用却能在计算机上完美复现。在21世纪的新世代人类眼里,“电脑”或许只是“网络”最完美的载体,当人们纷纷沉溺在虚拟现实的幻想梦境般的软件中时,他们不会意识到,计算机居然能真正完成硬件的仿效——当然protues仿真软件并没有在技术上实现什么天沟鸿堑的突破。不过,诸位,诸位是否有所感想,仿制真实这一机制,本身不就是一场神迹般的魔幻么?就像在虚浮的流沙之上,筑立了一座通天的高塔。
一、keil5程序编译
首先,单片机由于cpu性能缘故,只能识别二进制语言,所以在用C/C++编译程序后,需要转换为.hex格式的二进制文件,要令keil5生成二进制文件,需要以下几步

点击工具栏中的Project–>Options for Target

Output–>勾选Create HEX File前的小框,这样keil5在编译完成后便会自动生成.hex文件
接下来代码如下:
#include"reg51.h"
sbit led=P2^0;
void delay(unsigned char i)
{
while(i--);
}
void main()
{
led=0;
while(1)
{
led=~led;
delay(100);
}
}
在编写完程序后需要将文件后缀保存为.c
此后再点击工具栏中的Build按钮进行运行,如无报错即可
二、protues仿真部分
所需元件如下:

电路图如下:

电路图搭建完成,双击单片机,在Program File中选择刚刚于keil5生成的hex文件

最后点击左下角的三角形播放按钮,仿真运行成功


三、引用部分
本次实验绝大部分引用https://blog.youkuaiyun.com/void_much/article/details/99691630,望悉知!
另外,鄙人在调试过程中也遇到各方各面的问题,首先是keil5找不到应用芯片,再就是protues找不到元件序列,均可以通过“以管理员身份运行”的方法解决!
本文介绍了如何使用Keil5编译C语言程序并生成二进制文件,以供单片机使用。接着详细阐述了在Protues软件中进行电路仿真,加载编译后的.hex文件,实现硬件功能的虚拟演示。通过这个过程,展示了计算机模拟硬件的强大功能。

4051

被折叠的 条评论
为什么被折叠?



