收集整理的ARM嵌入式linux开发入门视频教程

2019-07-12 15:16发布

嵌入式Linux作为一个系统学科,具有知识点多,知识难度大,实践操作性强等特点,很多踌躇满志的同学最终倒在了学习嵌入式Linux的道路上,绝大部分也是因为没有掌握嵌入式Linux


的知识规律和学习方法所致。国嵌核心技术团队在综合本身10余年开发经验和5年教学经验的基础上,制定出一套非常系统、完善的嵌入式Linux培训课程体系,该体系由《嵌入式体验入


门班》、《嵌入式Linux应用开发班》、《ARM系统进阶班》、《ARM系统深入班》《嵌入式Linux内核驱动进阶班》、《嵌入式Linux内核驱动深入班》、《嵌入式Linux系统移植专题班》


《嵌入式Linux高级项目培训班8大课程组成,由简入深,循序渐进,通过系统的讲解,丰富的实验,真实的项目,让你从一位没有任何嵌入式基础的门外汉,一步步成长为一名合格的嵌


入式Linux工程师。


公开视频光盘目录结构


国嵌视频1.iso


-学习方法与课程体系介绍(学前必看)
-学习方法介绍.avi
-国嵌嵌入式课程体系.pdf
-嵌入式Linux学习方法.pdf


-国嵌课程1-嵌入式入门体验班(上)
-第1天(嵌入式系统概述)
-国嵌体验入门班-1-1(嵌入式系统概述).avi
-国嵌体验入门班-1-2(ARM概述).avi
-国嵌体验入门班-1-3(嵌入式Linux概述).avi
-国嵌体验入门班-1-4(2440开发板介绍).avi
-国嵌体验入门班-1-5(软硬件环境搭建).avi


-第2天(开发板快乐体验)
-国嵌体验入门班-2-1(开发板系统安装).avi
-国嵌体验入门班-2-1(开发板系统安装-Jlink方式).avi
-国嵌体验入门班-2-1(开发板系统安装-并口方式).avi
-国嵌体验入门班-2-2(裸机程序体验).avi
-国嵌体验入门班-2-3(QT系统体验).avi
-国嵌体验入门班-2-4(Android系统体验).avi


国嵌视频2.iso


-国嵌课程1-嵌入式入门体验班(下)
-第3天(Linux系统体验)
-国嵌体验入门班-3-1(Linux定制安装).avi
-国嵌体验入门班-3-2(Linux命令).avi
-国嵌体验入门班-3-3(VI使用).avi
-国嵌体验入门班-3-4(Linux系统管理).avi
-国嵌体验入门班-3-5(Shell编程).avi
-国嵌体验入门班-3-6(Qcd功能演示).avi
-国嵌体验入门班-3-7(必修实验).avi


-国嵌课程2-嵌入式Linux应用开发班
-第1天(编程基础)
-国嵌应用班-1-1(GCC程序编译).avi
-国嵌应用班-1-2(GDB程序调试).avi
-国嵌应用班-1-3(makefile工程管理).avi
-国嵌应用班-1-4(必修实验).avi


-第2天(文件时间编程)
-国嵌应用班-2-1(系统调用方式访问文件).avi
-国嵌应用班-2-2(库函数访问文件).avi
-国嵌应用班-2-3(时间编程).avi
-国嵌应用班-2-4(必修实验).avi


-第3天(多进程程序设计)
-国嵌应用班-3-1(进程控制原理).avi
-国嵌应用班-3-2(进程控制程序设计).avi
-国嵌应用班-3-3(必修实验).avi


-第4天(进程间通讯)
-国嵌应用班-4-1(进程间通讯概述).avi
-国嵌应用班-4-2(管道通讯).avi
-国嵌应用班-4-3(信号通讯).avi
-国嵌应用班-4-4(共享内存通讯).avi
-国嵌应用班-4-5(必修实验).avi


-第5天(进程间通讯)
-国嵌应用班-5-1(消息队列).avi
-国嵌应用班-5-2(信号量).avi
-国嵌应用班-5-3(必修实验).avi


-第6天(进程间通讯)
-国嵌应用班-6-1(线程基础).avi
-国嵌应用班-6-2(多线程程序设计).avi
-国嵌应用班-6-3(必修实验).avi


-第7天(网络编程)
-国嵌应用班-7-1(Linux网络概述).avi
-国嵌应用班-7-2(Linux网络编程基础).avi
-国嵌应用班-7-3(TCP程序设计).avi
-国嵌应用班-7-4(UDP网络程序设计).avi
-国嵌应用班-7-5(并发服务器).avi
-国嵌应用班-7-6(必修实验).avi




国嵌视频3.iso


-国嵌课程3-ARM系统进阶班
-第1天(ARM系统开发基础)
-ARM系统精讲班-1-1(ADS集成开发环境).avi
-ARM系统精讲班-1-2(ARM工作模式).avi
-ARM系统精讲班-1-3(ARM寄存器).avi
-ARM系统精讲班-1-4(ARM寻址方式).avi
-ARM系统精讲班-1-5(ARM汇编指令详解).avi


-第2天(ARM系统开发基础)
-ARM系统精讲班-2-1(ARM汇编指令详解).avi
-ARM系统精讲班-2-2(ARM伪指令).avi
-ARM系统精讲班-2-3((混合编程).avi
-ARM系统精讲班-1-8(必修实验).avi




-第3天(LED驱动程序设计)
-ARM系统精讲班-2-1(GPIO).avi
-ARM系统精讲班-2-2(LED控制程序设计).avi
-ARM系统精讲班-2-3((LED闪烁).avi


-第4天(LED与按键驱动程序设计)
-ARM系统精讲班-4-1(ARM中断控制系统).avi
-ARM系统精讲班-4-2(按键控制程序设计).avi
-ARM系统精讲班-2-6(必修实验).avi


-第5天(定时器与时钟驱动程序设计)
-ARM系统精讲班-5-1(ARM时钟体系).avi
-ARM系统精讲班-5-2(定时器驱动程序设计).avi






-国嵌课程4(嵌入式LINUX内核驱动进阶班-上)
-第1天(内核开发基础)
-国嵌内核驱动进阶班-1-1(Linux内核简介).avi
-国嵌内核驱动进阶班-1-2(Linux内核源代码).avi
-国嵌内核驱动进阶班-1-3(Linux内核配置与编译).avi
-国嵌内核驱动进阶班-1-4(Linux内核模块开发).avi
-国嵌内核驱动进阶班-1-5(必修实验).avi


-第2天(U-Boot移植)
-国嵌内核驱动进阶班-2-1(嵌入式linux系统架构).avi
-国嵌内核驱动进阶班-2-2(交叉工具链).avi
-国嵌内核驱动进阶班-2-3(Bootloader介绍).avi
-国嵌内核驱动进阶班-2-4(U-Boot介绍).avi
-国嵌内核驱动进阶班-2-5(U-Boot命令).avi
-国嵌内核驱动进阶班-2-6(U-Boot启动流程).avi
-国嵌内核驱动进阶班-2-7(Uboot移植).avi
-国嵌内核驱动进阶班-2-8(必修实验).avi


国嵌视频4.iso


-国嵌课程4(嵌入式LINUX内核驱动进阶班-下)
-第3天(内核开发基础)
-国嵌内核驱动进阶班-3-1(嵌入式linux内核制作).avi
-国嵌内核驱动进阶班-3-2(根文件系统制作).avi
-国嵌内核驱动进阶班-3-3(内核启动流程).avi
-国嵌内核驱动进阶班-3-4(嵌入式文件系统).avi
-国嵌内核驱动进阶班-3-5(必修实验).avi


-第4天(内存管理子系统)
-国嵌内核驱动进阶班-4-1(Linux内存管理).avi
-国嵌内核驱动进阶班-4-2(进程地址空间).avi
-国嵌内核驱动进阶班-4-3(内核地址空间).avi
-国嵌内核驱动进阶班-4-4(Linux内核链表).avi
-国嵌内核驱动进阶班-4-5(Linux内核定时器).avi
-国嵌内核驱动进阶班-2-7(Uboot移植).avi
-国嵌内核驱动进阶班-2-8(必修实验).avi


-第5天(进程管理子系统)
-国嵌内核驱动进阶班-5-1(LINUX进程控制).avi
-国嵌内核驱动进阶班-5-2(LINUX进程调度).avi
-国嵌内核驱动进阶班-5-3(Linux系统调用).avi
-国嵌内核驱动进阶班-5-4(Proc文件系统).avi
-国嵌内核驱动进阶班-5-5(内核异常分析).avi
-国嵌内核驱动进阶班-5-6(必修实验).avi


-第6天(简单字符设备驱动程序设计)
-国嵌内核驱动进阶班-6-1(LINUX驱动程序介绍).avi
-国嵌内核驱动进阶班-6-2(字符设备驱动程序设计).avi
-国嵌内核驱动进阶班-6-3(字符设备驱动程序实例分析).avi
-国嵌内核驱动进阶班-6-4(竞争与互斥).avi
-国嵌内核驱动进阶班-6-5(必修实验).avi


-第7天(高级字符设备驱动程序设计)
-国嵌内核驱动进阶班-7-1(Ioctl设备控制).avi
-国嵌内核驱动进阶班-7-2(内核等待队列).avi
-国嵌内核驱动进阶班-7-3(阻塞型字符设备驱动).avi
-国嵌内核驱动进阶班-7-4(Poll设备方法).avi
-国嵌内核驱动进阶班-7-5(自动创建设备文件).avi
-国嵌内核驱动进阶班-7-6(必修实验).avi






申嵌Linux驱动开发基础班6-1 misc设备驱动开发与实例讲解.lxe1 
申嵌Linux驱动开发基础班5-5 Linux内存、IO与实例讲解.lxe 
申嵌Linux驱动开发基础班5-4 基于内核定时器的按键驱动实例讲解.lxe 
申嵌Linux驱动开发基础班5-3 Linux内核计时、延时函数与内核定时器.lxe 
申嵌Linux驱动开发基础班5-2 基于中断的按键驱动实例讲解.lxe 
申嵌Linux驱动开发基础班5-1 Linux内核中断机制.lxe 
申嵌Linux驱动开发基础班4-3 等待队列与poll驱动实例讲解.lxe 
申嵌Linux驱动开发基础班4-2 非阻塞型IO.lxe 
申嵌Linux驱动开发基础班4-1 阻塞型IO.lxe 
申嵌Linux驱动开发基础班3-2 信号量驱动实例讲解.lxe 
申嵌Linux驱动开发基础班3-1 并发与竞态控制.lxe 
申嵌Linux驱动开发基础班2-6 虚拟内存设备驱动实例讲解与演示.lxe 
申嵌Linux驱动开发基础班2-5 如何将Linux驱动添加到内核.lxe 
申嵌Linux驱动开发基础班2-4 BEEP驱动实验演示与LED驱动实例讲解演示.lxe 
申嵌Linux驱动开发基础班2-3 字符设备驱动 - BEEP实例讲解.lxe 
申嵌Linux驱动开发基础班2-2 字符设备驱动开发2.lxe 
申嵌Linux驱动开发基础班2-1 字符设备驱动开发1.lxe 
申嵌Linux驱动开发基础班1-2 Linux模块加载实验演示.lxe 
申嵌Linux驱动开发基础班1-1 Linux驱动程序概述.lxe 












韦东山Linux视频第1期
课程针对人群
A想深入了解嵌入式开发或是觉得学校课程讲得不深入、不贴近实际的专科、本科、研究生
B 想从单片机开发转入嵌入式开发的工程师
C 不希望局限在上层,想深入了解整个系统的工程师
D 想成为系统工程师、软件框架设计师的程序员
E 想从硬件开发转为软件开发的工程师


学习课程的能力要求


操作系统:Linux基本操作-会使用若干条基本命令即可
开发语言:基本的C语言知识,汇编不要求(视频里有介绍汇编,就几条而已)
硬件知识:能看得懂原理图最好,不会也没关系(视频里有专门一课)




课程掌握后的能力值概述(技能目标)
裸板操作及bootloader
深入理解ARM体系统架构,可以写出具备中断功能的裸板程序,对程序现场的保存、恢复有所了解,这些原理适用于任何架构CPU,适用于内核及应用程序,
掌握常用的硬件部件的操作,比如GPIO,UART,I2C,LCD,触摸屏;可以写出这些硬件部件的裸板程序
掌握写汇编代码的能力,可以分析任意裸板包括u-boot、内核里的相关汇编代码
能自己写出2期视频里讲到的各种驱动,它们已经涉及了工作中的绝大部分驱动
掌握系统级别的应用调试方法:使用工具,修改内核自制工作
掌握驱动调试方法:打印,自制打印,分析oops信息,栈回溯,理解内核原理然后修改内核,自制调试工具
掌握驱动程序中各种操作:休眠-唤醒, 同步互斥, 异步通知, 定时器,上下半部等
学习Linux驱动的套路:分配-设置-注册,掌握驱动的分析方法
调试手段
掌握裸板调试方法:点灯、打印、用JTAG工具进行源码级别的调试,查看反汇编
熟悉裸板程序的结构,给你一个bootloader就能分析它的初始化部分、内存使用情况、链接
地址、重定位、程序的相对跳转/绝对跳转等
掌握bootloader启动内核的原理,能完全自己写出一个bootloader




内核移植及启动过程
可以配置、移植一个全新的内核
了解内核的启动过程,解决启动中碰到的问题
了解内核的基本原理:进程调度、系统调用的过程、内存管理等与程序开发密切相关的知识




驱动程序开发
掌握三大类驱动程序的框架:字符设备驱动、块设备驱动、网卡驱动
分析内核启动的第1个进程的运行过程,进而构造根文件系统
学完后具备相当于1-2年Linux底层开发的经验,学习内核的程序编写技巧




郭天祥ARM9架构嵌入式linux培训视频教程






第一部分  嵌入式系统开发流程概述


第一讲嵌入式基础知识
1. 嵌入式的定义、特点、应用
2. 嵌入式硬件结构
3. 嵌入式软件结构


第二讲如何学习嵌入式
1. 嵌入式系统开发流程
2. 视频内容介绍
3. 学习嵌入式的方法
4. 使用TX-2440A开发项目


第二部分  开发板功能演示


第三讲 TX-2440A开发板外围硬件介绍
1. 核心板资源介绍
2. 底板资源介绍
3. 外围模块介绍


第四讲 TX-2440A开发板功能演示
1. 整板测试
2. 终端下硬件测试
3. 应用程序演示
4. QT图形界面演示


第三部分  嵌入式开发平台搭建


第五讲 Linux操作系统的安装
1. Linux简介,内核,桌面环境介绍
2. 安装虚拟机和Linux操作系统
3. 配置smb,nfs服务器


第六讲 Linux操作系统全面分析
1. Linux常用命令
2. vi编辑器
3. gcc编译器
4. make工具使用,makefile编写
5. shell编程


Linux系统编程专题


第七讲建立交叉编译环境
1. 编译原理,gcc的使用
2. 交叉编译原理
3. 交叉编译工具安装使用
4. 交叉编译实例分析


第八讲 Windows平台工具使用
1. SecureCRT的安装使用
2. Notepad++的使用
3. ADS集成开发环境的安装
4. HJTAG工具的使用
5. USB驱动的安装
6. 使用USB下载程序


第四部分  嵌入式硬件


第九讲  ARM9体系结构,S3C2440处理器
1. ARM处理器介绍
2. ARM编程模型和异常中断
3. S3C2440系统结构及片上资源介绍
4. S3C2440时钟电源管理
5. S3C2440的中断体系结构


第十讲 S3C2440主存储器配置
1. S3C2440存储控制器特性
2. SDRAM原理分析
3. NandFlash原理分析


第十一讲 ADS工具的使用,建立硬件调试环境
1. 建立ADS工程
2. 系统代码和NandFlash代码分析
3. 使用HJtag和Jlink调试硬件
4. GPIO原理分析,编写LED驱动


第十二讲 TX-2440A开发板硬件原理分析
1. 按键与外部中断
2. RTC与定时器
3. ADC与触摸屏
4. 串口与IrDA
5. SPI与CAN总线
6. LCD与Camera


LCD专题


第五部分  嵌入式系统移植之bootloader


第十三讲 Bootloader原理和vivi的移植
1. bootloader概述
2. vivi的启动过程分析
3. vivi的配置移植
4. vivi命令详解


第十四讲 uboot原理分析及移植
1. uboot简介
2. uboot源码目录结构
3. uboot运行代码分析
4. uboot在TX2440A上移植
5. uboot常用命令讲解
uboot使用专题


第六部分  嵌入式系统移植之linux内核


第十五讲 Linux内核分析和配置
1. 内核源码目录结构分析
2. Makefile,Kconfig文件分析
3. Linux启动过程分析
4. 配置、编译内核


第十六讲向内核中加入驱动
1. 支持NAND和yaffs2,挂载文件系统
2. 基本外围设备的配置(LCD、触摸屏、网卡、声卡,SD卡、USB设备、摄像头)
3. 向内核中加入驱动模块(LED、按键、蜂鸣器、AD、DS18B20)


第七部分  嵌入式系统移植之构建根文件系统


第十七讲用busybox制作根文件系统
1. 嵌入式文件系统介绍
2. Linux目录结构详解
3. 配置,编译busybox
4. 完善根文件系统
5. 制作yaffs镜像


第十八讲应用程序的移植
1. NFS文件系统的挂载
2. 移植嵌入式web服务器Boa
3. 移植madplay音乐播放器


第八部分  嵌入式驱动开发


第十九讲 Linux字符设备驱动
1. 嵌入式设备驱动概述
2. Linux字符设备驱动结构
3. 字符设备驱动程序设计实例
4. 中断和同步的处理


第二十讲其他类型设备驱动
1. Linux块设备驱动框架
2. MTD设备驱动分析
3. LCD驱动,音频驱动简介
4. 网络设备驱动分析


第九部分  QT图形界面开发


第二十一讲 QT及Qtopia介绍
1. 嵌入式GUI简介
2. Qt概述,Qt/X11的安装(Qt-4.5.3)
3. Qtopia概述


第二十二讲 Qt在ARM平台的移植
1. 移植tslib(触摸屏校正)
2. Qt/E-4.5.3在ARM上移植
3. Qtopia-4.2.4手机平台在ARM上移植


第二十三讲 Qt应用程序的开发
1. Qt编程入门,使用Qt助手
2. 元对象编译器介绍
3. 信号和槽机制
4. Qt应用开发实例


第十部分  综合项目实战


第二十四讲  智能网络家居系统制作(后补)
1. 成品演示
2. 制作网页
3. 编写CGI脚本
4. 添加驱动
5. 整体移植
下载地址:http://download.csdn.net/detail/asdf87520/9733598