欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

嵌入式学习笔记 -- 基础与硬件(1)

程序员文章站 2022-06-09 08:27:43
...

一.嵌入式系统概述

    intel推出16位8096系列,称之为嵌入式微控制器。 

      嵌入式系统:是一种计算机硬件和软 件的组合,也许还有机械装置,用 于实现一个特定功能。在某些特定 情况下,嵌入式系统是一个大系统 或产品的一部分。

1.1.1嵌入式系统的定义--各地区不同的定义

     《中国国家标准GB/T22033-2008信息技术—嵌入式系统术语》:嵌入 式系统是置入应用对象内部起信息处理和控制作用的专用计算机系统。

      IEEE(国际电机工程师协会):嵌入式系统是“控制、监视或者辅助机 器和设备运行的装置”。

      *:嵌入式系统是一种用计算机控制的具有特定功能的较小的机 械或电气系统,且经常有实时性的限制,在被嵌入到整个系统中时一般 会包含硬件和机械部件。

    从计算机本身角度概括表述嵌入式系统:

    嵌入式系统,即嵌入式计算机系统,它是不以计算机面目出现的 “计算机”,这个计算机系统隐含在各类具体的产品之中,这些 产品中,计算机程序起到了重要作用。

 

1.1.2 嵌入式系统的由来及发展史 -- 总览 及 ARM公司介绍

    1946年:诞生了世界上第一 台电子数字计算机 (ENIAC)

    1971年:Intel公司推出了单芯片4004微处理器[全球第一款微处理器](MPU)

     80年代:逐步出现了16位 、32位微控制器 (MCU)

     90年代:数字信号处理器(DSP) 、片上系统(SoC)得到 了快速发展。

     21世纪:嵌入式系统芯片制造技 术快速发展,融合了以 太网与无线射频技术, 成为物联网(IoT)关键 技术基础

     ARM即Advanced RISC Machines的缩写,1990年成立, 90年代,ARM的32位嵌入式 RISC处理器扩展到世界各地, 75%以上的市场份额. 1993年,ARM公司发布 了全新的ARM7处理器核 心。2004年开始,Arm公司在经典微处理器Arm11后,开始用Cortex命名,并分为A(应用处理器系列),M(微控制器系列),R (实时处理器系列)。 2011年推出首款64位架 构ARMv8。

 

1.1.3嵌入式系统分类--按照应用范围将嵌入式系统分为两大类

1.电子系统智能化的微控制器(注重软硬件协同)

     主要用于工业控制,现代农业、家用电器、汽车电子 、测控系统、数据采集等,一般被称之为微控制器( MCU),这类嵌入式系统产品,从形态上看,更类 似于早期的电子系统,但内部计算程序起核心控制作用。

2.计算机应用延伸的应用处理(以软件为主)

    主要用于平板电脑、智能手机、电视机顶盒、企业网络设 备等,这类应用所使用的嵌入式处理器一般被称之为应用处理器(Application Processor),这类嵌入式系统产 品,从形态上看,更接近通用计算机系统。开发方式上, 也类似于通用计算机的软件开发方式。

1.1.4嵌入式系统的特点 -- 与通用计算机对比

1.不以计算机面目出现:隐含在种类众多的具体产品中,芯片种类繁多 ,而应用对象大小各异。
2.需要专用工具和方法:要有一套与相应芯片配套的开发工具和开发环境。
3.使用MCU设计系统:以MCU为核心的嵌入式系统,其程序被固化到 非易失性存储器(Flash)中 ,变量及堆栈使用 RAM存储器。
4.涉及各种软、硬件知识:嵌入式系统专用性很强,通常是用在特定应用 领域,进行嵌入式系统的开发,还需要对领域 知识有一定的理解。

1.2.1学习困惑,知识体系及学习建议

1.选微处理器还是应用处理器作为入门芯片? 

   建议:选择微控制器作为入门芯片,且从不带操作系统学起。

2.开始学习时,是无操作系统(NOS)、实时操作系统(RTOS), 还是一般嵌入式操作系统(EOS)?

   建议:先把嵌入式系统软件与硬件基础打好,再根据实际应用需要 ,选择一种实时操作系统(RTOS)进行实践。

3. 如何平衡学习软件与硬件之间的关系? 

  建议:要在一个大的框架内协调工作,同时打好嵌入式系统的硬件 与软件基础。

4.知识体系:

 .掌握硬件最小系统与软件 最小系统框架。

 .掌握常用基本输出的概 念、知识要素、构件使 用方法及构件设计方法。

 . 掌握若干嵌入式通信的概念、知识要 素、构件使用方法及构件设计方法。

 .掌握常用应用模块的构 件设计方法及使用方法及数据处理方法。

 .掌握一门实时操作 系统RTOS的基本 用法与基本原理。

5.学习建议: 

1、遵循“先易后难,由浅入深”的原则,打好软硬件基础。
2、充分理解知识要素、掌握底层驱动构件的使用方法
3、基本掌握底层驱动构件的设计方法。
4、掌握单步跟踪调试、打桩调试、printf输出等调试手段。
5、日积月累,勤学好问,充分利用本书及相关资源。

1.3.1MCU简介

  MCU是单片微型计算机(单片机)的简称,早期的英文名是Single-chip Microcomputer,后来大多数称之为微控制器(Microcontroller)或嵌 入式计算机(Embedded computer)。MCU的基本含义是:在一块芯片内集成了*处理单元(CPU,Central Processing Unit)、存储器(RAM/ROM等)、定时器/计数器及多种输 入输出(I/O)接口的比较完整的数字处理系统。

在MCU出现之前,人们必须用模拟电路、数字电路实现测控系统中的大部分计算与控制功能,这样使得控制系统体积庞大,易出故障。MCU出现以后,核心变成 MCU,系统中的大部分计 算与控制功能由MCU的软 件实现。其它电子线路成为 MCU的外围接口电路,承担着输入、输出与执行动作 等功能,而计算、比较与判断等原来必须用电路实现的功能,可以用软件取代,大 大地提高了系统的性能与稳定性。这种控制技术称之为嵌入式控制技术。

                                   嵌入式学习笔记 -- 基础与硬件(1)

1.3.3应用处理器简介--应用处理器基本概念

应用处理器的全名是多媒体应用处理器(Multimedia Application Processor),简称MAP。它是在低功耗CPU的基础上扩展音视频功能和专用接口的超大规模集成电路,是伴随着便携式移动设备特别是智能手机而产生的(例如:麒麟960,苹果A12)。

应用处理器特点:1.低功耗  2. 体积微小  3. 尽可能高的性能

MAP应用处理器接口更丰富,MAP不仅包含MCU接口,还因为应用处 理器的场景有多媒体、与PC方便互联等 需要,因此其接口通常还包括了USB、 PCI、TU-R 656、TS、AC97、3D、2D 、闪存、DDR、SD等接口。MCU接口:通用I/O即GPIO、模数转换 AD、数模转换DA、串行通信接口UART、 串行外设接口SPI、I2C、CAN、USB、嵌入式以太网、LED、LCD等
 

ARM架构处理器:

ARM公司统一采用Cortex命名,Cortex系列分为了M、R、A系列,我们 所看到的大部分应用处理器都是基于Cortex-A系列内核的。 Cortex-A系列处理器主要基于32位的ARM v7A或64位的ARM v8A架构。
 

.ARM v7A系列支持传统的ARM、Thumb指令集和新增的高性能紧凑型Thumb-2 指令集
.主要包括了高性能的Cortex-A17和Cortex-A15、可伸缩的Cortex-A9、经过市 场验证的Cortex-A8、高效的Cortex-A7和Cortex-A5。
.ARM v8A是在ARMv7上开发的支持64位数据处理的全新架构
.ARMv7架构的主要特性都在ARMv8架构中得到了保留或进一步拓展,该系列主要 包括了性能最出色、最先进的Cortex-A75、性能优异的Cortex-A73、性能和功 耗平衡的Cortex-A53、功耗效率最高的Cortex-A35、体积最小功耗最低的 Cortex-A32。