百问网实战训练营-七天物联网家居DAY1-嵌入式基本概念和开发流程简介

一、什么是嵌入式?

一般除了通用计算机(电脑,通用是指同一个硬件设备满足不同的应用场景),其余电子器件基本都是嵌入式构成的,嵌入式的特点是:

1、不同的功能用途使用不同的硬件实现

2、智能,能够通过某些操作实现调节

3、软硬件可裁剪

二、嵌入式学习的基本路线

1、以数字电路、模拟电路以及c语言为基础

2、MCU软/硬件设计入门

3、向单片机裸机、单片机RTOS、Linux/Android驱动、Linux应用以及其他方向发展

4、技术成熟后可以从事项目经理或者资深工程师得相关职业

三、嵌入式基本知识

1、什么是ARM

    1) ARM是一家全球半导体行业技术领先的公司,主要业务是设计RISC嵌入式处理器;

    2) ARM是一类微处理器芯片或产品的统称,即所有采用ARM公司提供方案开发的RISC处理器;

    3) ARM是一项技术的名称,即采用RISC的处理器体系结构

2、ARM架构分类

b74e84e7d030405a85a7609096287a65.png

 3、基于ARM的STM32处理器

        STM32如今产品系列非常丰富,主要为ARM Cortex-M内核系列MCU,也开始涉及ARM Cortex-A内核系 列MPU,如图 2.2.3 所示。按应用特性分类,可分为无线WB/WL系列、超低功耗L0/L1/L3/L5系列、主流 G0/G4/F0/F1/F3系列、高性能F2/F4/F7/H7系列、全新的MP1系列

809e4e021e1f4e6ea43f2a499901fe82.png

 4、MCU和MPU

    MCU(微控制器)的特点是把CPU、内存、Flash集成在一个芯片上,俗称单片机,常见的MCU有80C51系列单片机、Atmel公司的AVR系列单片机、Microchip公司的PIC系列单片机、TI 公司的MSP430系列单片机、ST公司的STM32系列单片机、NXP公司的LPC1700系列单片机。MCU开发人员需要具备C语言、数字电子技术、模拟电子技术、微机原理等相关理论基础,还可能需要 电路板绘制等专业技能。涉及电子信息工程、自动化、测量控制等相关专业。MCU开发主要涉及的内容包含:GPIO、UART、I2C、SPI、LCD等外设接口,时钟、中断、定时器、 ADC/DAC、看门狗等内部资源,以及RTOS(FreeRTOS、RT-Thread、uCOS、LiteOS等)嵌入式实时操作系 统

MPU类似于通用计算机,MPU只负责处理和计算,外加电源,Flash、内存等设备。MPU开发人员需要具备、数据结构、操作系统、计算机网络等相关理论基础。涉及计算机科学、软件工 程、物联网等相关专业。 MPU开发主要涉及的内容包含:Bootload移植、Linux内核移植、Linux设备驱动开发(GPIO、UART、 I2C、SPI等)、Linux应用开发(文件I/O、多任务编程、进程间通信、网络编程、Qt界面设计等),甚至包 括Android驱动、Android应用编程。

二者区别是MCU侧重管理各个设备,不需要强大的运算和处理能力,更多的是对设备的管理和控制,MPU注重运算和处理能力,因此需要大量的外接内存来存放运算数据。

5、DSP和FPGA

DSP是数字信号处理器,具有强大的数字信号处理能力,DSP芯片拥有强大的数据处理能力,在数字信号处理领域,如调制/解调、数据加密/解密、图形处理、 数字滤波、音频处理等计算密集型的场景广泛应用

FPGA是现场可编程门阵列,可以通过硬件描述语言去修改硬件,比较灵活,可随时修改。FPGA使用硬件处理数据,采用并发和流水技术,多个模块之间可 以同时并行执行。FPGA可以根据现场情况配置器件功能,能够在技术和需求变化时重新配置,实现系统优 化升级

四、嵌入式系统的开发流程

1、交叉开发方式:嵌入式系统开发因为受内存、处理器、输入设备等影响,资源有限,不适合作为开发载体,因此一般嵌入式系统的开发方式为交叉开发方式,交叉开发主要是指将代码程序放在PC端执行,然后将编写好的程序通过下载器下载到开发板上。

2、交叉开发的组成

        交叉开发通常由三部分组成:宿主机(电脑)、目标机(单片机开发板)、连接宿主机和目标机的工具(调试 /仿真/下载器)。宿主机指用于开发程序的平台,这里指PC电脑,借助电脑上的开发软件,实现程序的编写、 编译;目标机指程序运行的平台,这里指开发板;连接宿主机和目标机的工具通常有串口、J-Link等。三者 示意如下图所示。

 

2、集成的开发环境(IDE)

将C语言编写的程序转换为处理器能处理的01序列,需要通过一些列的转换,如下图所示:

5cd40564669f446bb086d9eac1404b86.png

  将编辑器、编译器、汇编器、连接器、调试器集成在一起,就是集成开发环境(keilSTM32CubeIDE、IAR SYSIEMS)

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

myplybk

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值