完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
前面,我们测试了在proteus下仿真arduino的试验。有伙伴问到proteus下的单片机仿真应该如何搭建环境(咱们这里不讲解51单片机的知识,侧重讲仿真环境的搭建),这里我们就来将详细步骤陈述一下。
一、proteus的器件选择与电路 器件选择,主要是AT89C51,电容,晶振,电阻,单刀开关,led灯,BOM清单如下: 元器件连接图如下,连接完成后记得在Design下面设置一下电源 将使用默认的电源连接勾上,如下图,否则就有可能会报错 接下来我们来编写C代码,代码其实很简单,但我们必须首先配置好环境,否则不能编写代码,首先右键单击51芯片,选择右键菜单中的“edit source code”,进入新固件工程对话框,如下图: 点击编译器按钮进入编译器配置对话框,将我们使用的单片机编译器进行配置: 请伙伴们注意,这里我们采用Keil for 8051编译,那么我们就必须在上述图中写入我们安装的keil的安装目录,然后一定记得点击下面的check按钮,这样才能配置成功。 配置成功后,点击ok则可以直接进入代码编辑界面,并且系统自动为我们配置好了头文件,这个比keil更加方便(如果在keil中必须手动配置头文件以及添加主程序的c文件),如下图: 我们为这个程序添加一个延时程序,代码很简单: void delay(int x) { unsigned char i=x; unsigned char j=x; while(--i); while(--j); } 接下来,我们就可以在主程序中调用了,完整的程序如下: #include 《reg51.h》 #define LED_pin P1 void delay(char x); void main() { while(1) { LED_pin=0x00; delay(1000); LED_pin=0xC; delay(2000); } } void delay(int x) { unsigned char i=x; unsigned char j=x; while(--i); while(--j); } 这里的LED_pin的设置我们可以根据电路图来设置,很显然,我们将LED接在了P3的3、4号管脚上了,那么我们要使LED灯亮,则按照二进制的配置应该是00001100,置为高电平1为灯亮,所以我们将这个数字表述为16进制就是0xc了。 至此,我们可以编译运行了,你看到下图的编译成功的提示,说明我们可以运行了 编译成功后,我们双击我们的51芯片,则会发现,编译后系统自动为我们配置好了运行编码文件(这里的文件不是hex而是omf) 点击下方的运行,那么我们的两个LED灯就可以闪烁起来了。就那么简单!就那么容易!真是感叹啊,很早以前我们使用proteus6的时候要是有这么简单这么便利的功能该多好啊!现在电路仿真、编码都可以在一个软件中完成。 可能有小伙伴们会问,你那两个单刀开关有什么用?是的,这里还没有用起来,下一篇博文,我们将利用他们来对LED进行简单的控制。 |
|
|
|
只有小组成员才能发言,加入小组>>
2371 浏览 0 评论
908浏览 2评论
532浏览 1评论
303浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-9-11 06:18 , Processed in 1.262310 second(s), Total 79, Slave 60 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191