1、嵌入式系统学习的三条路线
单片机入门HAL
单片机核心/RTOS
Liuxc++
2.学习嵌入式的三条路线的优缺点
2.1.单片机入门(HAL) 简单、快速,实际上工作中涉及单片机编程时,也提倡使用HAL库。 对于学习来说,HAL封装了很多技术细节,对技术成长帮助不大。 比如,你可能接触不到这些知识 重定位、代码段数据段BSS段、位置无关码、相对跳转、绝对跳转、 设置栈、中断上下文、保存/恢复中断现场、ARM架构 这些知识,是单片机的核心,学习了它,有助于在RTOS领域发展。 。
2.2.单片机深入(基于寄存器) 抛开HAL库,从芯片手册开始,自己写出一切代码。 注意:工作中绝对不建议这样做,但是学习时,这才能学到更深刻的知识。 这些知识,也是后续学习RTOS、学习Linux的u-boot的必备知识。
2.3. 不学单片机,直接上手Linux a 如果你有一定的硬件基础,或者对硬件操作不感兴趣,那么可以不学单片机。 Linux驱动 =面向对象的编程思想+良好的程序框架+硬件操作(这就跟单片机类似) 如果你要学习timux驱动开发,单片机虽然是基础,但是也可以在学习驱动过程中学握。
3、学习单片机的路径
1,从开发板上电的第一条指令开始,讲解整个程序涉及的一切只是, 包括但不限于这些: 重定位、代码段数据段BSS段、位置无关码、相对跳转、绝对跳转、 设置栈、中断上下文、保存/恢复中断现场、ARM架构 I2C协议与编程、SPI协议与编程、LCD、触摸屏、各类外设编程。 这些是RTOS的基础,也是Linux的u-boot的基础,有助于学习Linux驱动。
2,涉及cortex M3/M4, cortex A7: 会使用多款板子来讲解,先讲共性,再讲个性。