• 《如何学习基于ARM嵌入式系统》笔记整理


    author:Peong

    time:20190603

    如何学习基于ARM嵌入式系统

    一.嵌入式系统的概念

    硬件上讲,将外围器件,与CPU集成在一起。

    操作系统上讲,定制符合要求的系统内核

    应用上讲,把软件内核和应用一起烧录到ROM中

    二.嵌入式系统的分层

    硬件层:硬件平台是基础,增值靠软件

    驱动层:

    驱动程序在系统调用的时候,不会独占操作系统的时间片。而导致其他任务不能执行。

    研究操作系统内核和调度

    数据结构和算法,操作系统原理,编译原理

    操作系统层:移植

    应用层:编译和开发环境

    三.目标与定位

    先有目标,再去定位

    从硬件上讲:接口电路设计;汇编和C语言

    从软件上讲:基于ARM处理器的操作系统层面的驱动,移植

    结合自身的特点,选择层面。

    四.关于开发平台选择

    从自己的未来和目标方向,看开发板的接口资源,看行业的通用性。

    五.培训

    时间成本,同龄人竞争

    六.高级嵌入式系统硬件工程师

    从系统的层面考虑多个因素。

    七.高级嵌入式软件工程师(自己补充)

    初级阶段:

        熟悉C,Linux命令,vim,

        了解汇编,Makefile,shell

        常用通信协议:UART,SPI ,IIC , CAN,Modbus,1-wire,

        了解基本网络协议:TCP/IP,MQTT , HTTPS

        了解网络数据交换格式:cjson解析及构造

        了解芯片架构:x86,ARM,MIPS

    硬件角度:

        基本元器件原理,基本升压,降压电路

        常用通讯接口,了解常用无线通讯原理

        利用示波器及万用表测量和排出问题

     

    进阶阶段:驱动设计,编译,链接,操作系统,熟悉网络协议

    高级阶段:内存管理,系统框架,工程化角度

     

     

  • 相关阅读:
    stm32 复位后 引起引脚的变化,输出电平引起的问题
    利用jink的驱动软件j-flash 合并两个hex的方法,bootloader+app
    利用jink调试程序,时间不准的解决办法
    为什么你有10年经验,但成不了专家?
    第二章 信息的表示和处理
    Python人名独特性统计

    Python基本统计值计算
    VScode如何编译多个.C文件
    Python连续质数计算
  • 原文地址:https://www.cnblogs.com/Peong/p/10968924.html
Copyright © 2020-2023  润新知