单片机Proteus软件仿真一(手把手教你实现LED流水灯)

这篇具有很好参考价值的文章主要介绍了单片机Proteus软件仿真一(手把手教你实现LED流水灯)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1 单片机8051系列

爬虫是不能发了,审核总是不通过,算了,发点其他的。

51单片机是对兼容英特尔8051指令系统的单片机的统称。51单片机广泛应用于家用电器、汽车、工业测控、通信设备中。因为51单片机的指令系统、内部结构相对简单,所以国内许多高校用其进行单片机入门教学。

2 proteus,keil C

有的同学学习单片机是买开发板来做的,很便宜,能看得见实物。当然不买开发板也是可以的,通过Proteus仿真来实现,效果是一样的。

安装keil C软件如果要破解的话,需要关闭杀毒软件。

3 Proteus构建51单片机最小系统

3.1、新建工程

打开新建工程,在相关文件夹下新建个工程文件夹,flashled。

51单片机哪个口是oc门,Proteus,单片机,proteus,嵌入式硬件

51单片机哪个口是oc门,Proteus,单片机,proteus,嵌入式硬件

51单片机哪个口是oc门,Proteus,单片机,proteus,嵌入式硬件

51单片机哪个口是oc门,Proteus,单片机,proteus,嵌入式硬件  

这里可以选择没有固件项目,也可以选择创建固件项目,编译器如果用的是汇编,就选择ASEM-51,如果用C语言,需要选keil,因为安装的keil有C编译环境,如果你的软件没有则点编译器,检查全部。(需要先安装keil,我装的是uvision5)

51单片机哪个口是oc门,Proteus,单片机,proteus,嵌入式硬件

然后下一步结束新建工程。

3.2、放置原件

首先需要绘制原理图,刚开始确实有点手生,操作不太顺,正常,等练多了,就快了。我们需要画一个单片机最小系统。这个和微机原理中的8086类似,但比8086要简单些,因为8051是微控制器,内存,定时器等都集成到CPU内部,8086是微处理器,仅有CPU,外部电路图要复杂些。

我们需要放置必备的元器件构成单片机最小系统,这个在其他项目里面直接复制也可以。51单片机哪个口是oc门,Proteus,单片机,proteus,嵌入式硬件

51单片机哪个口是oc门,Proteus,单片机,proteus,嵌入式硬件 点确定之后电路图左边就会有这个器件,然后选中放到sheet里面就可以了。

3.3、构建最小系统

 51单片机哪个口是oc门,Proteus,单片机,proteus,嵌入式硬件

 如果要放置一个节点,右键选择放置-终端-有电源有接地,单片机最小系统电源和接地引脚不用管了,都是默认接好的,因此从图上看不到这2个引脚。

51单片机哪个口是oc门,Proteus,单片机,proteus,嵌入式硬件

3.3.1 复位电路

单片机复位时RST要保持2个机器周期以上的高电平,这个地方接的电阻不能过大,正常工作时为低电平,当按下按键电源给高电平,完成复位,电容充满电后的作用为隔断电源。

3.3.2 时钟电路

在51单片机片内有一个高增益的反相放大器,反相放大器的输入端为XTAL1,输出端为XTAL2,由该放大器构成的振荡电路和时钟电路一起构成了单片机的时钟方式。

4 LED流水灯

这个是最常用的仿真实验,主要是对P口的输出信号,一般都是共阳极,给低电平点亮。如果共阴极高电平点灯则电流小,驱动不够。这共阳极接上拉电阻,阻值低则LED越亮,但是不能太低,太低则输出态为高阻态。51单片机的P0口是一个OC门输出的I/O口,所以要加上拉电阻才能有电平输出,在PROTEUS里的蓝色为低电平,红色为高电平,灰色则是高阻态,如果不是P0口,则不需要上拉电阻。

P0口第一个功能是数据接口,第二个功能是地址低八位,P2口第二个功能是地址高八位。另外除了P0口没有内部上拉电阻外,其他三个都有内部上拉电阻。

绘图的时候有个坑大家注意:用proteus画仿真图时,元件的每个引脚都必须有一段导线与其它元件或电路相连才行,不能用引脚直接连接。所有LED都有一个结点,这样才行的。不然中间6个LED灯不亮。

51单片机哪个口是oc门,Proteus,单片机,proteus,嵌入式硬件

5 C程序

C程序比较简单,这里面要引用reg51.h头文件,也可以引用REGX52头文件也是可以的,51头文件是proteus自带的,52的头文件需要另外添加到工程里面。还有个延时程序,_NOP_,这个可以在程序前面自己定义,也可以引用头文件的定义,执行Nop指令只使程序计数器PC加1,所以占用一个机器周期。

#include <reg51.h>
void   _nop_  (void);
void Delay500ms()		//@12.000MHz
{
	unsigned char i, j, k;
	_nop_();
	i = 4;
	j = 205;
	k = 187;
	do
	{
		do
		{
			while (--k);
		} while (--j);
	} while (--i);
}


void main()
{
	while(1)
	{
		P0=0xFE;//1111 1110
		Delay500ms();
		P0=0xFD;//1111 1101
		Delay500ms();
		P0=0xFB;//1111 1011
		Delay500ms();
		P0=0xF7;//1111 0111
		Delay500ms();
		P0=0xEF;//1110 1111
		Delay500ms();
		P0=0xDF;//1101 1111
		Delay500ms();
		P0=0xBF;//1011 1111
		Delay500ms();
		P0=0x7F;//0111 1111
		Delay500ms();
	}
}

 1、延时程序的时间可以改进,通过函数的参数来控制时间,循环控制,基本的时间如1ms可以通过软件生成。

51单片机哪个口是oc门,Proteus,单片机,proteus,嵌入式硬件

void Delay1ms(unsigned int xms)        //@12.000MHz
{
    unsigned char i, j;
    while(xms)
    {
        i = 2;
        j = 239;
        do
        {
            while (--j);
        } while (--i);
        xms--;
    }
}

2、主程序的流水灯也可以 通过循环移位来实现 ,这就不介绍了

6. 演示

51单片机哪个口是oc门,Proteus,单片机,proteus,嵌入式硬件文章来源地址https://www.toymoban.com/news/detail-789723.html

到了这里,关于单片机Proteus软件仿真一(手把手教你实现LED流水灯)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 记录在苹果mac os系统上使用51单片机仿真软件Proteus

    1.安装Wineskin shell 指令 2.安装Wrapper 点击update ​​​​​​​ 首先我们需要安装一个程序: 可以将在Windows系统上才能运行exe文件打包为mac系统可执行的文件。 下载后,可以在启动台或者下载目录看到 Wineskin Winery 的图标,点击启动该软件。  No Wrapper Installed   暂时无法解决

    2024年02月06日
    浏览(53)
  • 【51单片机系列】proteus仿真单片机的串口通信

    本文参考:https://zhuanlan.zhihu.com/p/425809292。 在proteus之外使用串口软件和单片机通信。通过在proteus设计一个单片机接收PC发送的数据,并将接收的数据发送出去,利用软件【Configure Virtual Serial Port Driver】创建一对虚拟串口,利用软件【串口助手】向单片机发送数据。 proteus仿真

    2024年01月17日
    浏览(43)
  • 【PROTEUS-51单片机串口通信仿真】

    本次实验对51单片机的串口进行了双机通信的仿真,实现了51单片机的简单双机通信;现对本次仿真的结构及实现的功能做简要的介绍, 本次仿真主要构成:主机U1-MASTER、从机U2-SLAVE、以及LED显示部分(第一部分显示主机接收到的信息、第二部分显示从机接收到的信号); 实

    2024年01月15日
    浏览(64)
  • 【Proteus仿真】【51单片机】贪吃蛇游戏

    本项目使用Proteus8仿真51单片机控制器,使用8*8LED点阵、按键模块等。 主要功能: 系统运行后,可操作4个按键控制小蛇方向。 B站演示视频:https://space.bilibili.com/444388619 视频地址:https://space.bilibili.com/444388619/video 专注于51单片机、STM32、国产32、DSP、Proteus、arduino、ESP32、物联

    2024年02月06日
    浏览(39)
  • 毕设教学:proteus单片机仿真详细教学

    --------元器件图标、名称分类目录---------- proteus元器件符号及名称 2. 单片机基础元器件(基本上每个电路图都会用到的) 3. 单只数码管循环显示0~9 4. 8只数码管滚动显示单个数字 5. 继电器控制照明设备 6. INT0中断计数 7. 8X8LED点阵显示数字 8. 用定时器设计的门铃 9. 串行数据转

    2024年02月05日
    浏览(39)
  • 【Proteus仿真】【Arduino单片机】蜂鸣器

    本项目使用Proteus8仿真Arduino单片机控制器,使用蜂鸣器等。 主要功能: 系统运行后,蜂鸣器播放音乐。 B站演示视频:https://space.bilibili.com/444388619 视频地址:https://space.bilibili.com/444388619/video 专注于51单片机、STM32、国产32、DSP、Proteus、arduino、ESP32、物联网软件开发,PCB设计,

    2024年02月08日
    浏览(42)
  • 【Proteus仿真】【51单片机】智能婴儿车

    本项目使用Proteus8仿真51单片机控制器,使用LCD1604显示模块、按键模块、LED和蜂鸣器、DHT11温湿度、DS18B20温度传感器、SR04超声波,声音传感器、L298N直流电机、语音蓝牙控制等。 主要功能: 系统运行后,LCD1604显示DHT11检测环境湿度值、DS18B20检测体温、HC-SR04超声波检测距离、

    2024年02月08日
    浏览(38)
  • 【Proteus仿真】【Arduino单片机】智能窗户设计

    本项目使用Proteus8仿真Arduino单片机控制器,使用蜂鸣器模块、LCD1602显示模块、雨滴传感器、风速传感器、人体红外模块、ADC模块、按键模块、28BYJ48步进电机 模块、DS18B20温度传感器等。 主要功能: 系统运行后,LCD1602显示温度、湿度、风速检测值; 可通过按键K3进入阈值设置

    2024年02月01日
    浏览(47)
  • 【Proteus仿真】【51单片机】智能温控风扇设计

    本项目使用Proteus8仿真51单片机控制器,使用LCD1602液晶、按键、蜂鸣器、L298N电机驱动模块、直流电机、DS18B20温度传感器等。 系统运行后,LCD1602显示传感器检测的温度值; 默认以自动模式运行,若按下K4键切换为手动模式,此时可以 通过K1和K2控制风扇加减速,风扇档位共

    2024年02月16日
    浏览(47)
  • 208、仿真-51单片机脉搏心率与心电报警Proteus仿真设计(程序+Proteus仿真+配套资料等)

    目录 一、硬件设计 二、设计功能 三、Proteus仿真图 四、程序源码 资料包括: 需要完整的资料可以点击下面的名片加下我,找我要资源压缩包的百度网盘下载地址及提取码。 方案选择 单片机的选择 方案一:STM32系列单片机控制,该型号单片机为LQFP44封装,内部资源足够用于

    2024年02月12日
    浏览(35)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包