韦东山升级版全系列嵌入式视频第1季之快速入门
韦东山从2008年开始做嵌入式linux培训(2011年录视频),引入了很多新的风格, 1,第一个使用画图板,现场画图讲解原理,现场写代码,现场调试, 2,设计了一套的全新的体系:在linux下开发裸板,uboot,再学习驱动,再到项目 从业10多年学员众多,你的上司很可能就是我的学员, 很多新的讲师也是我的学员,他们沿着我们的旧路线在幸苦的录制视频,但是从2019年起,我们决定全部推倒重来,录制全新的视频了,为什么?
免费
标签: 嵌入式 课程分类:嵌入式 语言: 中文 总时长:17小时14分49秒 课程简介:韦东山从2008年开始做嵌入式linux培训(2011年录视频),引入了很多新的风格, 1,第一个使用画图板,现场画图讲解原理,现场写代码,现场调试, 2,设计了一套的全新的体系:在linux下开发裸板,uboot,再学习驱动,再到项目 从业10多年学员众多,你的上司很可能就是我的学员, 很多新的讲师也是我的学员,他们沿着我们的旧路线在幸苦的录制视频,但是从2019年起,我们决定全部推倒重来,录制全新的视频了,为什么?
课程详情:

200x年左右,嵌入式Linux在全世界、在中国刚刚兴起。

我记得我2005年进入中兴时,全部门的人正在努力学习Linux

2008年,我写了一本书《嵌入式Linux应用开发完全手册》。

它的大概内容是:裸机、U-bootLinux内核、Linux设备驱动。

那时还没有这样讲解整个系统的书,

芯片厂家Linux开发包也还不完善,从bootloader到内核,再到设备驱动都不完善。

有全系统开发能力的人也很少。

于是这书也就恰逢其时,变成了畅销书。

我也根据这个思路录制了视频:裸机、U-bootLinux内核、Linux设备驱动。

收获些许名声,带领很多人进入Linux世界。

 

11年过去了,嵌入式Linux世界发生了翻天覆地的变化:

基本系统能用

芯片厂家都会提供完整的U-bootLinux内核、芯片上硬件资源的驱动。

方案厂家会做一些定制,比如加上某个WIFI模块,会添加这个WIFI模块的驱动。

你可以使用厂家的原始方案,或是使用/借鉴方案商的方案,做出一个“能用”的产品。

基础驱动弱化;高级驱动专业化

基础的驱动,比如GPIOUARTSPII2CLCDMMC等,有了太多的书籍、视频、示例代码,修修改改总是可以用的。

很多所谓的驱动工程师,实际上就是“调参工程师”。

我们群里有名的火哥,提出了一个概念:这些驱动就起一个hardware enable”的作用。

 

高级的驱动,比如USBPCIEHDMIMIPIGPUWIFI、蓝牙、摄像头、声卡。

体系非常复杂,很少有人能讲清楚,很多时候只是一笔带过。

配置一下应用层工具就了事,能用就成。

这些高级驱动,工作中需要专门的人来负责,非常专业。

他们是某一块的专家,比如摄像头专家、音频专家。

项目为王

你到一个公司,目的是把产品做出来,会涉及APP到内核到驱动全流程。

中小公司玩不起华为中兴的配置,需要的是全面手。

大公司里,只负责很小很小一块的镙丝钉,位置也不太稳固啊。

所以,如果你不是立志成为某方面的专家,那就做一个全栈工程师吧。

调试很重要

都说代码是3分写7分调,各种调试调优技术,可以为你的升职加薪加一把火。

 

 

基于上述4点,我录制的升级版全新视频将有这些特点:

1. 快速入门,

2. 实战项目,

3. 驱动大全,

4. 专题,

5. 授人以渔,

6. 要做任务

 

 

1. 快速入门:

再从裸机、U-boot、内核、驱动这样的路线学习就不适合了,时间就拉得太长了。

搞不好学了后面忘了前面。

并且实际工作中并不需要你去弄懂U-boot,会用就行:U-boot比驱动还复杂。

 

怎么讲呢?

 

1.1 混着讲

我们不再从裸机讲起,也不再从UBOOT讲起。

而是APP开发与驱动开发混合讲解,让你快速理解Linux系统开发知识。

比如以LED、按键为例:

先讲LED、按键的驱动,再讲怎么编写APP操作LED、按键;

再讲按键中断,深入理解Linux系统机制:休眠-唤醒、进程-线程、poll、异步通知

接着讲APP怎么进行多线程编程、进程通信

通过这样的“交叉讲解”,可以更快速地掌握整个体系,快速形成总体观,快速具备工作能力。

 

 

1.2 基础技能

中断、休眠-唤醒、异步通知、阻塞、内存映射等等机制,会配合驱动和APP来讲解。

这些技能是嵌入式Linux开发的基础。

而这些驱动,只会涉及LED、按制、LCD等几个驱动。

掌握了这些输入、输出的驱动和对应的APP后,你已经具备基本的开发能力了。

 

1.3 配置

我们从厂家、从方案公司基本上都可以拿到一套完整的开发环境,怎么去配置它?

需要懂shell和python配置脚本