掌握C/C++编程语言,熟悉linux系统,linux下环境开发,shell脚本,Makefile工具,gdb调试工具,多线程,常见数据结构。
掌握C++语言面向对象封装,继承,多态的思想,了解QT图形界面编程。
掌握linux下的网络编程,熟悉常见网络协议。
熟悉常用的数据库:sqlite3,MYSQL。
熟悉linux系统移植,包括u-boot, linux kernel。
熟悉ARM体系结构,ARM汇编语言。
熟悉STM32,包括GPIO,OLED,ADC,PWM,定时器,中断,PC总线等。
基于STM32的智能锁
开发工具:STM32CubeMX,Keil5
1.支持按键输入密码开锁,开锁成功LED灯亮起绿色,响起成功提示音,失败亮起绿色,响起失败提示音。
2.可以连接WiFi,用户使用手机app输入密码开锁。
3.可以通过OLED屏幕显示用户界面,可以显示密码输入,解锁是否成功,手机指令。
linux系统下的在线电子词典
开发工具:QT
1.实现服务器并发处理多客户端的登陆、查询等功能。
2.建立 QT 交互界面,通过各种组件功能,信号与槽函数实现界面切换、注册、登录功能,服务器使用sqlite3数据库保存客户端信息。
3.使用网络编程,实现远端登录查询功能。
4.使用多线程实现多用户同时登录。
音乐播放器
开发工具:Ubuntu,exynos 4412
1.系统移植,uboot移植,实现开发板运行。
2.ADC驱动的开发,LED的驱动开发,I2C实现陀螺仪驱动。
3.实现按键中断暂停,继续音乐播放,陀螺仪检测晃动切歌,ADC旋钮调节晃动灵敏度,LED显示当前灵敏度状态。