wechat:【嵌入式工程师成长日记】

具体功能实现

南北红灯亮,东西绿灯亮;南北绿灯亮,东西红灯亮;在红绿灯转换过程中,黄灯闪烁5次。

使用器件:

若干电阻、4只LED红灯、4只LED绿灯、4只LED黄灯、AT89C51芯片

Proteus仿真原理图:

Proteus仿真图:

wechat:【嵌入式工程师成长日记】

知识介绍:

Proteus布线

为了让整个原理图看上去简洁明了,我们对元器件的导线进行标号,而不是直接和芯片相连。

LED低电平有效

LED的特性是单向导通,只有当阳极的电压大于阴极的电压才能导通。在仿真图中LED的阳极接了电源,因此阴极我们置0方可导通。

主要代码(C语言)KEIL5实现:

#include <REGX52.H>sbit RED_A = P0^0; //east and west
sbit YELLOW_A = P0^1;
sbit GREEN_A = P0^2;sbit RED_B = P0^3; //north and south
sbit YELLOW_B = P0^4;
sbit GREEN_B = P0^5;unsigned char type = 1;
unsigned char count=0;void delay(unsigned int x){unsigned char i;while(x--){for(i=0;i<120;i++);}
}void light(){switch(type){case 1:  //GREEN_A , RED_BRED_A=1;YELLOW_A=1;GREEN_A=0;RED_B=0;YELLOW_B=1;GREEN_B=1; delay(2000);type=2;break;case 2:delay(300);YELLOW_A=~YELLOW_A;GREEN_A=1;if(++count!=10) return;count=0;type=3;break;case 3: // RED_A,GREEN_BRED_A=0;YELLOW_A=1;GREEN_A=1;RED_B=1;YELLOW_B=1;GREEN_B=0;case 4:delay(300);YELLOW_B=~YELLOW_B;GREEN_B=1;if(++count!=10) return;count=0;type=1;break;      }
}void main(){while(1){light();}
}

问题解答 :

问:为什么P0口要接上拉电阻?

答:因为P0口是准双向口,即是开漏输出的,当P0口作为并行口使用时,只能输出低电平,不能输出高电平,需要接一个上拉电阻才能输出高电平。

问:Proteus如何快速布线?

答:按键按下大写的A,输入指令net=P0.#,然后点击“单击对象”,最后想要给哪根导线标号只需点击一下即可。

wechat:【嵌入式工程师成长日记】

基于51单片机实现LED模拟交通灯(Proteus仿真)相关推荐

  1. 51单片机 74HC154译码器制作流水灯+Proteus仿真

    51单片机 74HC154译码器制作流水灯+Proteus仿真 Proteus仿真 实例代码 #include <reg52.h> #define uint unsigned int #d ...

  2. 【036】基于51单片机的电子时钟与秒表Proteus仿真设计

    一.压缩包资料内容 (1).基于51单片机的电子时钟与秒表proteus仿真设计一份: (2).基于51单片机的电子时钟与秒表proteus仿真设计keli源代码一份: (3).基于51单片机的电子时 ...

  3. 【041】基于51单片机的自动音乐播放器Proteus仿真设计

    一.压缩包资料内容 (1).基于51单片机的自动音乐播放器系统proteus仿真设计一份: (2).基于51单片机的自动音乐播放器系统proteus仿真设计keli源代码一份: (3).基于51单片机 ...

  4. 基于51单片机的PWM控制直流电机设计( proteus仿真+程序+报告+讲解视频)

    基于51单片机的PWM控制直流电机设计( proteus仿真+程序+报告+讲解视频) 仿真图proteus 7.8及以上 程序编译器:keil 4/keil 5 编程语言:C语言 设计编号:S0031 ...

  5. 单片机入门led模拟交通灯

    led模拟交通灯 #include <reg52.h> #define uchar unsigned char #define uint unsigned intsbit RED_A=P0 ...

  6. 基于51单片机自动数字电压表PCF8591 TLC2543 TL548 proteus仿真汇编程序设计

    硬件设计1 基于51单片机+PCF8591 ADC的仿真电路图: A. 基于51单片机和PCF8591的电压表,具有仿真图/源程序: B. 由数码管作为显示器: C.测试电压范围为0~5V,精度约为0 ...

  7. 基于51单片机的室内温度可燃气体检测报警系统Proteus仿真(源码+仿真+全套资料)

    资料编号:133 讲解视频: 133-基于51单片机的室内温度可燃气体检测报警系统Proteus仿真(源码+仿真+全套资料) 功能介绍: 采用51单片机作为主控,LCD1602显示当前温度和可燃气体浓 ...

  8. 基于51单片机的全自动智能洗衣机控制系统Proteus仿真(仿真+源码+全套资料)

     资料编号:108 设计功能: 1.对水温实时显示 2.显示滚筒转速 3.显示运行倒计时 4.能通过按钮分别设置洗涤时间和脱水时间 5.运行过程为:加热--洗涤--脱水 具体功能请看下方演示视频 10 ...

  9. 基于51单片机的简易电子数字计算器Proteus仿真

    资料编号:089 采用51单片机,使用矩阵键盘,可以计算加减乘除,进行简易计算: 全套资料齐全:具体功能请看下面演示视频 89-基于51单片机的简易电子数字计算器Proteus仿真 单片机最小系统介绍 ...

最新文章

  1. 7行Python代码,搭建可以识花的机器学习App|视频教程
  2. Kali Linux安装谷歌输入法
  3. 重磅!Nature盘点年度十佳论文,生命科学占据半壁江山,中国学者表现亮眼
  4. ubuntu 16.04系统中nvidai、cuda、cudnn安装及注意事项
  5. mysql中表的约束,主键外键唯一键
  6. Rhel6-piranha配置文档
  7. python去掉最高分和最低分_【Excel】去掉一个最高分,一个最低分,求平均
  8. Python创建二维数组
  9. (附源码)基于PHP在线考试系统的设计与实现 毕业设计 032028
  10. 2022年数据库系统工程师考试大纲
  11. PyG教程(2):图数据
  12. nyoj54小明的存钱计划
  13. FL Studio 20音乐制作教程
  14. 微信之旅——微信公众号
  15. Beta版本——第七次冲刺博客
  16. 【如何配置环境变量】
  17. Linux之音视频入门
  18. 获投5亿元E轮融资,百分点能否成为数据+AI领域的独角兽?
  19. php挂载webdav,PHP上传文件到WebDav
  20. 大数据架构及行业大数据应用

热门文章

  1. AD19(Altium Designer)如何显示和隐藏网络
  2. Matlab的感应电动机的动态分析simulink仿真
  3. select标签回显
  4. 联想wh系列服务器,ThinkAgile WH 系列
  5. GeoGebra笔记5 :轨迹线Locus
  6. 多项式最小二乘拟合算法实现
  7. 传教士与食人者问题python
  8. 【编程学习】每天进步一点点,编程学习之路:一款表格数据处理软件 - CSV表格数据处理器v1.0.1
  9. 华氏温度转换摄氏温度程序
  10. 收费软件系统测试的金额进那个科目,用友软件测试题_