基于51单片机的八位流水灯(三种形式)

基于51单片机的八位流水灯(三种形式)写一下寒假做的51小项目。基于AT89C51的流水灯:流水灯共八个,可以实现交替闪烁,一起闪烁,左右流水灯等效果。模式一:按动key1,实现1,3,5,7和2,4,6,8交替闪烁;模式二:按动key2,实现D1→D8流水灯效果;模式三:按动key3,实现全部闪烁效果,时间间隔为0.5秒;模式四:按动key4,实现D8→D1流水灯效果;模式1:使用P1的取反和delay延时实现模式2…

大家好,又见面了,我是你们的朋友全栈君。

写一下寒假做的51小项目。

基本项目

基于AT89C51的流水灯:流水灯共八个,可以实现交替闪烁,一起闪烁,左右流水灯等效果。
模式一:按动key1,实现1,3,5,7和2,4,6,8交替闪烁;
模式二:按动key2,实现D1→D8流水灯效果;
模式三:按动key3,实现全部闪烁效果,时间间隔为0.5秒;
模式四:按动key4,实现D8→D1流水灯效果;

原理图

模式1:使用P1的取反和delay延时实现
模式2:使用左移函数实现,crol
模式3:使用P1的取反和delay延迟实现
模式4:使用右移函数实现,cror

最后加上了AD画的PCB,姑且算是基础的练手,没啥意思。
PCB-3D
资源包含:proteus仿真+原理图;keil编写的C语言程序;ad原理图+PCB;产品说明书。

升级项目—中断控制按键和延迟

 升级后的项目采用了中断来控制按键和延迟,更加精确,满足了课设级别的常见要求,相关中断知识的讲解可以参考文章:51中断
 其他的效果有:共有三个模式,分别为:向右流水灯效果、闪烁效果、向左流水效果。其中,模式切换使用按键控制,按键使用外部中断来处理,每按动一次切换一次模式。流水灯的时间采用定时器中断控制,每一秒中断一次,在change注释中可以修改时长。
 项目原理图如下:
在这里插入图片描述
 本原理图并没有使用74HC573芯片,这就和其作用有关;该芯片为8位锁存器,锁存器的最主要作用是缓存,其次完成高速的控制其与慢速的外设的不同步问题,再其次是解决驱动的问题,最后是解决一个 I/O 口既能输出也能输入的问题。本项目中P1端口始终都是输出信号,而且不受其他干扰,所以可以省去这块芯片。
 除了无用处外,该芯片的存在也会增大采购器件种类和成本,所以也有理由省去。
 最后绘制了PCB版图,相对以前来说,更加简洁。

在这里插入图片描述

资源包含:proteus仿真+原理图;keil编写的C语言程序;ad原理图+PCB;产品说明书。

升级项目—中断控制延迟时间长短+更多花色

 新项目加入了更多的花色,分别有:单次闪烁效果、单次流水效果、单次中间到两侧流水效果、单次两侧到中间流水效果,并且加入了更改延迟时间(灯变化快慢)的功能。模式切换使用四个按键控制,每一个按键对应一个模式。项目还具有加减延迟时间功能,使用外部中断来处理按键,初始时间为500ms,每次加减500ms。时间最长为5000ms,最短为500ms,超过范围后都会变成500ms。
项目原理图如下,依旧是省略了74HC573芯片。
在这里插入图片描述

最后绘制了PCB板。在这里插入图片描述
资源包含:proteus仿真+原理图;keil编写的C语言程序;ad原理图+PCB;产品说明书。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/132840.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • nessus的使用教程扫描_kali安装nessus

    nessus的使用教程扫描_kali安装nessus1.打开浏览器,输入https://localhost:8834/登录Nessus.2.输入你设置的账号密码.3.进入首页,可以使用浏览器自带的网页翻译(如谷歌)。4.点击侧边栏policies(政策),显示策略界面。5.点击newpolicy(创建新策略),显示策略模板。6.选择advancedscan(高级扫描),填写策略名称。7.单击Plugins标签,该界面显示了所有插件程序,默认全部是启动的enabled。在该界面可以单击右上角Disable..

    2022年10月19日
    0
  • 在线写java代码

    在线写java代码前言蓦然回首自己做开发已经十年了,这十年中我获得了很多,技术能力、培训、出国、大公司的经历,还有很多很好的朋友。但再仔细一想,这十年中我至少浪费了五年时间,这五年可以足够让自己成长为一个优秀的程序员,可惜我错过了,我用这五年时间和很多程序员一样在困惑和迷茫中找不到出路!路其实一直都在那里,只是我们看不到而已!以前我一直被公司和技术牵着走,并不是自己在选择技术,而是不自觉地被推到了这个位置上。想想有多少人对于自己将来要从事的职业和技术类型进行过深入思考和比较呢?当我跳出编码后,我开始思考和程序及程序员职

    2022年7月8日
    22
  • 前缀、中缀、后缀表达式「建议收藏」

    前缀、中缀、后缀表达式「建议收藏」关键字:概念,前缀表达式,前缀记法,中缀表达式,中缀记法,波兰式,后缀表达式,后缀记法,逆波兰式它们都是对表达式的记法,因此也被称为前缀记法、中缀记法和后缀记法。它们之间的区别在于运算符相对与操作数的位置不同:前缀表达式的运算符位于与其相关的操作数之前

    2022年6月16日
    35
  • idea springboot启动报SLF4J:Failed to load class “org.slf4j.impl.StaticLoggerBinder”「建议收藏」

    idea springboot启动报SLF4J:Failed to load class “org.slf4j.impl.StaticLoggerBinder”「建议收藏」首先声明一下,我用的IntellijIDEA2018.3版本的,springboot的版本是2.0.5.RELEASE版本。当我喜滋滋的编写完测试代码,点击Debug的时候,睁大眼睛看控制台简直是看得一脸懵逼,控制台显示如下:SLF4J:Failedtoloadclass"org.slf4j.impl.StaticLoggerBinder".SLF4J:D…

    2022年10月3日
    0
  • cboard企业版源码_CBoard「建议收藏」

    cboard企业版源码_CBoard「建议收藏」CBoardAnopenBIDashboardplatformthatsupportsinteractivemulti-dimensionalreportdesignanddataanalysisServersideframeworkisSpring+MyBatisandfront-endisbasedonAngularJS1andBootstra…

    2022年10月21日
    1
  • python二级考试报名_python语言程序设计二级考试真题

    python二级考试报名_python语言程序设计二级考试真题请注意看红色标识文字,图片均是超清图片,可以单击查看看见更大的世界,遇见更好的自己Seeabetterworldtomeetbetterforourselves.1.MMdnn—-MMdnn是一个深度学习的模型工具集,它能够互转模型文件、可视化模型结构、自动产生训练/推演的代码、辅助测试模型兼容性等。2.Matplotlib—-Matplotlib是一个高质…

    2022年9月5日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号