嵌入式软件开发入门

1. 如何学习嵌入式软件开发

        做嵌入式软件开发一定要结合开发板来学习,所有的知识都可以在开发板上实现,我的嵌入式学习主要分为两个主要阶段。

1.1 对于MCU的学习:

        这个阶段主要学习基础的硬件知识,因为MCU没有复杂操作系统的封装,可以直接了解硬件特性,是学习硬件和协议的最好的平台。另外基于MCU也可以掌握RTOS系统,LWIP等基础知识。

1.2 对于SOC的学习

        这个阶段主要学习bootloader, Linux,文件系统,buildroot, yocto等基于linux系统的衍生技术。主要包括bootloader的开发,Linux驱动的开发,构建嵌入式文件系统,系统管理及配置等。由于Linux平台过于复杂,可以根据自己的兴趣爱好来分块研究。

2. 学习嵌入式开发的准备

嵌入式开发板:

        MCU: 我用的是正点原子的STM32F407的板子,烧录工具使用的是STLINK

        SOC:我用的是正点原子的IMX6ULL开发板,这个不需要烧录工具,有USB线就可以烧录

虽然我使用的都是开发板,当然网上也有相应的教程,但我后面的内容还是跟网上的教程很不一样的。我会更多的去分享更深入的知识,以及结合我多年工作经验的总结,希望与大家共同交流,共同进步。

3. 第一阶段的学习

        接下来的第一阶段我会基于STM32来展开我的博客,包括Cortex-M4的基础知识,基础硬件的知识,STM32的软件构造,启动逻辑,烧写逻辑,功能开发,系统移植,协议栈适配等内容。

        由于STM32使用比较广泛,文档也相对比较全面,网上还有很多基于STM32的DIY,所以使用STM32来做嵌入式入门的学习非常适合。

4. 第二阶段的学习

        第二阶段的内容我会基于IMX6ULL来展开我的博客,本身我对IMX6/8系列就非常熟悉,到时会分享我在工作中所遇到的问题及相关经验的总结。

        主要的内容围绕bootloader的开发,驱动的开发,使用yocto或buildroot定制嵌入式文件系统,systemd系统管理,Linux驱动架构等内容展开。

Note:

由于我是一个Linux的狂热者,所以我的所有开发环境都是基于Linux系统(ubuntu), 我不会去使用KEIL等IDE,因为IDE会屏蔽软件的构造及芯片的原理,所以会很难真正了解它底层的原理。

        我的博客会很随意,涉及到什么知识就简单展开相关的内容和大家讨论,由于个人技术能力有限,希望大家不要吝啬您的评价,谢谢

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值