课程分类

课程介绍
课程目录
用户评论
课程介绍
课程目录
用户评论

你将获得

  • 掌握某些知识点
  • 学会某些技巧(或思路)

教学服务

  • icon

    1v1专属答疑服务

  • icon

    BAT专家面试辅导

讲师介绍

  • 互联网课程品牌《朱老师物联网大讲堂》创始人。著有《嵌入式linux与物联网软件开发-C语言内核深度解析》等书籍,精通U-Boot、linux kernel移植及驱动程序开发;精通C、C++、Java、C#等高级语言,熟悉ARM体系结构;熟悉linux、WinCE下的开发流程;授课风趣幽默,讲解条理清晰,对知识有自己独到见解,善于发散学生的思维。

  • 课程详情

    课程目标
    本课程为uboot学习的第12部分,从uboot官网下载的uboot开始进行移植,基本涉及到uboot移植的方方面面。本课程的目标不只是让大家理解uboot的代码结构和移植方法,更重要的在于实战演练和对大家移植时功力的提升和能力培养。
    适用人群
    本课程为uboot和系统移植阶段的第12部分,适合有一定嵌入式学习基础(譬如学完了裸机全集和C语言高级篇),需要继续学习uboot和系统移植的同学。
    课程简介

    嵌入式绝对是当前IT领域最炙手可热的话题了。其主要应用领域涵盖与人类相关的各行各业:

    * 消费电子(手机、平板电脑、游戏机)

    * 物联网(智能家居、智慧城市)

    * 工业自动化(无人工厂、工业机器人)

    可以毫不客气的说,IT发展的未来在于嵌入式。巨大的商机和人才缺口导致嵌入式软件工程师的薪资居高不下,引得无数青年才俊、高校学子相继加入、苦苦钻研。

    课程特色

    *完全零基础,降低学习门槛。

    *深入浅出,通俗易懂。不怕学不会,就怕你不学习。

    *思路清晰、语言风趣,对着视频看也不会想睡觉······

    *视频 + 文档 + 练习题 + 答疑,全方位保证学习质量。

    *基础知识 + 思路引导的教学方式,授之以鱼更授之以渔。

    *系列课程。本教程只是入门篇,后续还有更多更精彩视频更新中。
           
                                                                                           课程目录

    3.12.1.选择合适的官方原版uboot

    [免费观看]

    24:34

    本节课讲解uboot的版本差异,并且最终选择一个合适的官方uboot版本作为我们移植工作的起点。

     

    3.12.2.先初步浏览官方原版uboot

    32:50

    本节对官方uboot进行大概浏览和结构分析、工程建立等,并将该uboot和我们之前分析过的移植好的uboot进行大概对比分析。

     

    3.12.3.mkconfig脚本分析

    31:32

    本节分析2013.10版本的uboot的mkconfig,重点解析了8个传参与符号连接创建等,这些在后续分析代码时都会有一定帮助。

     

    3.12.4.先解决官方版本uboot的烧录运行

    30:47

    本节首先移植sd_fusing文件夹,然后分析并修改代码使编译得到的u-boot.bin能够在SD卡中运行起来。

     

    3.12.5.start.S文件分析与移植1

    46:28

    本节分析start.S文件流程,并且添加开发板置锁和串口输出字符的代码。

     

    3.12.6.start.S文件分析与移植2

    42:42

    本节接上节来排除问题,讲解了如何使用LED点亮方式进行调试,并最终解决问题,成功输出字符"O"

     

    3.12.7.添加DDR初始化1

    34:14

    本节开始添加DDR初始化代码,主要是分析了DDR初始化代码添加的位置、相关文件的移植等。

     

    3.12.8.添加DDR初始化2

    26:20

    本节继续解决DDR初始化部分功能,添加调试信息打印以验证DDR初始化是否成功。

     

    3.12.9.添加uboot第二阶段重定位1

    34:26

    本节首先分析uboot代码流程,找到应该添加uboot重定位功能的代码段,然后分析代码重定位的思路。

     

    3.12.10.添加uboot第二阶段重定位2

    38:19

    本节接上节继续添加重定位代码,并且解决编译中的各种问题,成功实现重定位,并且看到了uboot启动第二阶段的信息。

     

    3.12.11.CPU时钟信息显示移植1

    32:05

    本节分析uboot第二阶段的cpu信息输出,并且进行代码移植和更改,解决主频显示不正确的问题。

     

    3.12.12.CPU时钟信息显示移植2

    35:43

    本节接上节继续解决主频显示不正确的问题。

     

    3.12.13.CPU时钟信息显示移植3

    27:16

    本节最终解决了主频显示不正确的问题,并且更正了以前一些不正确的认识,对210的iROM中时钟设置更加明确。

     

    3.12.14.board和DDR配置显示移植

    26:52

    本节主要解决开发板名称、DDR配置值的初始化等修改,这些都是init_sequences中的东西。

     

    3.12.15.board_init_r移植

    22:56

    本节开始移植board_init_r中的一些函数,主要内容是去掉原来的oneNand支持,加上SD/MMC的支持并将环境变量修改到SD/MMC中。

     

    3.12.16.uboot2013.10中SD/MMC驱动浏览

    39:03

    本节进行SD/MMC驱动的浏览和错误问题定位分析,最终分析得到解决方案思路。

     

    3.12.17.SD卡驱动移植1

    33:41

    本节开始移植SD卡驱动,主要进行驱动文件的逐个分析、文件关系的对应复制Makefile的修改等。

     

    3.12.18.SD卡驱动移植2

    26:22

    本节继续进行SD卡驱动移植实验,将移植的驱动文件整理然后进行编译、修改等使之可以通过编译。

     

    3.12.19.SD卡驱动移植3

    19:31

    本节继续进行SD卡驱动移植实验,主要在编译脚本cp.sh中添加代码使之选择性清理配置编译,这样可以提升效率。

     

    3.12.20.环境变量的移植

    38:26

    本节分析环境变量分区的问题,通过代码分区确认了当前环境变量被放在何处,并且通过修改代码将环境变量放在合适的位置。

     

    3.12.21.环境变量的测试和配置移植

    19:25

    本节对环境变量进行测试和效果确认,并且将uboot中默认的环境变量表重新设置以使该uboot更方便使用。

     

    3.12.22.网卡驱动的移植1

    30:48

    本节开始移植网卡驱动,主要是分析网卡驱动初始化代码,然后进行网卡初始化的添加、代码实践、效果查看。

     

    3.12.23.网卡驱动的移植2

    35:45

    本节接上节继续进行网卡驱动的移植。主要是分析网卡驱动不工作的原因并且进行解决方案分析、实践及效果确认。

    温馨提示
    • 请勿私下交易
      请勿在平台外交易。与机构和老师私下交易造成的任何损失及纠纷,腾讯课堂不承担任何责任
    • 听课说明

      1、电脑:访问腾讯课堂官网 ke.qq.com 查看我的课表或下载win/mac客户端听课

      2、手机/平板:下载腾讯课堂APP, 进入学习页面听课