基于赛灵思FPGAcsg324100T芯片,外接pmod模块实现危险距离警报

1. 实验目的

利用NEXYS A7及verilog代码制作危险距离报警器,借助pmod模块MaxSonar实现测距功能,可能的应用场景有:倒车入库的刮蹭警示;对汽车视野盲区的检测,以防误伤儿童;极端天气的水位警报功能。

2.实验内容

(1)原理描述:
流水灯的实现:
通过cnt计数器实现周期为0.2s的循环,在此基础上每结束一个周期,用于控制流水灯亮灭led_control加1,再使用case语句,完成一个周期流水灯移动一位的目标。并且为了使流水灯在FPGA板通电后便一直循环往复的运动下去,因此舍弃了reset控制端,使其一直自动的工作下去。
三色灯原理:
三色LED Nexys A7板包含两个三色LED,每个三色LED有三个输入信号,驱动三个较小的内部LED阴极:一个红色,一个蓝色和一个绿色。并且输入信号由FPGA通过晶体管驱动,晶体管对信号进行反转。因此,要亮起三色LED,就需要将相应的信号驱动高。
而本实验要用到紫色,因此根据颜色合成的原理,将红色和蓝色信号被驱动高,绿色被驱动低,三色LED将发出紫色。
此外,为了使警告更加醒目,本实验决定采用三色灯的规律闪烁作为警告信号,为了实现这一功能,定义count_1进行计数,以便调控闪烁频率。
最后,为了控制三色灯在特定的情况下闪烁(本实验规定的是测量距离小于10英寸),因此需要加入two3’d0&&three3’d0的判断条件,two和three分别代表所测距离的十位与百位。
CLOSE显示:
当reset(即v10)被置为0后,直接调用数码管扫描子模块,并对相应的数码管进行赋值,使其显示为“CLOSE”图形,当reset被置为1后,该模块停止工作,测距模块开始执行。
PmodMAXsonar介绍:
一、特征
超声波测距仪,有效检测范围为 6 英寸 - 255 英寸(15 厘米 - 648 厘米)
以 1.0 英寸(2.54 厘米)的分辨率检测物体距离,最远可达 20 英尺
连续测量(自由运行)操作
发送范围数据的三个选项:UART、模拟和PWM
带 UART 接口的 6 针 Pmod 端口
二、功能说明
Pmod MAXSONAR利用MaxBotix® LV-MaxSonar-EZ1®™声纳测距仪提供有关附近物体附近的准确信息。通过发送42个不同宽度的50 KHz光束的模块获取距离数据,从而实现更准确的检测。在自由运行操作下,每 <49> 毫秒可以读取一次范围读数。
三、与 Pmod 接口
Pmod MAXSONAR 通过UART 协议、模拟输出和PWM定时与主机板通信。该模块需要 250 毫秒才能上电,如果接收数据 (RX) 引脚处于浮动或逻辑电平高电压,则执行自校准。校准将需要 49 毫秒,经过额外的 100 毫秒等待时间后,模块将能够每 49 毫秒获取一次测量读数。
UART协议配置为9600波特率,8位,无奇偶校验,单个停止位。当 RX 引脚悬空或保持在逻辑电平高压时,将通过传输数据 (TX) 引脚发送 5 个字节,以大写的 ASCII 字符“R”开头,三个 ASCII 数字代表检测到的距离,以及一个回车符(ASCII字符 13)
Pmod MAXSONAR还通过脉宽调制信号提供距离数据。在逻辑电平高压状态下每测量147 uS的引脚相当于1英寸的距离。如果测量信号为高电平2.205毫秒,则检测到的物体距离Pmod MAXSONAR的前部15英寸。测量的最大脉冲时间为37.5毫秒,表明Pmod的255英寸范围内没有物体。
每个49mS周期从RX变高或打开开始,之后LV-MaxSonar-EZ发送发射突发,之后脉冲宽度引脚(PW)被设置为变高。当检测到目标时,PW销被拉低。如果没有检测到目标,PW引脚高高可达37.5mS。
四、引脚排列描述
在这里插入图片描述
五、时序图
在这里插入图片描述


3.Verilog HDL设计源代码描述


这里省略掉,有需要的私聊
xdc文件配置省略

(4)下板测试

Ps:流水灯不便使用单张照片演示,以下图片的拍摄过程中流水灯在一直运行,作装饰用。
①当reset(v10端口)置为0时,不工作,显示CLOSE
在这里插入图片描述
②当reset(v10端口)置为1时,开始工作,显示距离,单位为英寸
在这里插入图片描述
③当reset(v10端口)置为1时,开始工作,显示距离,且当距离小于10英寸时三色灯闪烁(紫光)
在这里插入图片描述
*

总结:

实验确实很费时费力,设备使用手册都是英文的,网上可查询到的资料也少,给使用pmod模块带来了很大的困难。勇敢牛牛不怕困难,加油。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值