• 文章仅为本人学习记录,如有引用部分会另加说明引用出处

代码部分

#include<reg52.h>
#include<intrins.h>
#define uint unsigned int
#define uchar unsigned charsbit LED_LE=P2^0;   //LED锁存器控制端
sbit FM=P2^1;      //蜂鸣器控制端
sbit RL=P2^2;      //继电器控制端
sbit Duan=P2^3;        //数码管段选锁存端
sbit Wei=P2^4;     //数码管位选锁存端
uchar temp;         //流水灯初值
sbit D1=P1^0;      //灯组
uchar code s[]={   //数码管段选0~9(高电平有效)
0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
uchar code ss[]={  //数码管段选0~9带小数点(高电平有效)
0xbf,0x86,0xdb,0xcf,0xe6,0xed,0xfd,0x87,0xff,0xef};//延时函数
/*void delay(uint z)
{uint x,y;for(x=100;x>0;x--)for(y=z;y>0;y--);
}*/void main()
{//temp=0xfe;//流水灯初值//P1=temp;//流水灯初值while(1){//继电器部分//LED_LE=1;//开LED锁存//RL=0;//三极管控制继电器开//D1=0;//while(1);//流水灯部分//temp=_crol_(temp,1);//循环左移函数//delay(600);//延时600毫秒//P1=temp;//循环赋值,流水灯//数码管静态显示部分Wei=1;//开启位选P0=0xfe;//文章中进行仿真的数码管位低电平有效Wei=0;//锁存位选Duan=1;//开启段选P0=s[1];Duan=0;//锁存段选while(1);}}

仿真部分

1、单片机基础电路连接

百度百科:准双向口是指P1、2、3有固定的内部上拉电阻,当用做输入时被拉高,当外部拉低时(低电平)会拉低电流,而P0则是真双向口,因为作为输入时它是悬浮的。

所以需要用排阻(图中RP1即排阻)给P0口接外部上拉电阻

2、灯组部分

加入了锁存器对灯组进行控制,锁存器LE拉高时,可以通过单片机的P1口控制灯组的亮灭,当锁存器LE拉低时单片机的P1口的值对灯组不造成影响

3、继电器加蜂鸣器部分

蜂鸣器,继电器都通过从单片机引脚输出高低电平控制三极管开关从而控制蜂鸣器,继电器的工作

继电器本身即可作为开关。继电器上并联的二极管起保护作用,防止继电器断电释放时,由于自感产生高电压损坏晶体三极管(三极管用于放大单片机输出的电流以驱动继电器)

在仿真时注意将继电器上端的导通电压改为12V

继电器工作原理转载至:行走的枸杞子——继电器的原理

4、锁存器数码管部分

数码管采用两个锁存器(锁存器的用法参照2、灯组部分  )分别控制段选和位选,选择数码管时注意共阴,共阳与代码的匹配

PS:更改proteus快捷键

单片机——C51实验含Proteus仿真(锁存器,流水灯,继电器,数码管静态显示,蜂鸣器)相关推荐

  1. 单片机——C51实验含Proteus仿真(独立键盘,矩阵键盘)

    文章仅为本人学习记录,如有引用部分会另加说明引用出处 矩阵键盘检测原理:(独立键盘的原理在代码注释中很详细) 线反法的原理为:首先使P1口的高四位输出高电平,P1口低四位输出低电平,这时键盘的行线被拉 ...

  2. Proteus仿真运行流水灯程序

    文章目录 一.protues画出流水灯图架 1.项目工程的创建 2.画图 二.程序的实现 源代码 效果演示 三.小结 四.资料引用 一.protues画出流水灯图架 1.项目工程的创建 打开软件,点击 ...

  3. 1、Proteus仿真STM32流水灯实验例程、详细步骤。

    一.创建工程 (实验keil和proteus所用文件工程百度网盘链接,提取码为0f7c ,以下为链接:所用keil和proteus文件工程 ) 1.点击创建新工程,输入工程名.安装路径. 2.选择从选 ...

  4. proteus四人抢答器_51单片机四路抢答器PROTEUS仿真报告(含C语言程序).doc

    51单片机四路抢答器PROTEUS仿真报告(含C语言程序) HEFEI UNIVERSITY 四路抢答器仿真设计 题 目 四路抢答器仿真设计 班 级 自动化(1)班 成 员 YCT * PT * WW ...

  5. 用c语言编写篮球过程运行结果,基于单片机的篮球计时计分器设计(c语言编程、含proteus仿真图) 本科毕业论文.doc...

    基于单片机的篮球计时计分器设计(c语言编程.含proteus仿真图) 本科毕业论文 摘要 单片机,亦称单片微电脑或单片微型计算机.它是把中央处理器(CPU).随机存取存储器(RAM).只读存储器(RO ...

  6. 51单片机 24C02器件读写+Proteus仿真

    51单片机 24C02器件读写+Proteus仿真 Proteus仿真 Proteus器件选型注意事项 IIC存储器件选择24C02C,选择其他的容量的或者其他型号的存储器件无法仿真出实际的效果. 器 ...

  7. 51单片机+LCD12864的万年历Proteus仿真

    51单片机+LCD12864的万年历Proteus仿真 Proteus仿真效果 按键说明:递增按键的范围是根据设置的属性变化而变化,如果是年就是0-99,超出范围归0,如果是月份就是0-12超出范围归 ...

  8. 51单片机 74HC595应用实例+Proteus仿真

    51单片机 74HC595应用实例+Proteus仿真 Proteus仿真 实例代码 #include <reg52.h> #include <intrins.h> #defi ...

  9. 【034】基于51单片机的HX711电子秤Proteus仿真设计

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

最新文章

  1. 部署CFCA_RA本地测试环境
  2. Win7 NFS 设置详解 | X-Space
  3. 兰州大学C语言程序设计课程作业,兰州大学C语言程序设计课程作业1附答案.doc...
  4. java与spss交互,[转载]如何用SPSS做中介效应与调节效应(转)
  5. linux找不到动态链接库 .so文件的解决方法
  6. 旷视提出Circle Loss,革新深度特征学习范式 |CVPR 2020 Oral
  7. 利用OpenCV和C++实现由RGB图像转化为灰度图,再将灰度图转化为二值图的程序
  8. [热议]Java是新的COBOL吗?
  9. 拓端tecdat|matlab使用样条插值重采样估计INR数据研究
  10. 电话聊天狂人 (25 分)(map映射 简单做法)
  11. windows下使用iconv命令批量原地转码文件
  12. html画excel表格边框,设置Excel表格和单元格的边框和底纹 html表格单元格边框
  13. html转微信公众号,通过htmlparse动态抓取微信公众号的文章
  14. CSDN调整图片大小、位置
  15. 初次使用Pikachu漏洞平台进行测试实验
  16. C++核心准则讨论:如果一个类是资源句柄,则它需要一个构造函数,一个析构函数以及复制和/或移动操作
  17. i7z – 用来查看CPU状况
  18. docker之卷10
  19. CCF 201712-4行车路线
  20. RFID读写器的组成

热门文章

  1. [Unity3D]子弹旋转移动
  2. python自动创建sqlserver表并上传dataframe到创建的表中
  3. java个人健康养生减肥管理系统
  4. Origin无法启动 - 找不到MSVCR110.dll
  5. java实现zookeeper分布式锁
  6. MYSQL对应版本的jar包
  7. Android 浏览器内核浅谈,基于WebKit内核的Android手机浏览器的性能研究与加载优化...
  8. 幼儿园带括号算式口诀_幼儿园大班数学《括号题型》PPT课件
  9. js中的定时器 setTimeout()和setInterval() (保姆级教程)
  10. 百度违禁词查询过滤工具