下位机:stm32使用的是比较新款的 STM32WBA55G-DK 板卡,带有蓝牙功能,顺便学习一下ST的蓝牙功能。
上位机:使用的是qt creator 开发的,我用的编译器版本是 QT 5.15.2 MSVC 2019 64bit的,其它的版本蓝牙功能可能会有问题。
识别:这个使用的是开源的nnom框架,感觉挺好用,就用了,数据集还是mnist。链接地址:https://github.com/majianjia/nnom.git
https://www.bilibili.com/video/BV1tocJe8EBE
- 下位机源码:(这个是在STM32WBA55这个系列板块的HAL库里面直接复制一份编写的),具体路径是:STM32WBA55G\STM32Cube_FW_WBA_V1.5.0\Projects\STM32WBA55G-DK1\Applications\BLE</u>
BLE_DataThroughput_Server-fix
- 上位机源码:
qt_ble_draw
- nnom的python脚本:
mnist_mini.py
-
项目具体说明详见:【STM32WBA55CG开发板】QT蓝牙数据通信应用——基于STM32的手写数字识别【汇总篇】-电子产品世界论坛
-
如果发现识别效果没有视频演示的那么好,是因为需要调整QT上位机上面那个画笔颜色,灰度的也会影响识别的效果,最后我发现浅灰色识别效果最好。
-
为啥不用LCD显示?因为用LCD的话似乎内存就不太够了,索性只能用8X8的点阵,凑合看吧。
-
代码写的很烂,开源互相学习一下吧~