--作者:肖肖肖

本文为明德扬原创及录用文章,转载请注明出处!

1.1 总体设计

1.1.1 概述

发光二极管简称为LED,是一种常用的发光器件,通过电子与空穴复合释放能量发光,可以高效的将电能转化为光能,在现代社会具有广泛的用途,如照明、平板显示、医疗器件等。可通过高低电平的变化来控制LED灯的明灭状态,当输出信号为低电平时,LED灯亮,反之,当输出信号为高电平时,LED灯灭。

1.1.2 设计目标

内容:开发板上有红黄绿 LED 灯各四个,分别放在东西南北方向。参考交通灯的情况,即每个方向都是绿灯亮 10 秒,然后黄灯亮 5 秒,然后红灯亮 15 秒。绿灯按照东西和南北的顺序依次亮。

具体思路:

1. 首先分东西方向和南北方向来设计电路。设计两个不同的状态机来指示不同的状态。东西方向的灯状态相同,南北方向的灯状态相同。

2. 4 个方向的灯依次为红绿黄的依次循环时间为 15+10+5=30 秒,所以可以设计一个计数器,计时 30 秒钟,表示一个循环。计数器可以分两个写,一个计时 1 秒,一个计时 30秒。

3. 然后再根据计数器的计数值的不同,决定状态机的不同状态。

4. 首先设计东西方向的状态机,复位的时候,绿灯亮,计数器计到 10 秒,黄灯亮,计到15 秒,红灯亮,计满 30 秒,又是绿灯亮......依次循环。

5. 接着设计南北方向的状态机,复位的时候,红灯亮,计数器计到 15 秒,绿灯亮,计到20 秒,黄灯亮,计满 30 秒,又是红灯亮......依次循环。

1.1.3 信号列表

1.1.1 设计思路

根据题目功能要求,东西南北四个方向LED灯按照“红灯-绿灯-黄灯”的顺序依次循环时间为 15+10+5=30 秒,所以可以设计一个计数器,计时 30 秒钟表示一个循环。该计数器可以分两个写,一个计时 1 秒,一个计时 30秒。

因为在数字电路中的延时都是通过计数器实现的,计数器*时钟周期=延时时间。本模块中,由于输入时钟是50MHz,时钟周期为20ns,功能要求每1秒变化一次。我们通过counter来表示延时,当其值为1s/20ns=5000_0000时,表示1秒时间到。

两个计数器的架构图:

时钟计数器counter:该计数器用于计算1s的时钟个数,加一条件为1,表示一直计数;数到5000_0000下,则表示数到1秒的时间了。

秒计数器:该计数器用于计算1个周期内三色LED按顺序各点亮1次的时间,1周期的时间为30秒,加一条件为时钟计数器的结束条件,表示时钟计数器每数完1s,秒计数器计数加一;数到30下,则表示数到30秒的时间了。

下面是两个计数器的代码:

1. 

按照题目要求:分东西方向和南北方向来设计电路,因此设计两个不同的状态机来指示不同的状态——同一时间内,东西方向的灯状态相同,南北方向的灯状态相同。

两个状态机的架构:

东西方向的状态机:该状态机用于设定东西方向LED的颜色跳转状态。

1) 上电后,就跳转到绿灯亮状态,绿灯亮;

2) 10 秒后,黄灯亮,跳转条件为秒计数器计数10下,即add_second && second==10-1,则表示数到10秒了;

3) 5 秒后,红灯亮,跳转条件为秒计数器计数15下,即add_second && second==15-1,则表示数到15秒了;

4) 15 秒后,又是绿灯亮,跳转条件为秒计数器计满30下,即add_second && second==30-1,则表示数到30秒了......依次循环。

南北方向的状态机:该状态机用于设定南北方向LED的颜色跳转状态。

1) 上电后,就跳转到红灯亮状态,红灯亮;

2) 15 秒后,绿灯亮,跳转条件为秒计数器计数15下,即add_second && second==15-1,则表示数到15秒了;

3) 10 秒后,黄灯亮,跳转条件为秒计数器计数25下,即add_second && second==25-1,则表示数到25秒了;

4) 5 秒后,又是红灯亮,跳转条件为秒计数器计满30下,即add_second && second==30-1,则表示数到30秒了......依次循环。

下面是东西、南北方向的两个状态机代码:

1. 

1.2 效果和总结

Ø 点拨板

1. 复位,东西绿灯亮,南北红灯亮

2. 10秒后,东西黄灯亮,南北还是红灯亮

3. 15秒后,东西红灯亮,南北绿灯亮

4. 20秒后。东西还是红灯亮,南北黄灯亮

5. 30秒后,东西绿灯亮,南北红灯亮

Ø Mp801

1. 复位,东西绿灯亮,南北红灯亮

2. 10秒后,东西黄灯亮,南北还是红灯亮

3. 15秒后,东西红灯亮,南北绿灯亮

4. 20秒后。东西还是红灯亮,南北黄灯亮

5. 30秒后,东西绿灯亮,南北红灯亮

Ø 实验箱

1. 复位,东西绿灯亮,南北红灯亮

2. 10秒后,东西黄灯亮,南北还是红灯亮

3. 15秒后,东西红灯亮,南北绿灯亮

4. 20秒后。东西还是红灯亮,南北黄灯亮

5. 30秒后,东西绿灯亮,南北红灯亮

观看上面的现象,可以发现,各项功能正常:开发板上有红黄绿三色 LED 灯各四个,在东西南北方向各有一组。参考交通灯的情况,即每个方向都是绿灯亮 10 秒,然后黄灯亮 5 秒,然后红灯亮 15 秒。绿灯按照东西和南北的顺序依次亮。成功完成设计目标。

led计数电路实验报告_至简设计系列_状态机实现LED交通灯2相关推荐

  1. led计数电路实验报告_「正点原子FPGA连载」第八章 按键控制LED灯实验

    1)实验平台:正点原子开拓者FPGA开发板 2)本实例源码下载:请移步正点原子官网 第八章 按键控制LED灯实验 按键是常用的一种控制器件.生活中我们可以见到各种形式的按键,由于其结构简单,成本低廉等 ...

  2. led计数电路实验报告_LED点亮程序

    无论什么时候我们都要以实际应用的角度去考虑程序的编写. (2) 无论什么时候都不要让 CPU 白白浪费等待,尤其是延时(超过 1mS)这样的地方. (3) 设计相应驱动电路时候,应该仔细阅读芯片的数据 ...

  3. 至简设计系列_电子密码锁

    –作者:肖肖肖 本文为明德扬原创及录用文章,转载请注明出处! 1.1 总体设计 1.1.1 概述 随着生活质量的不断提高,加强家庭防盗安全变得非常重要,但传统机械锁的构造过于简单,很容易被打开,从而降 ...

  4. 至简设计系列_简易计算器

    –作者:小黑同学 本文为明德扬原创及录用文章,转载请注明出处! 1.1 总体设计 1.1.1 概述 计算器是近代人发明的可以进行数字运算的机器.现代的电子计算器能进行数学运算的手持电子机器,拥有集成电 ...

  5. 至简设计系列_定时转换的LED交通灯1

    –作者:肖肖肖 本文为明德扬原创及录用文章,转载请注明出处! 1.1 总体设计 1.1.1 概述 发光二极管简称为LED,是一种常用的发光器件,通过电子与空穴复合释放能量发光,它可以高效的将电能转化为 ...

  6. 至简设计系列_按键控制数字时钟

    –作者:小黑同学 本文为明德扬原创及录用文章,转载请注明出处! 1.1 总体设计 1.1.1 概述 数字时钟是采用数字电路技术实现时.分.秒计时显示的装置,可以用数字同时显示时,分,秒的精确时间并实现 ...

  7. 一阶电路实验报告心得_一阶电路实验报告5篇

    1..测量时间常数 2..微分电路,积分电路 (a)微分电路 (b)积分电路 时间常数 的测量 R=4K R=1K R=6K C=0.22U R=1K R=1K 三.误差分析 1)实验过程中的读数误差 ...

  8. 一阶电路实验报告心得_《大学电路实验报告.doc

    <大学电路实验报告 目 录 实验的意义.要求及注意事项 ---------------2 实验一.直流网络定理 ------------------4 实验二.RC一阶电路的响应测试 ----- ...

  9. Proteus仿真数字钟表电路实验报告(可下载工程文件)

    Proteus仿真数字钟表电路实验报告(可下载工程文件) 实验目的 实验器件 实验步骤 1. 选择合适的Proteus器件中的译码器和数值显示器件能够对4位二进制数进行正常的数值显示 2. 组成模值为 ...

最新文章

  1. Matlab:Matlab中常用的函数、案例详细攻略
  2. Conversion to Dalvik format failed with error 1解决方法:
  3. WebMagic学习-解析json
  4. 使用单项循环链表实现字典操作(算法导论第十章10.2-5题)
  5. JS删除之前弹出一个带有确认和取消按钮的提示框confirm()
  6. PHP类: SEO必备的伪原创工具 (文章重写)
  7. js解码编码decodeURI与decodeURIComponent区别
  8. 网站建设方案撰写需要注意哪些事项?
  9. 计算机硬盘修复教程,DiskGenius数据恢复教程 教你电脑硬盘数据如何恢复
  10. 春晚鬼畜 B 站日排行最高,赵本山:我的时代还没有结束!
  11. DevOps使用教程 华为云(11)git分支怎么用 分支合并 评审
  12. 实现一个简易的线程池。
  13. Microsoft Visual Studio Installer Project模板下载太慢解决办法
  14. 最实用的网上赚钱方法:这7个方法真的很实用哦!
  15. 计算机网络中报文摘要概念,报文摘要详细介绍
  16. 计算机硬件系统不包括什么,硬件有哪些(计算机硬件不包括)
  17. ubuntu 12.04中搭建nfs服务器
  18. 谷歌浏览器崩溃,打不开网页,也打不开设置
  19. win10下编译OpenCV的微信二维码库给Dotnet使用
  20. Jenkins安装并配置加速器

热门文章

  1. 红宝书电子版_N2红蓝宝书电子版PDF(蓝宝书)
  2. uniapp 底部菜单_uniapp 原生导航栏
  3. c++ string 回文串_第33期:上海自来水来自海上,回文字符串验证!
  4. python selenium解决报错SessionNotCreatedException session not created: No matching capabilitie与问题解析
  5. java不等长二维数组_Java中关于二维数组的理解与使用
  6. 中科院信工所经验_保研经验分享:实力+经验+运气=保研成功
  7. php 封装的调试方法,关于php面向的特性之封装
  8. colorpix取色小工具_我发现一款神器!它集合了 60 多个超实用的工具
  9. 2020年中职学计算机有前途吗,2020年南昌中专计算机专业都学什么
  10. php查询mongo数据库效率,2000000万数据库 MongoDB 查询速度慢