ARM裸机加强版
来自百问网嵌入式Linux wiki
欢迎来到第一期ARM裸机加强版Wiki教程
- 第一期ARM裸机加强版视频教程是基于JZ2440,Ubuntu16.04系统进行视频讲解操作
- 考虑到视频教程知识点过多,一时无法全部理解,故将视频内容整理成文档供参考。由于工作量大,文档中难免会出现遗漏或者错误,请大家看到后及时指正
- 欢迎大家对wiki提出建议,共同努力,共同成长
本教程的开发环境
- 电脑系统 Windows7 / Windows10
- 百问网提供的虚拟机系统Ubuntu16.04
- 视频配套开发板:JZ2440 V3
- 部分学员反馈ubuntu16.04虚拟机使用时黑屏或者无法打开,影响学习进度,现制作一个新的虚拟机系统供大家备用,内含有使用文档。链接:https://pan.baidu.com/s/1R1K_OjGyMqtbLglaZnB20Q 密码:e51n
- 如有问题请添加QQ群:562614605反馈。
学习目标
掌握写汇编代码的能力,可以分析任意裸板包括 u-boot、内核里的相关汇编代码
掌握常用的硬件部件操作,比如 GPIO,UART,I2C,LCD,触摸屏;
可以写出这些硬件部件的裸板程序
深入理解 ARM 体系统架构,可以写出具备中断功能的裸板程序,对程序现场的保存、恢复有所了解,这些原理适用于任何架构 CPU,内核及应用程序
熟悉裸板程序的结构,给你一个 bootloader 就能分析它的初始化部分、内存使用情况、链接地址、重定位、程序的相对跳转/绝对跳转等
掌握 bootloader 启动内核的原理,能完全自己写出一个 bootloader、字符设备驱动