【开发板教程目录分享】4412开发板实战教程纸制版
内容是4412开发板实战教程目录介绍,大家感兴趣的话,有时间可上传到网盘分享链接 ヽ(ˋ▽ˊ)ノ~
iTOP-4412开发板教程
前言 8
背景知识 8
本书的内容 8
本书使用的扩展资料 9
第一章 概述 10
1.1 嵌入式系统 10
1.1.1 嵌入式系统的定义 10
1.1.2 嵌入式系统的应用范围 10
1.1.3 嵌入式系统的特点 12
1.2 嵌入式操作系统 12
1.2.1 操作系统 12
1.2.2 嵌入式操作系统 13
1.3 嵌入式学习方法 13
1.3.1 框架学习法 13
1.3.2 嵌入式系统学习的框架 14
1.3.3 关于裸机程序和仿真 17
1.4 基于iTOP-4412开发板的学习步骤 18
1.5 嵌入式系统开发要点 20
第二章 硬件指引 22
2.1 嵌入式硬件平台 22
2.1.1 硬件概述 22
2.1.2 处理器和ARM处理器 23
2.1.3 存储设备 24
2.1.4 总线 25
2.1.5 液晶控制板 30
2.1.6 触摸屏 30
2.1.7 网络设备 31
2.1.8 标准串行通信接口 32
2.1.9 其它硬件 33
2.2 嵌入式产品设计流程简介 35
2.3 iTOP-4412开发板硬件介绍 35
2.3.1 核心板介绍 35
2.3.2 底板介绍 37
2.4 仪表仪器的使用 38
2.4.1 万用表 38
2.4.2 示波器 39
2.4.3 逻辑分析仪 39
第三章 iTOP-4412平台开机测试 41
3.1 iTOP-4412平台硬件的连接 41
3.1.1 核心板和底板的连接 41
3.1.2 控制台(Console)串口 41
3.1.3 屏幕的组装 42
3.1.4 电源和上电断电 43
3.1.5 其它模块的连接 43
3.2 启动模式 44
3.2.1 启动模式 44
3.2.2 Uboot模式 44
3.2.3 文件系统模式 45
3.3 iTOP-4412开发平台初体验 46
3.3.1 系统基本功能 46
3.3.2 USB和OTG功能 48
3.3.3 网络设置和连接 49
3.3.4 多媒体 51
3.3.5 GPS功能(选配) 53
3.3.6 游戏3D性能 54
第四章 开发环境、编译以及烧写 55
4.1 开发工具介绍 55
4.1.1 虚拟机Vmware Workstation 55
4.1.2 Ubuntu系统 56
4.1.3 SSH工具 57
4.1.4 编辑器Vim 59
4.1.5 Source Insight代码阅读器 61
4.1.6 代码对比分析器Beyond Compare 4 61
4.1.7 编辑器Notepad++的使用 62
4.1.8 串口助手 62
4.1.9 cmd和fastboot工具 64
4.1.10 Android Debug Bridge 65
4.2 Linux常用命令 65
4.2.1 登陆root用户 65
4.2.2 Linux基础命令 66
4.2.3 软件安装和升级命令apt-get 67
4.2.4 man帮助命令 68
4.3 搭建Uboot、Kernel和Android4.0的编译环境 69
4.3.1 使用搭建好的编译环境 70
4.3.2 安装基本软件 70
4.3.3 交叉编译工具 70
4.3.4 安装库文件、JDK以及降低GCC版本 71
4.4 Android4.0.3镜像的编译 73
4.4.1 Uboot的编译 73
4.4.2 Linux内核的编译 75
4.4.3 Android4.0.3 的编译 76
4.5 Android4.4.4镜像的编译 78
4.5.1 内核的编译 78
4.5.2 Android4.4.4 的编译 79
4.6 Qtopia2.2.0镜像的编译 80
4.6.1 Linux内核的编译 80
4.6.2 Qtopia2.2.0编译的环境以及编译 80
4.7 Qt/E4.7源码的编译 85
4.7.1 Qt/E4.7.1编译器的安装 86
4.7.2 Qt/E4.7.1的编译 87
4.8 二进制文件的烧写 88
4.8.1 OTG接口烧写方式 88
4.8.2 TF卡烧写方式 90
4.8.3 开发板出厂前首次烧写 94
第五章 Bootloader 96
5.1 Bootloader简介 96
5.2 Bootloader的种类 96
5.3 Uboot源码结构 97
5.4 Uboot分析 98
5.4 Uboot常用命令 101
5.6 裸机程序 102
5.6.1 安装DNW驱动 102
5.6.2 下载裸机程序到开发板上 103
5.6.3 裸机led的程序实现 105
第六章 Linux内核 107
6.1 Linux基础介绍 107
6.1.1 Linux是什么 107
6.1.2 Linux的历史和版本号 107
6.1.3 Linux和UNIX 109
6.1.4 Linux的重要性 109
6.1.5 Linux内核特点 109
6.1.6 Linux3.0内核新特性 110
6.2 Linux系统剖析 111
6.2.1 Linux内核简介 111
6.2.2 Linux内核的属性 111
6.2.3 Linux 内核的主要子系统 112
6.2.4 依赖体系结构的代码 114
6.3 Linux文件系统源码目录 114
6.4 Linux内核的裁减和配置 116
6.4.1 Kconfig和menuconfig的关系 116
6.4.2 Menuconfig的操作 117
6.4.3 缺省文件.config和menuconfig的关系 125
6.4.4 Kconfig和menuconfig 128
6.5 Linux内核编译流程分析 132
6.5.1 编译器路径的设置 132
6.5.2 Make内核编译命令执行过程简介 134
6.5.3 Makefile文件 136
6.6 Linux驱动 139
6.6.1 Linux驱动的学习方法 139
6.6.2 Linux设备驱动的分类 139
6.6.3 以模块的形式编译驱动 139
6.7 内核配置详细说明 142
6.8 Linux驱动调试方法 152
6.8.1 利用printk 152
6.8.2 利用ioctl方法 153
6.8.3 利用/proc文件系统 153
第七章 Linux系统编程 154
7.1 Linux系统基础知识 154
7.1.1 什么是Linux系统编程 154
7.1.2 为什么要学习Linux系统编程 155
7.1.3 Linux的man命令 155
7.2 从零建立Linux最小系统 156
7.2.1 最小Linux系统简介 156
7.2.2 配置最小系统 156
7.2.3 编译和安装 157
7.2.4 完善最小系统 157
7.2.5 安装打包软件和编译 161
7.2.6 最小Linux系统的烧写 161
7.3 系统编程的基础知识 161
7.3.1 Linux用户管理 161
7.3.2 用户组 162
7.3.3 权限 163
7.3.4 绝对路径和相对路径 163
7.4 Linux系统编程基础 163
7.4.1 文件IO 163
7.4.2 系统延时 165
7.4.3 时间调用和转换 166
7.4.4 管理文件目录 168
7.4.5 进程的基础 172
7.4.6 进程间通信 174
7.5 Linux系统对字符驱动的调用 189
7.5.1 字符类设备的控制 189
7.5.2 串口编程 193
7.6 Linux系统网络服务 202
7.6.1 网络的基础知识 202
7.6.2 组建最小网络 207
7.6.3 搭建TFTP服务器和TFTP传输 211
7.6.4 NFS网络文件系统 216
7.7 套字节TCP和UDP 220
7.7.1 套字节TCP 220
7.7.2 套接字UDP 226
7.8 Linux系统小型服务器 230
7.9 web远程控制led灯 235
第八章 Android操作系统 241
8.1 Android系统基础知识 241
8.1.1 Android的历史 241
8.1.2 Android的特性和优点 241
8.2 Java简述 242
8.2.1 Java的历史 242
8.2.2 Java的几个概念 243
8.2.3 学习Android需要的Java知识 244
8.3 Android平台体系结构和源码结构 244
8.3.1 平台体系结构 245
8.3.2 源码结构 247
8.4 搭建Android应用的开发平台 247
8.4.1 下载和安装JDK 247
8.4.2 下载和安装ADT集成开发环境以及SDK管理器 249
8.4.3 SDK更新 251
8.4.5 ADT集成开发环境 252
8.4.6 创建Android模拟器 253
8.5 Android应用程序开发实例 254
8.5.1 创建第一个Android应用程序helloworld 254
8.5.2 在模拟器上运行hellworld 255
8.5.3 在iTOP-4412开发板上调试helloworld应用 257
8.6 Android JNI的使用 259
8.6.1 JNI基础概念 259
8.6.2 Java程序调用JNI的方法和步骤 261
8.6.3 Android.MK文件 264
8.6.4 安装NDK编译器以及编译JNI库文件 266
8.7 Android物联网例程 268
8.7.1 蜂鸣器 268
8.7.2 数模转换 270
8.7.3串口控制 273
8.8 Android系统级修改 277
8.8.1 更改默认休眠时间 277
8.8.2 去掉默认安装的APK 278
8.8.3 将APK编译到Android镜像中 278
8.8.4 手机和平板模式(横屏竖屏) 279
8.8.5 设置Android的GPS 279
8.8.6 设置Android的HDMI转VGA 280
8.8.7 设备权限的修改 281
第九章 QtE操作系统 283
9.1 QtE和Qtopia简介 283
9.2 QtE的配置 283
9.3 QtE初始化脚本分析 285
9.3.1 设置开发板优先运行的文件系统 285
9.3.2 Qt/E4.7和Qtopia2.2.0的触摸校准 285
9.3.3 系统运行后Qt/E4.7和Qtopia2.2.0的切换 286
9.4 QtE应用开发环境搭建 287
9.4.1 qtcreator的下载和安装 287
9.4.2 安装和运行Qt Creator 288
9.5 QtE应用跨平台移植 291
9.5.1 Ubuntu上运行helloworld 291
9.5.2 移植‘helloworld’到开发板 295
第十章 Ubuntu操作系统 298
10.1 Ubuntu的发展历程和特色 298
10.1.1 Ubuntu的发展历程 298
10.1.2 Ubuntu - ARM特色 299
10.2 Ubuntu的烧写 300
10.2.1 TF卡读写速度测试 300
10.2.2 烧写Ubuntu 301
附录:iTOP-4412源码的开发版本下载和使用 305
Uboot的下载和编译 305
Kernel源码下载及编译 306
联系方式 308