项目名称:申请标题:基于I.MX6UL嵌入式
开发板USB
通信&HTTP网页服务器的环境多道辐射监测系统
试用计划:申请背景:本次申请的开发板属于布局紧凑,外设精简型,开发板于外界交互的接口仅有网口,USB HOST,USB DEVICE,以及一个232的串口,没有多余的GPIO接口,而USB DEVICE一般用于与电脑通信,烧录系统等,比较少用,串口也仅仅用于调试,所以开发板与别的
单片机之类的主控进行通信就只能通过USB HOST了,而我最近又新学了针对
STM32F103单片机的USBHID通信,因此可以做一个环境&多道辐射监测控制系统,单片机那边采集环境温湿度/烟雾浓度/气压/简易辐射指标等,通过USBHID协议传输到I.MX6UL嵌入式开发板上,开发板又可通过USBHID协议控制单片机所带的外设,最后开发板内部可搭建HTTP网页服务器,与别的物联网设备进行交互通信,最大限度利用I.MX6UL嵌入式开发板的板载资源,发挥I.MX6UL主控的高主频和大容量存储池性能。
项目详细内容:
1.开发板跑的是Linux系统,从github上下载hidapi-master驱动包编译生成Linux系统下的驱动文件并加载,就可让Linux系统直接识别USB HOST接口上所接的HID设备,而STM32F103单片机是在硬件
威廉希尔官方网站
上支持USBHID通信的,只需要通过CubeMX简单配置即可,单片机->主机端(I.MX6UL嵌入式开发板)通信最快可达64bit/1ms(即8KB/s)的通信速率,每帧数据包最大64字节上传,而主机->单片机通信则可在单片机的PCD中断中进行,一般是做下发控制指令用的,依据此原理进行的USBHID全双工通信,速率可达串口通信的几十倍甚至几百倍,效率大大提高,此通信的条件只有一个就是单片机支持USBHID通信即可,所以单片机那边就发挥实时性高的优势,采集各种各样的传感器数据,包括DHT11温湿度传感器,BMP280气压传感器,Na22/Co60的简易多道辐射监测威廉希尔官方网站
,这些采集都很简单,主要的是注重对USBHID协议通信的开发。
2.开发板有网口,那就支持TCP通信,那所有基于TCP的应用层协议,如HTTP,MQTT,OPCUA等协议都可简单实现,本次我采用报文结构清晰,实现简单,显示界面直观简洁的HTTP协议进行,即开发板搭建HTTP网页服务器,则其它主机就可以直接通过浏览器访问开发板的IP进入服务器,进而实现网络全双工通信,可显示前面采集到的各种数据,或是做控制,毕竟,开发板唯一的输入手段就是串口和TCP了。
3.开发板所带的外设资源如此稀少,以致于文件系统完全有理由进行深度裁剪,裁切掉不需要的驱动文件如LCD液晶驱动,I2C驱动,GPIO驱动,减小文件系统所占空间。