1、 熟练掌握C、C++,熟悉Python,掌握常用数据结构和基本算法;
2、 熟练掌握嵌入式开发工具软件,如:VS2010、STM32Cube、Qt、嘉立创EDA 、Keil等;
3、 熟悉常用的硬件接口以及通用协议,如:UART、SPI、I2C以及UDP、TCP 和MQTT网络协议等;
4、 掌握一定的电路知识,熟悉STM32单片机结构和原理,能使用STM32单片机进行下位机开发;
5、 熟练使用Qt界面设计和面向对象编程,结合SQLite数据库进行上位机界面开发;
6、 熟练使用Linux平台进行驱动开发,如OrangePi的Linux内核移植和驱动开发;
7、 熟练掌握FreeRTOS和FATFS的手动移植或者直接通过Cube进行开发;
8、 掌握一定的MQTT面向QT及Arm-Linux的主题通讯;
一、智能门禁系统
环境搭配:
STM32开发板、香橙派ARM、Qt、Keil、ArmLinux
项目描述:
1.实现终端设备默认密码存储于终端设备eeprom中,开锁时匹配。
2.Oled\数码管完成显示提示,led、beep完成开锁提示
3.通过后台App(Qt)能够修改密码,在终端设备中存储修改的密码到eeprom,修改成功在后台(QT)提示,网关中用文件储。
4.每次进出都需要记录到网关arm设备的lock.txt文件中可以进行记录查询。
5.后台可以申请临时一次性密码,在终端设备进行输入密码开锁
6.STM32终端设备使用freerots实时系统实现
二、温湿度检测
环境搭配:
STM32开发板、Qt、Keil、Linux
项目描述:
1.下位机STM32以定时器定时1秒为单位进行一次ADC采集,发送一次采集数据(温湿度),并通过串口通讯的形式发送至上位机,上位机通过下发命令控制是否进行采样。
2.下位机通过串口接收上位机命令开启关闭定时器采样。
3.上位机QT界面的ADC采样显示器,控制STM32单片机开启/关闭采样,通过串口接收STM32的采样信息完成折线图的绘制,并把接收的ADC的采样数据存储于数据库。把数据库信息另存为环境信息文本文件。
4.Linux的环境信息文件读取程序:读取Qt上位机转换的环境信息文件,并把环境信息文件的数据显示到终端,同时能够保存查看环境信息记录的查看时间到文件中。