imx6ull qt多页面控制系统(正点原子imx系列驱动开发)
开题答辩完了也考完了四六级,赶紧来更新一下一个月前留下的坑吧
QAQ首先,因为毕业设计需要用到这些知识所以就从网络上找了一个智能车机系统,借鉴了一下大佬的项目思路,缝缝补补一个月终于完成了这一内容。
在这里先感谢从两位大佬哪里得来的灵感:化作尘、扣扣673537534
ok,简单介绍一下。本系统主要有六个部分组成,分别包括硬件(由驱动调取资源)、时间、摄像机(OV2640)、天气、视频播放器及图书文本阅读器(sqlite3数据库保存书签),主布局如下图所示。
接下来介绍各部分的功能:
1、硬件
该部分通过qt的按键来驱动led、蜂鸣器以及自己撰写的mpu6050(IIC)、icm20608(SPI)和传感器(rs485和modbus-rtu)所构成。
下面的gif来演示一下mpu6050、icm20608以及传感器的功能。
2、相机
修改设备树中的iic驱动以及打开NXP官方的linux文件通过menuconfig进行配置ov2640的驱动。
选择摄像头并打开即可获取实时图像。按下拍照按键后可将当前状态下的缩略图储存在右上角并将将该照片储存在本地。
3、天气
通过网络进行查询获取所选城市的当天及未来几天的天气情况。并根据不同的天气情况显示对应的图案,以及最低最高温度的变化曲线图。
还可以通过右上角的查询按钮来获取其他城市的情况
4、视频播放器
该功能通过选中视频并进行播放、暂停以及停止功能。
5、图书阅读器
这里可以选择打开的书籍,并通过侧边按钮进行调节字体大小、获取当前进度、通过sqlite3数据库打开书签或保存书签 和 上下翻页等操作
最后,我通过向/etc/inittab追加 ::sysinit:/etc/init.d/myscript.sh
使得myscript.sh随系统启动,设置了开机执行驱动并自动连接wifi的脚本。
脚本位于跟文件的/etc/init.d/myscript.sh中
这里可以看到,开机后执行了mpu6050和icm20608的驱动,并连接了wifi。
在这里感谢以下up的精彩视频,教会我了很多内容:
多界面切换
获取时间
视频播放器
实时天气
文本阅读器
最后放上本次内容的uboot、kernel、dtb及根文件系统
github:
https://github.com/ranbing2233/imx6ull-system.git
网盘
链接:https://pan.baidu.com/s/1AkbG1w4djGlmc2cUS8kKMQ
提取码:wl41
友情提示:在使用该uboot启动时,请对bootargs中的内容进行修改。
若采用sd卡启动时,请将nfsroot的地址修改为你的上位机地址,将root改为你的电脑挂rootfs所在路径
bootargs=console=tty1 console=ttymxc0,115200 root=/dev/nfs nfsroot=10.12.24.137:/home/rbing/linux/nfs/buildrootfs,proto=tcp rw ip=10.12.24.110:10.12.24.137:10.12.24.1:255.255.255.0::eth0:off
用户名:root
密码:123456
还有两个用户ouc和rbing可以通过root用户设置密码
最后真诚地感谢各位大佬的阅读