vesperW · 11月1日

一个综合性非常强的Qt+STM32上下位机嵌入式毕设项目

以下是我看到的一个嵌入式综合项目,该项目主要是基于STM32F407、ARM Cortex-M4处理器两大平台,融入了QT5.9.9客户端,TCP、MQTT通信,JSON通信规则,云服务器Linux操作系统,MySQL数据存储转发等技术。这个项目作为毕设以及日常学习开发非常nice!

  • QT客户端界面:

image.png

  • STM32开放板:

image.png

下位机

STM32F407裸机开发:开发环境前提需要向ESP8266WIFI模块烧录带MQTT的SDK固件,控制部分有三个led、fan(PWM调节,定时器TIM控制)、beep,tem、hum(DHT11)在OLED显示屏(I2C)显示,并具有按键菜单,AT24C02(EEPROM)实现掉电保护。数据传输部分首先连接WIFI,再订阅自己ChipID的主题,上传时下位机发送的主题和上位机订阅主题一致(调试使用),MQTT服务器订阅下位机发送的主题信息,写入数据库;并且实现定时中断上传状态数据。下位机还需解析下传的ChipID主题的控制JSON数据。开发语言:C

上位机

QT同样也要加入mqtt开发库,导入pro工程文件,控制部分直接下发ChipID主题(实现了用户绑定式多设备控制的功能)消息控制设备,同时和服务器TCP通信抓取数据,更新显示状态,实现动态曲线图展示实时数据,外加语音识别功能,实现远程控制设备。http查询当地天气预报,可以切换城市,以及可扩展多媒体播放器,实现在线音乐播放(设计JSON解析)。开发语言:C++

服务器

分TCP服务端(同上位机通信)和MQTT服务端(同下位机通信)。MySQL数据库搭建,开启远程访问许可,建立多用户绑定设备数据表,和设备外设数据表。

最后

由于上位机和下位机开发语言有所差异,涉及到的相关函数接口各异,具体分析。下位机ESP8266和STM32需要实现串口转发,调试AT使得能够连上WIFI。上位机语音识别调取百度云API,JSON解析识别结果。

另外,近期推出了HMI-Board、Vision-Board也是做毕设和开源项目的绝佳选择,感兴趣的一起来看看吧:

image.png

END

作者:DXT-parsifal
来源:嵌入式应用研究院

推荐阅读

欢迎大家点赞留言,更多Arm技术文章动态请关注极术社区嵌入式客栈专栏欢迎添加极术小姐姐微信(id:aijishu20)加入技术交流群,请备注研究方向。

推荐阅读
关注数
2886
内容数
276
分享一些在嵌入式应用开发方面的浅见,广交朋友
目录
极术微信服务号
关注极术微信号
实时接收点赞提醒和评论通知
安谋科技学堂公众号
关注安谋科技学堂
实时获取安谋科技及 Arm 教学资源
安谋科技招聘公众号
关注安谋科技招聘
实时获取安谋科技中国职位信息