logo资料库

【北京迅为】i.mx6ull终结者开发板使用手册_v1.7.2.pdf

第1页 / 共2070页
第2页 / 共2070页
第3页 / 共2070页
第4页 / 共2070页
第5页 / 共2070页
第6页 / 共2070页
第7页 / 共2070页
第8页 / 共2070页
资料共2070页,剩余部分请下载后查看
注意事项与售后维修
技术支持与开发定制
资料获取与后续更新
更新记录
前言 开发板使用前必读
必须注意的问题
一 光盘资料介绍
二 开发板使用前装配流程
第一部分 总领及学习指引
01 框架学习法
02 嵌入式系统学习的框架
03 关于裸机程序和仿真
04 基于迅为开发板的学习步骤
第一章 开发板初体验
1.1 初识i.MX6ULL终结者开发板
1.2 i.MX6ULL终结者硬件资源说明
1.2.1 i.MX6ULL核心板资源说明
1.2.2 i.MX6ULL终结者底板资源说明
1.3 i.MX6ULL终结者底板原理分析
1.3.1 核心板接口
1.3.2 启动方式原理部分
1.3.3 系统电源接口
1.3.4 复位电路
1.3.5 纽扣电池电路
1.3.6 CAN接口电路
1.3.7 RS485/TTL串口选择电路
1.3.8 GPIO接口电路
1.3.9 RS485电路
1.3.10 USB转串口电路
1.3.11 LED电路
1.3.12 按键电路
1.3.13 蜂鸣器电路
1.3.14 TF卡电路
1.3.15 EEPROM电路
1.3.16 音频电路
1.3.17 RGB屏幕电路
1.3.18 LVDS屏幕接口
1.3.19 USB OTG电路
1.3.20 USB HOST接口
1.3.21 CSI摄像头接口电路
1.3.22 WIFI/蓝牙电路
1.3.23 PCIE 4G模块电路
1.3.24 六轴传感器电路
1.3.25 光环境传感器电路
1.3.26 温湿度传感器电路
1.3.27 ADC电位器电路
1.3.28 红外接收电路
1.3.29 HDMI接口电路
1.3.30 以太网电路
1.4 i.MX6ULL终结者软件资源
1.5 外设功能验证
1.5.1 用户LED测试
1.5.2 蜂鸣器测试
1.5.3 ADC电位器测试
1.5.4 TF卡测试
1.5.5 USB HOST测试
1.5.6 以太网测试
1.5.7 用户按键测试
1.5.8 内存测试
1.5.9 Linux系统时钟测试
1.5.10 CSI摄像头测试
1.5.11 USB摄像头测试
1.5.12 AP3216C测试
1.5.13 WIFI联网测试
1.5.14 PCIE 4G模块测试
1.5.15 CAN接口测试
1.5.16 485接口测试
1.5.17 DHT11模块测试
1.5.18 OTG 接口的 host 模式测试
1.5.19 声卡测试
1.6 外设模块功能验证
1.6.1 RC522模块测试
1.6.2 步进电机模块测试
1.6.3 GPS模块测试
1.6.4 zigbee模块测试
1.6.5 继电器模块测试
1.6.6 lora模块测试
第二章 Ubuntu系统安装及配置
2.1 虚拟机VMware的安装
2.2 虚拟机安装Ubuntu系统
2.2.1 获取Ubuntu系统镜像
2.2.2 虚拟机安装Ubuntu系统
2.3 Ubuntu系统初体验
2.3.1 登录Ubuntu系统
2.3.2 Ubuntu系统设置
2.3.3 Ubuntu系统关机
2.3.4 Ubuntu设置中文显示
2.4 Ubuntu终端和常用命令
2.4.1 Ubuntu的终端
2.5 Ubuntu常用命令
2.5.1 文件信息查看命令ls
2.5.2 目录切换命令cd
2.5.3 显示当前路径命令pwd
2.5.4 系统信息查看命令uname
2.5.5 清屏命令clear
2.5.6 切换用户执行身份命令sudo
2.5.7 添加用户命令adduser
2.5.8 删除用户命令deluser
2.5.9 切换用户命令su
2.5.10 查看文件内容命令cat
2.5.11 网络配置命令ifconfig
2.5.12 帮助命令man
2.5.13 系统重启命令reboot
2.5.14 系统关机命令poweroff
2.6 apt-get软件下载工具
2.6.1 更新软件列表
2.6.2 检查依赖是否有损坏
2.6.3 软件安装
2.6.4 软件更新
2.6.5 软件卸载
2.7 文本编辑工具
2.8 Linux文件系统
2.8.1 Linux文件系统类型
2.8.2 文件操作命令
2.9 Linux用户权限
2.9.1 用户组及用户
2.9.2 文件权限管理
2.9.3 权限管理命令
第三章 Ubuntu下C 编程入门
3.1 Linux下编写第一个C 程序
3.1.1 代码编写
3.1.2 代码编译
3.2 gcc编译器
3.2.1 gcc命令分析
3.2.2 编译警告错误处理
3.2.3 gcc编译流程
3.3 初识Makefile
3.3.1 什么是Makefile
3.3.2 第一个Makefile
3.4 Makefile语法
3.4.1 初识Makefile
3.4.2 Makefile的变量
3.4.3 条件判断
3.4.4 使用函数
3.4.5 在规则中使用通配符
第二部分 裸机开发
第四章 开发环境搭建详解
4.1 搭建SSH服务
4.2 Windows安装ssh客户端
4.3 搭建交叉编译环境
4.4 SecureCRT 软件安装和使用
4.5 安装CH340串口驱动
4.6 Source Insight 软件安装和使用
4.7 Putty软件的安装教程
4.8 MobaXterm的安装教程
4.9 VMware 虚拟机扩展Ubuntu系统磁盘空间
4.10 Ubuntu瘦身
第五章 i.MX6ULL启动方式和镜像文件格式
5.1 i.MX6ULL启动方式
5.2 镜像格式
第六章 i.MX6ULL镜像烧写
6.1 mfgtool烧写镜像
6.2 屏幕设置
第七章 Cortex-A7架构
7.1 Cortex-A7运行模式
7.2 Cortex-A7寄存器组
7.2.1 通用寄存器
7.2.2 程序状态寄存器
第八章 初识ARM汇编
8.1 GNU汇编语法
8.2 ARM汇编指令
8.2.1 MOV指令
8.2.2 MRS指令
8.2.3 MSR指令
8.2.4 LDR指令
8.2.5 STR指令
8.2.6 入栈,出栈指令
8.2.7 跳转指令
8.2.8 逻辑运算指令
8.2.9 算数运算符
第九章 第一个汇编实验
9.1 i.MX6ULL GPIO分析
9.2 IO引脚配置
9.3 GPIO配置
9.4 GPIO时钟
9.5 LED原理分析
9.6 LED汇编程序
9.7 编译LED汇编程序
第十章 C 语言实现LED例程
10.1 C 程序版LED例程简介
10.2 原理图分析
10.3 程序编写
10.4 修改Makefile
10.5 编译烧写验证
第十一章 移植官方SDK
11.1 官方SDK简介
11.2 硬件原理图分析
11.3 SDK程序编写
11.4 编译下载
第十二章 创建裸机工程
12.1 创建工程目录结构
12.2 原理分析
12.3 程序设计
12.4 编译及运行
第十三章 蜂鸣器例程
13.1 蜂鸣器原理
13.2 原理分析
13.3 程序设计
13.4 编译及运行
第十四章 按键例程
14.1 按键输入原理
14.2 原理分析
14.3 程序设计
14.4 编译及运行
第十五章 主频和时钟配置例程
15.1 i.MX6ULL时钟系统
15.2 原理分析
15.3 程序设计
15.4 编译及运行
第十六章 GPIO中断例程
16.1 中断系统简介
16.1.1 中断向量表
16.1.2 GIC控制器
16.2 原理分析
16.3 程序设计
16.4 编译及运行
第十七章 EPIT定时器例程
17.1 EPIT定时器介绍
17.2 原理分析
17.3 程序设计
17.4 编译及运行
第十八章 定时器按键例程
18.1 定时器按键原理
18.2 原理分析
18.3 程序设计
18.4 编译及运行
第十九章 GPT定时器延时例程
19.1 GPT 定时器简介
19.2 GPT定时器延时原理
19.3 原理分析
19.4 程序设计
19.5 编译及运行
第二十章 串口通信例程
20.1 串口简介
20.2 原理分析
20.3 程序设计
20.4 编译及运行
第二十一章 串口格式化函数例程
21.1 原理分析
21.2 程序设计
21.3 编译及运行
第二十二章 LCD屏幕显示例程
22.1 eLCDIF接口简介
22.2 原理分析
22.3 程序设计
22.4 编译及运行
第二十三章 SRTC实时时钟例程
23.1 SRTC简介
23.2 原理分析
23.3 程序设计
23.4 编译及运行
第二十四章 I2C操作
24.1 I2C简介
24.2 原理分析
24.3 程序设计
24.4 编译及运行
第二十五章 电容触摸实验
25.1 触摸屏简介
25.2 原理分析
25.3 程序设计
25.4 编译及运行
第二十六章 屏幕背光调节例程
26.1 背光调节简介
26.2 原理分析
26.3 程序设计
26.4 编译及运行
第二十七章 MPU6050 六轴传感器例程
27.1 MPU6050简介
27.2 原理分析
27.3程序设计
27.4 编译运行
第二十八章 DHT11温湿度模块例程
28.1 DHT11简介
28.2 原理分析
28.3 程序设计
28.4 编译运行
第三部分Linux系统移植篇
第二十九章 Uboot编译及移植
29.1 U-Boot介绍
29.1.1 u-boot的使用
29.1.1.1 环境变量
29.1.1.2 常用命令
29.1.2 获取u-boot
29.1.2.1 获取源码
29.1.2.2 目录介绍
29.2 U-Boot移植
29.2.1 编译NXP官方NAND版本u-boot
29.2.1.1 环境搭建
29.2.1.2 更改默认环境变量值
29.2.1.3 编译
29.2.2 编译自定义eMMC版本u-boot
29.2.2.1 环境搭建
29.2.2.2 添加自己的板级文件夹
29.2.2.3 增加开发板配置文件
29.2.2.4 添加头文件
29.2.2.5 修改配置文件
29.2.2.6 编译测试
29.3 u-boot图形化配置
29.4 u-boot启动流程
29.4.1 汇编阶段
29.4.2 C语言阶段
29.5 编译终结者开发板uboot
29.5.1 安装第三方库
29.5.2 编译终结者开发板Uboot
第三十章 内核的编译及移植
30.1 Linux 4.1.15系统移植
30.1.1 NXP官方Linux源码编译
30.1.1.1 配置交叉编译工具链
30.1.1.2 配置并编译Linux内核
30.1.2 在Linux中添加自己的开发板
30.1.2.1 添加默认开发板内核配置文件
30.1.2.2 添加开发板对应的设备树文件
30.1.2.3 编译开发板对应镜像
30.1.3 添加简单设备驱动
30.1.3.1 网卡驱动
30.1.3.2 LED灯驱动
30.2 Linux 5.4.3系统移植
30.2.1 获取Linux内核源码
30.2.2 搭建编译环境
30.2.3 编译内核
30.3 编译终结者开发板内核
30.3.1 安装第三方库
30.3.2 编译终结者开发板Linux内核
第三十一章 Linux内核启动流程
31.1 Linux内核启动(一):Linux内核自解压过程
31.2 Linux内核启动(二):ARM处理器相关设置
31.2.1 Linux内核入口函数Stext
31.2.2 _Mmap_Switched 函数
31.3 Linux内核启动(三):内核初始化
31.3.1 Start_Kernel 函数
31.3.2 Rest_Init 函数
31.3.3 Init 进程
第三十二章 Linux文件系统的构建
32.1 根文件系统简介
32.2 根文件系统目录介绍
32.3 BusyBox构建根文件系统
32.3.1 获取BusyBox源码
32.3.2 编译BusyBox构建根文件系统
32.3.3 构建整个根文件系统
32.4 完善根文件系统
32.4.1 创建/etc/init.d/rcS文件
32.4.2 创建/etc/fstab文件
32.4.3 创建/etc/inittab文件
32.4.4 生成文件系统镜像
第四部分 Linux驱动开发
第三十三章 字符设备驱动
33.1 字符设备驱动开发
33.2 常规字符设备驱动框架
33.3 简化版字符设备驱动框架
33.4 设备号
33.4.1 设备号的组成
33.4.2 设备号的分配
33.5 驱动模块的安装与卸载
33.6 字符设备驱动实验
33.6.1 常规字符驱动程序
33.6.2 简化版字符设备驱动程序
33.6.3 Linux下应用测试程序
33.6.4 编译驱动和应用程序
33.6.5 运行测试
33.7 自动创建设备节点
33.7.1 mdev简介
33.7.2 创建和删除类函数
33.7.3 创建设备函数
33.7.4 代码实例
33.7.5 运行测试
第三十四章 Linux设备树
34.1 什么是设备树
34.2 DTS、DTC和DTB
34.3 DTS设备树语法结构
34.3.1 dtsi头文件
34.3.2 设备节点信息
34.3.3 设备节点及label的命名
34.3.4 标准属性
34.3.5 根节点compatible属性
34.3.6 在设备节点中添加或修改内容
34.4 设备树实验
34.4.1 初始结构
34.4.2 添加CPU处理器
34.4.3 添加设备
34.4.4 CPU编址
34.4.5 内存映射设备
34.4.6 非内存映射设备
34.4.7 地址转换
34.4.8 添加中断
34.5 设备树在系统中的体现
34.6 特殊节点
34.6.1 aliases子节点
34.6.2 chosen子节点
34.7 DTB文件格式
34.7.1 DTB文件格式总览
34.7.2 DTB起始段
34.7.3 内存预留块
34.7.4 结构块
34.7.5 字符串块
34.8 Binding信息文档
34.9 设备树常用OF操作函数
34.9.1 查找节点的OF函数
34.9.2 查找父子节点的OF函数
34.9.3 获取属性值的OF函数
34.9.4 其他常用的 OF 函数
第三十五章 Pinctrl子系统和GPIO子系统
35.1 Pinctrl子系统
35.1.1 配置pinctrl
35.1.2 调用pinctrl
35.2 GPIO子系统
第三十六章 Linux LED实验
36.1 LED设备注册流程
36.2 LED硬件原理图分析
36.3 修改设备树文件
36.3.1 添加Pinctrl信息
36.3.2 添加LED设备节点
36.4 编写LED驱动程序
36.5 编写应用测试程序
36.6 编译运行测试
36.6.1 编译LED驱动文件
36.6.2 编译应用测试程序
36.6.3 运行测试
第三十七章 Linux 蜂鸣器实验
37.1 蜂鸣器设备注册流程
37.2 蜂鸣器硬件原理图分析
37.3 修改设备树文件
37.3.1 添加pinctrl信息
37.3.2 添加beep设备节点
37.4 编写蜂鸣器驱动程序
37.5 编写应用测试程序
37.6 编译运行测试
37.6.1 编译蜂鸣器驱动文件
37.6.2 编译应用测试程序
37.6.3 运行测试
第三十八章 Linux并发与竞争
38.1 并发与竞争
38.2 中断屏蔽
38.3 原子操作
38.3.1 什么是原子操作
38.3.2 整型原子操作
38.3.3 位原子操作
38.4 自旋锁
38.4.1 自旋锁简介
38.4.2 自旋锁相关函数
38.4.3 其他类型的锁
38.5 信号量
38.5.1 信号量简介
38.5.2 信号量相关函数
38.6 互斥体
38.6.1 互斥体简介
38.6.2 互斥体相关函数
第三十九章 Linux并发与竞争实验
39.1 原子操作
39.1.1 实验程序编写
39.1.2 编写应用测试程序
39.1.3 运行测试
39.2 自旋锁实验
39.2.1 实验程序编写
39.2.2 编写应用测试程序
39.2.3 运行测试
39.3 信号量实验
39.3.1 编写驱动程序
39.3.2 编写应用测试程序
39.3.3 运行测试
39.4 互斥体实验
39.4.1 编写驱动程序
39.4.2 编写应用测试程序
39.4.3 运行测试
第四十章 Linux按键输入实验
40.1 Linux下按键驱动原理
40.2 按键硬件原理图分析
40.3 修改设备树文件
40.3.1 添加Pinctrl节点
40.3.2 添加KEY设备节点
40.4 按键驱动程序
40.5 应用测试程序
40.6 运行测试
40.6.1 编译按键驱动文件
40.6.2 编译应用测试程序
40.6.3 运行测试
第四十一章 Linux内核定时器实验
41.1 Linux时间管理和内核定时器简介
41.1.1 Linux内核时间管理
41.1.1.1 内核中的时间概念
41.1.1.2 节拍率
41.1.1.3 jiffies
41.1.2 内核定时器简介
41.2 实验程序编写
41.2.1 驱动程序编写
41.2.2 应用测试程序编写
41.3 运行测试
41.3.1 编译驱动文件
41.3.2 编译应用程序
41.3.3 运行测试
第四十二章 Linux中断实验
42.1 Linux中断简介
42.1.1 Linux中断介绍
42.1.2 Linux中断相关函数
42.1.3 顶半部与底半部
42.1.4 设备树中的中断节点
42.1.5 驱动获取中断号函数
42.2 实验程序编写
42.2.1 修改设备树文件
42.2.2 按键中断驱动程序
42.2.3 编写应用测试程序
42.3 运行测试
42.3.1 编译驱动程序
42.3.2 编译应用测试程序
42.3.3 运行测试
第四十三章 Linux阻塞和非阻塞IO实验
43.1 阻塞和非阻塞IO
43.1.1 阻塞和非阻塞简介
43.1.2 等待队列
43.1.3 轮询
43.1.4 Linux驱动下的poll操作函数
43.2 阻塞IO实验
43.2.1 驱动程序编写
43.2.2 编写应用测试程序
43.2.3 运行测试
43.3 非阻塞IO实验
43.3.1 编写驱动程序
43.3.2 编写应用测试程序
43.3.3 运行测试
第四十四章 Linux异步通知实验
44.1 异步通知
44.1.1 异步通知概念
44.1.2 Linux信号
44.1.3 应用程序中信号的处理
44.1.4 驱动中信号的处理
44.2 编写实验程序
44.2.1 驱动程序编写
44.2.2 应用测试程序
44.2.3 运行测试
第四十五章 Platform设备驱动
45.1 Linux设备驱动分层和分离
45.1.1 设备驱动的分层思想
45.1.2 主机驱动和外设驱动分离思想
45.2 Platform平台驱动模型
45.2.1 Platform设备
45.2.2 Platform驱动
45.2.3 Platform总线
45.3 实验程序
45.3.1 Platform设备和驱动程序
45.3.2 应用测试程序
45.4 运行测试
45.4.1 编译驱动和设备程序
45.4.2 编译应用测试程序
45.4.3 运行测试
第四十六章 设备树下的Platform驱动
46.1 设备树下的Platform设备
46.2 实验程序编写
46.2.1 修改设备树文件
46.2.2 platform驱动程序
46.2.3 应用测试程序
46.3 运行测试
46.3.1 编译驱动程序
46.3.2 编译应用测试程序
46.3.3 运行测试
第四十七章 Linux内核自带LED灯驱动
47.1 Linux内核中的LED灯驱动
47.2 Linux自带LED驱动分析
47.2.1 LED灯驱动框架分析
47.2.2 Module_platform_driver函数解析
47.2.3 Gpio_led_probe函数解析
47.3 添加设备树节点
47.4 运行测试
第四十八章 Linux MISC驱动
48.1 misc设备驱动简介
48.2 编写实验程序
48.2.1 修改设备树文件
48.2.2 编写驱动程序
48.2.3 应用测试程序
48.3 运行测试
48.3.1 编译驱动程序
48.3.2 编译应用测试程序
48.3.3 运行测试
第四十九章 Linux INPUT子系统实验
49.1 Input子系统
49.1.1 input子系统简介
49.1.2 input驱动程序编写流程
49.1.3 input_event结构体
49.2 编写实验程序
49.2.1 编写驱动程序
49.2.2 应用测试程序
49.3 运行测试
49.3.1 编译驱动程序
49.3.2 编译应用测试程序
49.3.3 运行测试
49.4 linux自带按键驱动程序
49.4.1 Linux自带按键驱动程序源码
49.4.2 Linux内核自带按键驱动程序的使用
第五十章 Linux LCD驱动实验
50.1 Linux下LCD驱动简介
50.1.1 framebuffer设备
50.1.2 LCD驱动解析
50.2 编写LCD驱动程序
50.2.1 设备树中LCD屏幕GPIO配置
50.2.2 LCD屏幕参数节点信息
50.2.3 LCD屏幕背光节点信息
50.3 运行测试
50.3.1 LCD屏幕基本测试
50.3.2 LCD背光调节
第五十一章 Linux RTC驱动实验
51.1 Linux内核RTC驱动简介
51.2 i.MX6UL下的RTC驱动
51.3 Linux系统下RTC时间设置与查看
51.3.1 查看RTC时间
51.3.2 设置RTC时间
第五十二章 Linux I2C驱动实验
52.1 Linux I2C驱动框架简介
52.1.1 I2C总线驱动
52.1.2 I2C设备驱动
52.1.3 I2C核心
52.2 IMX6ULL的I2C总线驱动分析
52.3 I2C设备驱动编写流程
52.3.1 设备信息描述
52.3.2 I2C设备的数据收发和处理
52.4 实验程序编写
52.4.1 硬件原理图
52.4.2 修改设备树
52.4.3 驱动程序编写
52.4.4 应用测试程序
52.5 运行测试
52.5.1 编译驱动程序
52.5.2 编译应用测试程序
52.5.3 运行测试
第五十三章 Linux RS232/485驱动实验
53.1 Linux下的UART驱动框架
53.1.1 uart_driver结构体
53.1.2 uart_port结构体
53.1.3 uart_ops结构体
53.2 i.MX6UL UART驱动分析
53.2.1 uart的platform驱动框架
53.2.2 uart_driver初始化
53.2.3 uart_port初始化和注册
53.2.4 imx_pops结构体
53.3 硬件原理图
53.3.1 RS232原理图
53.3.2 RS485原理图
53.4 RS232驱动
53.4.1 设备树添加UART3节点
53.5 RS232驱动测试
53.5.1 编写应用测试程序
53.5.2 运行测试
53.6 RS485测试
第五十四章 Linux 电容触摸屏实验
54.1 Linux下电容触摸屏驱动框架
54.1.1 多点触摸协议详解
54.1.2 Type A 触摸点信息上报时序
54.1.3 Type B触摸点信息上报时序
54.1.4 MT其他事件的使用
54.1.5 多点触摸使用到的API函数
54.1.6 多点电容触摸驱动框架
54.2 硬件原理图
54.3 实验程序编写
54.3.1 修改设备树文件
54.3.2 编写多点电容触摸驱动
54.4 运行测试
54.4.1 编译驱动程序
54.4.2 运行测试
54.4.3 将驱动添加到内核中
54.5 Tslib移植和使用
54.5.1 获取tslib源码
54.5.2 编译tslib
54.5.3 测试tslib
54.6 使用Linux内核自带的ft5426驱动
第五十五章 Linux WIFI驱动实验
55.1 wifi驱动添加和编译
55.1.1 在Linux内核中添加wifi驱动
55.1.2 配置Linux内核
55.1.3 Rtl8723 wifi模块驱动测试
55.2 Wireless Tools 工具移植与测试
55.2.1 wireless tools工具移植
55.2.2 wireless tools工具测试
55.3 Wpa_supplicant 移植
55.3.1 libopenssl移植
55.3.2 libnl库移植
55.3.3 wpa_supplicant 移植
55.4 rtl8723 Wifi联网测试
第五十六章 Linux 4G通信实验
56.1 4G网络连接
56.2 EC20 4G模块配置
56.2.1 添加USB设备信息
56.2.2 Linux内核配置
56.3 EC20 4G模块联网测试
56.3.1 PPP软件包编译
56.3.2 EC20 4G模块联网测试
第五部分 Linux构建文件系统篇
第五十七章 Linux文件系统开发
57.1 根文件系统简介
57.1.1 根文件系统
57.1.2 根文件系统目录
57.2 制作最小文件系统镜像
57.2.1 BusyBox工具简介
57.2.2 Busybox 制作最小文件系统
57.2.2.1 准备源码
57.2.2.2 编译环境
57.2.2.3 支持中文
57.2.2.4 配置Busybox
57.2.2.5 编译Busybox
57.2.2.6 整理最小文件系统
57.2.2.7 制作文件系统镜像及测试
57.3 最小Linux系统功能测试
57.3.1 U盘挂载与卸载
57.3.2 编译测试helloworld
57.3.3 广域网连接测试
57.3.4 中文显示测试
第五十八章 Buildoot文件系统构建篇
58.1 buildroot简介
58.2 buildroot构建文件系统
58.2.1 获取Buildroot
58.2.2 配置及编译Buildroot
58.3 buildroot文件系统测试
58.4 buildroot添加支持第三方软件
58.4.1 使能Alsa-lib
58.4.2 使能Alsa-utils
58.5 buildroot下配置Busybox
第五十九章 Yocto文件系统构建篇
59.1 注意事项
59.2 在线构建文件系统
59.2.1 安装软件包与配置git
59.2.1.1 安装git
59.2.1.2 设置git
59.2.1.3 安装其他软件包
59.2.2 获取Yocto项目
59.2.2.1 下载repo
59.2.2.2 repo同步
59.2.3 构建文件系统
59.2.4 构建SDK工具
59.3 离线构建文件系统
第六十章 Ubuntu文件系统
60.1 Ubuntu-base获取
60.2 Ubuntu-base构建
60.2.1 解压Ubuntu-base
60.2.2 安装Qemu-User-Static工具
60.2.3 设置软件源
60.2.4 挂载根文件系统并Chroot
60.3 Ubuntu文件系统测试
60.3.1 打包烧写Ubuntu
60.3.2 Ubuntu 根文件系统测试
第六十一章 Debian文件系统的构建
61.1 i.MX6ULL 移植Debian文件系统
61.1.1 安装Qumu和Debootstrap
61.1.2 抽取Debain文件系统
61.1.3 完善文件系统
61.1.4 打包文件系统
61.1.5 烧写验证
第六部分 QT开发
第六十二章 QT应用开发
62.1 c++入门
62.1.1 c++基础
62.1.2 c++类和对象
62.1.3 函数的重载
62.1.4 构造函数和析构函数
62.1.5 虚函数和纯虚函数
62.2 Qt基础
62.2.1 安装Qtcreator
62.2.2 创建工程
62.2.3 信号和槽
62.2.3.1 自动关联
62.2.3.2 手动关联
62.2.4 给界面添加图片
62.2.4.1 添加资源
62.2.4.2 添加图片
62.2.4.3 Label添加图片
62.2.5 界面布局
62.2.5.1 水平布局
62.2.5.2 垂直布局
62.2.5.3 栅格布局
62.2.6 界面切换
62.2.7 Qt串口编程
62.2.7.1 界面布局
62.2.7.2 实现串口功能
62.2.8 Qt程序打包和部署
62.2.9 Qt网络编程
62.2.9.1 TCP实现服务器和客户端
62.2.9.2 UDP实现服务器和客户端
62.2.10 Qt定时器
62.2.10.1 实验步骤
62.2.10.2 部分代码
62.3 Qt系统移植
62.3.1 制作根文件系统
62.3.1.1 准备源码
62.3.1.2 编译环境
62.3.1.3 支持中文
62.3.1.4 配置busybox
62.3.1.5 编译busybox
62.3.1.6 整理最小文件系统
62.3.1.6.1 制作文件系统镜像及测试
62.3.2 交叉编译Qt源码
62.3.3 搭建Qt文件系统
62.3.4 交叉编译 Qt代码
62.4 Qt下控制硬件
62.5 Qt for Android
62.5.1 搭建开发环境
62.5.2 制作安卓APP
62.6 一键烧写QT程序到开发板
62.6.1 在开发板上移植ssh
62.6.2 安装ssh
62.6.3 生成KEY文件,并安装
62.6.4 修改目标板密钥文件
62.6.5 测试
62.6.6 在Ubuntu上搭建QT开发环境
62.6.7 配置编译套件
第六十三章 QT实战项目
63.1 DHT11&网络编程实战练习
63.1.1 项目前准备
63.1.2 软件流程图
63.1.3 Linux应用程序
63.1.4 终结者Qt服务器
63.1.4.1 界面布局
63.1.4.2 UDP服务器端
63.1.4.3 TCP服务器端
63.1.5 PC端Qt软件开发
63.1.5.1 界面布局
63.1.5.2 界面切换
63.1.5.3 TCP客户端
63.1.6 运行测试
第六十四章 使用Yocto文件系统开发QT
64.1 安装测试Qt Creator
64.1.1 QT安装包获取
64.1.2 QT安装
64.1.3 Ubuntu下QT应用开发
64.2 安装交叉编译工具及QT
64.3 搭建IMX6Ul/ULL QT Creator交叉编译环境
64.4 QT工程的编译及测试
64.4.2 命令行编译QT程序
64.4.1 QT Creator直接编译ARM架构程序
64.4.3 运行Helloworld
64.5 文件系统
64.5.1 外部存储设备(U盘,TF卡)使用
64.5.2 网络配置
64.5.3 触摸测试
64.5.4 屏幕亮度(背光)
第七部分 Linux系统编程
第六十五章 文件IO和标准IO
65.1 文件IO open()/close()
65.2 文件IO read()
65.3 文件IO write()
65.4 获取目录内文件列表
65.5 标准IO打开关闭文件流
65.6 标准IO读文件
65.7 标准IO写文件
第六十六章 进程基础
66.1进程创建
66.2终止与回收
66.3 exec函数族
第六十七章 进程间通信
67.1无名管道
67.2有名管道
67.3信号
67.4 System V消息队列
67.5 System V共享内存
67.6 System V信号灯
67.7 UNIX域套接字
第六十八章 线程基础
68.1线程创建
68.2线程终止与回收
第六十九章 线程同步
69.1 POSIX无名信号量
69.2互斥锁
69.3条件变量
第八部分 Linux系统开发进阶
第七十章 Mfgtools修改单独只烧写Uboot,内核,文件系统
第七十一章 iTOP-i.MX6ULL开发板-修改开机进度条修改文档
第七十二章 iTOP-i.MX6ULL开发板-Uboot-Logo修改文档
72.1 Uboot修改
72.2 Uboot测试
第七十三章 iTOP-i.MX6ULL开发板-内核-Logo 修改使用文档
73.1 内核配置
73.2 生成 PPM 文件
73.2.1 使用 PS 软件修改图片分辨率和位深度
73.2.2 使用工具“Bmptopnm”将图片转化为 ppm 格式
73.2.3 修改内核 Logo 文件
73.3 测试
73.4 Logo 位置的居中调整
第七十四章 iTOP-i.MX6ULL开发板-移植Gdb+Gdbserver调试
第七十五章 iTOP-iMX6ULL开发板-移植ssh服务
75.1 SSH 官网和下载地址
75.2 详细移植过程
75.2.1 移植 Zlib
75.2.2 移植 Openssl
75.2.3 移植 SSH
75.3 安装测试
75.3.1 基本文件的安装
75.3.2 生成 Key 文件,并安装
75.3.3 修改目标板密钥文件
75.3.4 测试
第七十六章 iTOP-i.MX6ULL开发板-Jtag调试
76.1 调试需要的硬件环境
76.2 搭建开发环境
76.2.1 安装Jlink V9驱动
76.2.2 安装I.MX6ULL SDK开发包
76.2.3 安装IAR开发工具
76.3 IAR JLNK调试SDK程序
76.4 查看变量的实时值
第七十七章 iTOP-i.MX6ULL开发板-网络通信-套字节TCP
77.1 实验操作
第七十八章 iTOP-i.MX6ULL开发板-网络通信-套字节UDP
78.1 实验操作
第七十九章 iTOP-i.MX6ULL开发板-Tftp烧写和Nfs启动
79.1配置开发板网络
79.2 tftp服务搭建
79.3 nfs服务搭建
79.4 设置自启动参数
第八十章 iTOP-i.MX6ULL开发板-搭建Web服务器
第八十一章 iTOP-i.MX6ULL开发板-Modbus移植和使用
81.1 什么是Modbus
81.2 源码下载
81.3 编译和移植
81.4 移植ARM测试程序
81.5 X86-Linux的Modbus的移植和编译
81.6 测试
第八十二章 iTOP-i.MX6ULL开发板-USB转串口驱动Ch34X移植
第八十三章 iTOP-i.MX6ULL开发板-Sqlite3移植和使用
第八十四章 iTOP-i.MX6ULL开发板-Qt5.7Mplayer移植文档
84.1 交叉编译Libmad-0.15.1b
84.2 交叉编译Alsa-lob-1.0.22
84.3 交叉编译MPlayer-1.0rc3
84.4 测试软件使用
第八十五章 iTOP-i.MX6ULL开发板-移植OpenCv2.4.9
85.1 安装交叉编译工具
85.2 搭建OpenCv编译环境
85.3 QT程序编译
85.4 烧写文件系统
85.5 测试开发板
第八十六章 iTOP-i.MX6ULL开发板-移植OpenCv3.4.1
86.1 安装交叉编译工具
86.2 搭建 OpenCV 的编译环境
86.3 编译 OpenCV 源码
86.4 打包文件系统
86.5 烧写文件系统
86.6 测试开发板
第八十七章 iTOP-i.MX6ULL开发板-网络测试方法
87.1 测试环境搭建
87.2 安装 Java环境
87.3 安装测试软件
87.4 设置网络
87.5 TCP测试
87.6 UDP测试
第八十八章 iTOP-i.MX6ULL开发板-Mqtt 移植教程
88.1 MQTT介绍
88.2 在 X86 上安装mosquitto
88.3 在x86上测试mosquitto
88.4 移植 mosquitto 到开发板
88.5 把 mosquitto 移植到开发板
88.6 使用命令在开发板上测试 mqtt
88.7 使用代码在开发板上测试 mqtt
第八十九章 iTOP-i.MX6ULL开发板-Busybox移植DHCP
89.1 安装交叉编译工具链
89.2 下载DHCP-4.4.1源码
89.3 交叉编译DHCP-4.4.1
89.4 打包文件系统
89.5 烧写文件系统
89.6 测试开发板
第九十章 iTOP-i.MX6ULL开发板-C程序调用shell
第九十一章 iTOP-iMX6ULL开发板-八路串口配置
91.1 文档说明
91.2 UART2配置
91.3 UART3配置
91.4 UART4配置
91.5 UART5配置
91.6 UART6配置
91.7 UART7配置
91.8 UART8配置
91.9 UART1使用方法
第九十二章 iTOP-iMX6ULL开发板-Python移植
92.1源码包
92.2编译
92.2.1 编译host版解释器
92.2.2 arm补丁
92.2.3 交叉编译配置
92.2.4 编译和安装测试
92.3 运行测试
92.3.1 库功能文件测试
92.3.2 数据库测试
92.3.3 time和datetime测试
92.3.4 sqlite3库的移植
第九十三章 iTOP-iMX6ULL开发板-Samba服务搭建
第九十四章 iTOP-iMX6ULL开发板-Qt窗口旋转
第九十五章 iTOP-iMX6ULL开发板-i2c测试工具
95.1 移植
95.2 测试
第九十六章 iTOP-iMX6ULL开发板-Qt5下使用UVC摄像头
第九十七章 iTOP-iMX6ULL开发板-移植mjpg-streamer实现远程监控
97.1 移植MJPG库
97.2 移植mjpg-streamer服务器
97.3 测试
第九十八章 iTOP-iMX6ULL开发板-FFmpeg移植
98.1 编译x264
98.2 编译FFmpeg
98.3 移植到ARM开发板
98.4 测试
第九十九章 iTOP-iMX6ULL开发板-创建ap热点
99.1 实验环境
99.2 交叉编译 openssl
99.3 交叉编译 libnl
99.4 交叉编译 hostapd
99.5 交叉编译iptables
99.6 准备所需库文件,配置文件和执行文件
99.6.1 打包 openssl 库
99.6.2 打包 libnl 库
99.6.3 拷贝库文件和 hostap
99.7内核配置iptables
99.8 开发板上配置 AP 热点
迅为电子 i.MX6ULL 终结者-开发板使用 手册日期:2020-03-17 www.topeetboard.com
北京迅为电子有限公司 i.MX6ULL 终结者-开发板使用手册 注意事项与售后维修 一 注意事项  请注意和遵循标注在产品上的所有警示和指引信息;  请勿带电插拔核心板及外围模块;  使用产品之前,请仔细阅读本手册,并妥善保管,以备将来参考;  请使用配套电源适配器,以保证电压、电流的稳定;  请在凉爽、干燥、清洁的地方使用本产品;  请勿在冷热交替环境中使用本产品,避免结露损坏元器件;  请勿将任何液体泼溅在本产品上,如果不慎被任何液体泼溅或浸润,请立刻断电并充分晾干;  请勿使用有机溶剂或腐蚀性液体清洗本产品;  请勿在多尘、脏乱的环境中使用本产品,如果长期不使用,请包装好本产品;  请勿在振动过大的环境中使用,任何跌落、敲打或剧烈晃动都可能损坏线路及元器件;  请勿在通电情况下,插拔核心板及外围模块(特别是串口模块);  请勿自行维修、拆解本产品,如产品出现故障应及时联系本公司进行维修;  请勿自行修改或使用未经授权的配件,由此造成的损坏将不予保修; 二 售后维修 凡是通过迅为直接购买或经迅为授权的正规代理商处购买的迅为产品,均可享受以下权益: 1、开发板本身 1 年免费保修服务(配件除外); 2、保修期满后出现产品异常,迅为提供有偿维修服务,可与迅为取得联系,收费视具体情况而定。如 遇损坏程度严重等其他不可控因素导致无法维修的,公司不再提供维修服务; 3、如您购买的产品需要维修或检测,请提前备份机器内的相关数据。迅为不对因数据丢失所造成的损 失负责。 注:以下情况不属于免费维修范围,可提供有偿维修: 1、超出保修期的产品; 2、非保元件:CPU、内存芯片、Flash; 3、由于使用不当,出现诸如 PCB 烧毁、破裂等物理损伤的产品; 4、由于人为疏忽或错误使用、未按说明书规定使用而造成的产品损坏等; 5、拆装或更换组件、器件而造成无法复原的开发板; 6、在将故障件返回迅为技术服务部的过程中由于包装或运输操作不当造成损坏的产品。 日期:2020-03-17 2 www.topeetboard.com
北京迅为电子有限公司 i.MX6ULL 终结者-开发板使用手册 维修周期:收到返修产品后,我们将即日安排工程师进行检测,我们将在短时间内维修或更换并寄回。 一般的故障维修周期为 5 个工作日(自我司收到物品之日起,不计运输过程时间),由于特殊故障导致无 法短期内维修的产品,我们会与用户另行沟通并确认维修周期。 维修费用:在免费保修期内的产品,由于产品质量问题引起的故障,不收任何维修费用;不属于免费 保修范围内的故障或损坏,在检测确认问题后,我们将与客户沟通并确认维修费用,我们仅收取元器件材 料费,不收取维修服务费;超过保修期限的产品,根据实际损坏的程度来确定收取的元器件材料费和维修 服务费。 运输费用:产品正常保修时,用户寄回的运费由用户承担,维修后寄回给用户的费用由我司承担。非 正常保修产品来回运费均有用户承担。 联系方式: 地 址:北京市海淀区永丰产业基地丰慧中路 7 号新材料创业大厦 A 座 409 联系人:迅为开发板售后服务部 北京迅为电子有限公司 邮 编:100094 电 话:010-58957586 日期:2020-03-17 3 www.topeetboard.com
北京迅为电子有限公司 i.MX6ULL 终结者-开发板使用手册 技术支持与开发定制 1、技术支持范围 (1) 了解产品的软、硬件资源提供情况咨询; (2) 产品的软、硬件手册使用过程中遇到的问题; (3) 下载和烧写更新系统过程中遇到的问题; (4) 产品用户的资料丢失、更新后重新获取; (5) 产品的故障判断及售后维修服务。 2、技术讨论范围 由于嵌入式系统知识范围广泛,涉猎种类繁多,我们无法保证对各种问题都能一一解答,以下内 容无法供技术支持,只能提供建议。 (1) 源码如何理解和修改,电路板的自行设计制作或修改; (2) 如何编译和移植操作系统; (3) 用户在自行修改以及开发中遇到的软硬件问题。 3、技术支持方式 论坛:http://bbs.topeetboard.com/forum.php 电话:0312-6796610 邮箱:support@topeetboard.com 4、技术支持服务时间 上午 9:00--12:00,下午 13:30--17:30(周一至周六) QQ 群主动技术支持: 上午 10:00--11:00,下午 15:00--16:00(周一至周六) 5、定制开发服务 本公司提供嵌入式操作系统底层驱动、硬件板卡的有偿定制开发服务,以缩短您的产品开发周期。 请将需求: 发送邮件到: support@topeetboard.com 联系电话: 0312-6796610 淘宝店铺 1: https://arm-board.taobao.com/?spm=a1z10.1-c-s.0.0.7bf93dd3q2C808 淘宝店铺 2: https://shop459378556.taobao.com/shop/view_shop.htm?spm=a230r.1.14.48.25b84a81oPy9vl&user_numb er_id=2207480684984 日期:2020-03-17 4 www.topeetboard.com
北京迅为电子有限公司 i.MX6ULL 终结者-开发板使用手册 资料获取与后续更新 一 资料的获取 (1) 百度网盘下载 网盘的链接在购买开发板后可以在迅为电子技术支持 QQ 群下载。如果链接有更新,会在群里贴通告 (2) 视频配套教程 根据用户购买开发板的产品类别,迅为电子会提供相应的光盘。 二 后续更新 后续文档、视频等资料的更新,为了确保您的资料是最新状态,请密切关注我们的动态,我们将会通 过微信公众号和 QQ 群推送。关注“迅为电子”微信公众号,不定期分享教程、资料和行业干货及产品一 线资料。 迅为电子 让学习更容易,让开发更简单 日期:2020-03-17 5 www.topeetboard.com
北京迅为电子有限公司 i.MX6ULL 终结者-开发板使用手册 更新记录 更新版本 修改内容 V1.0 V1.1 V1.2 V1.3 V1.4 V1.5 V1.6 V1.7 V1.7.1 V1.7.2 初版 1.增加了外设各功能测试说明 2.增加了 MPU6050,DHT11 裸机例程 3.修改了文档中的一些错别字 1.增加了总领及学习指引 2.增加了 Qt 应用开发 3.增加了 Linux 系统开发进阶 70-79 章节 4.修改了文档中的一些错别字 5.美化了手册里面的截图 1.增加了 Qt 实战项目 2.增加了 Linux 系统开发进阶 80 章节 1.增加了注意事项与售后维修 2.增加了技术支持与开发定制 3.增加了资料获取与后续更新 4.增加了更新记录 1.增加了 Linux 系统开发进阶 81-92 章节 2.增加了 Putty 软件的安装教程 3.增加了 MobaXterm 的安装教程 4.增加了 VMware 虚拟机扩展 Ubuntu 系统磁盘空间 5.增加了一键烧写 Qt 程序到开发板章节 6.增加了外设模块功能验证 7.增加了 Linux 5.4.3 系统移植 1.修改了图片的图示 2.增加了 iTOP-Ubuntu 瘦身 3.增加了 Linux 系统开发进阶 93-99 章节 1.增加了 Linux 系统编程部分 2.增加了 lora 模块测试 3.增加了声卡测试 1.使代码高亮显示 2.调整了代码间距 3.美化了手册封面和结尾 1.完善了 Linux 系统开发进阶 70-99 章节网盘路径 2.完善了 99 章节创建 ap 热点内容 3.更改了几处排版错误。 日期:2020-03-17 6 www.topeetboard.com
北京迅为电子有限公司 i.MX6ULL 终结者-开发板使用手册 目录 注意事项与售后维修............................................................................................................................................ 2 技术支持与开发定制............................................................................................................................................ 4 资料获取与后续更新............................................................................................................................................ 5 更新记录.................................................................................................................................................................6 前言 开发板使用前必读.................................................................................................................................... 34 必须注意的问题.......................................................................................................................................... 34 一 光盘资料介绍........................................................................................................................................ 34 二 开发板使用前装配流程........................................................................................................................ 36 第一部分 总领及学习指引................................................................................................................................ 40 01 框架学习法............................................................................................................................................ 41 02 嵌入式系统学习的框架........................................................................................................................ 42 03 关于裸机程序和仿真............................................................................................................................ 44 04 基于迅为开发板的学习步骤................................................................................................................ 45 第一章 开发板初体验........................................................................................................................................ 47 1.1 初识 i.MX6ULL 终结者开发板..............................................................................................................48 1.2 i.MX6ULL 终结者硬件资源说明............................................................................................................49 1.2.1 i.MX6ULL 核心板资源说明.........................................................................................................49 1.2.2 i.MX6ULL 终结者底板资源说明.................................................................................................50 1.3 i.MX6ULL 终结者底板原理分析............................................................................................................54 1.3.1 核心板接口................................................................................................................................ 54 1.3.2 启动方式原理部分.................................................................................................................... 55 1.3.3 系统电源接口............................................................................................................................ 56 1.3.4 复位电路.................................................................................................................................... 57 1.3.5 纽扣电池电路............................................................................................................................ 58 1.3.6 CAN 接口电路............................................................................................................................. 59 1.3.7 RS485/TTL 串口选择电路...........................................................................................................59 1.3.8 GPIO 接口电路............................................................................................................................60 1.3.9 RS485 电路.................................................................................................................................. 60 1.3.10 USB 转串口电路........................................................................................................................61 1.3.11 LED 电路.................................................................................................................................... 63 1.3.12 按键电路.................................................................................................................................. 63 1.3.13 蜂鸣器电路.............................................................................................................................. 63 1.3.14 TF 卡电路...................................................................................................................................64 日期:2020-03-17 7 www.topeetboard.com
北京迅为电子有限公司 i.MX6ULL 终结者-开发板使用手册 1.3.15 EEPROM 电路............................................................................................................................ 65 1.3.16 音频电路.................................................................................................................................. 65 1.3.17 RGB 屏幕电路........................................................................................................................... 67 1.3.18 LVDS 屏幕接口.......................................................................................................................... 68 1.3.19 USB OTG 电路............................................................................................................................69 1.3.20 USB HOST 接口..........................................................................................................................70 1.3.21 CSI 摄像头接口电路................................................................................................................. 71 1.3.22 WIFI/蓝牙电路.......................................................................................................................... 72 1.3.23 PCIE 4G 模块电路......................................................................................................................72 1.3.24 六轴传感器电路...................................................................................................................... 73 1.3.25 光环境传感器电路.................................................................................................................. 74 1.3.26 温湿度传感器电路.................................................................................................................. 74 1.3.27 ADC 电位器电路....................................................................................................................... 75 1.3.28 红外接收电路.......................................................................................................................... 76 1.3.29 HDMI 接口电路.........................................................................................................................76 1.3.30 以太网电路.............................................................................................................................. 77 1.4 i.MX6ULL 终结者软件资源....................................................................................................................79 1.5 外设功能验证....................................................................................................................................... 82 1.5.1 用户 LED 测试............................................................................................................................ 82 1.5.2 蜂鸣器测试................................................................................................................................ 82 1.5.3 ADC 电位器测试......................................................................................................................... 83 1.5.4 TF 卡测试.....................................................................................................................................83 1.5.5 USB HOST 测试............................................................................................................................84 1.5.6 以太网测试................................................................................................................................ 86 1.5.7 用户按键测试............................................................................................................................ 89 1.5.8 内存测试.................................................................................................................................... 91 1.5.9 Linux 系统时钟测试....................................................................................................................92 1.5.10 CSI 摄像头测试......................................................................................................................... 93 1.5.11 USB 摄像头测试........................................................................................................................96 1.5.12 AP3216C 测试............................................................................................................................98 1.5.13 WIFI 联网测试...........................................................................................................................99 1.5.14 PCIE 4G 模块测试....................................................................................................................102 1.5.15 CAN 接口测试......................................................................................................................... 105 1.5.16 485 接口测试.......................................................................................................................... 107 1.5.17 DHT11 模块测试..................................................................................................................... 110 1.5.18 OTG 接口的 host 模式测试.................................................................................................112 日期:2020-03-17 8 www.topeetboard.com
分享到:
收藏