传感器及点阵LED显示功能板
板卡简介
STEP Sensor Card是STEP团队推出的可配合小脚丫多种底板使用的扩展板卡,板载资源十分丰富,其中包括多种传感器、16*8led点阵、flash存储等多种功能,你可以用这个子卡来实现你各种各样的新奇想法,像数字水平仪,温度计,亮度检测仪,你都可以用这个板卡去完成!
模块划分
功能需求
- 利用陀螺仪MPU6050实现数字水平仪:在LED点阵上显示一个“小球”,当板卡为水平时,“小球”在板卡中心不动,当板卡倾斜时,小球向对应方向进行移动;
- 利用温度传感器DS18B20Z采集环境温度显示在数码管或者LED点阵上,并实现低温/高温报警;
- 利用环境光传感器BH1750HVI制作一个环境光强检测仪,并实现手机中自动调节屏幕亮度的功能;
- 利用FLASH存储芯片W25Q64实现存储图片,并将图片在点阵上进行显示;
- 利用红外对管完成距离检测,亦可实现“手势开关”等功能。
器件选择
总览
型号 | 厂商 | 封装 | |
---|---|---|---|
环境光传感器 | BH1750FVI-TR | RHOM Semiconductor | WSOF6I |
温度传感器 | DS18B20Z | Dallas Semiconductor | SOP8 |
Flash闪存 | W25Q64FVSFIG | Winbond Electronics Corporation | SOP8 |
陀螺仪 | MPU-6050 | InvenSense | QFN24 |
比较器 | LM393DR | Texas Instruments | SOP8 |
环境光传感器
温度传感器
温度传感器选用了Dallas半导体的DS18B20Z,是一个单总线、12位进度的数字式温度传感器,输入电压为3.0V~5.5V,比较灵活,工作温度可在-55摄氏度~125摄氏度之间,可满足我们日常使用的需求。
姿态传感器
红外传感器
FLASH
LED点阵
LED点阵由于小脚丫STEP FPGA的管脚充足,可直接连接在管脚上,便于进行驱动。
原理图说明
PCB布局布线
板卡尺寸
板卡调试
对于STEP Sensor板卡,其结构为模块式,故调试也是分模块进行:
温度采集模块
环境光模块
红外传感器模块
红外对管的驱动比较简单,调试结果为可通过距离控制将红外对管作为开关使用。 姿态传感器:可与MPU6050建立通讯并读取其发送回的数据。
FPGA逻辑实现
模块1:bh1750fvi代码设计
- 第一步(collect data):与BH1750FVI环境光传感器建立通讯,根据BH1750的手册可知,该传感器采用的是I2C通讯协议,在成功与其建立通讯之后,BH1750会周期性地向我们的小脚丫开发板发送16位二进制数据,当我们拿到这个数据之后,就可以对其进行数据处理。
- 第二步(process data):将采集回来的16位数据进行处理,并将其划分为64个亮度等级;
- 第三步(display data):将处理后的数据以三种形式显示出来。
三色灯:利用pwm脉冲调制的原理,根据第二步获取的亮度参数来调整自身的亮度。
led点阵:将亮度的变化体现在LED点阵上箭头流动的快慢当中。
数码管:小脚丫核心板卡上两位数码管可显示当前的亮度等级。
模块2:ds18b20代码设计
- 第一步(collect data):与DS18B20Z温度传感器建立通讯,根据DS18B20Z的手册可知,该传感器采用的是单总线的通信方式,在成功与其建立通讯之后,DS18B20Z会周期性地向我们的小脚丫开发板发送16位二进制数据,当我们拿到这个数据之后,就可以对其进行数据处理。
- 第二步(process data):取二进制数据前5位数据判断正负号;并取后面的11位数据,进行二进制转十进制bcd码的转换。
- 第三步(display data):将处理后的数据以两种形式显示出来。分别将当前的温度显示到小脚丫核心板卡上两位数码管上和LED点阵上。
测试报告及说明
相关文档
STEP Sensor Card原理图:step_sensor_card.rar
STEP Sensor PCB:step_sensor_card_v1.1.rar
STEP PCIE Card尺寸图:step_pcie_card_.pdf
陀螺仪MPU6050数据手册:ps-mpu-6000a.pdf
温度传感器DS18B20Z数据手册:ds18b20.pdf
红外对管ITR9909数据手册:itr9909.pdf
电压比较器LM393D数据手册:lm393d.pdf
环境光传感器BH1750FVI数据手册:bh1750hvi.pdf
FLASH W25Q64数据手册:w25q64.pdf