You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

149 lines
5.7 KiB
Markdown

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

# 1. 计算机的发展
## 1.1. 电子管计算机
![image-20240830153949838](./img/image-20240830153949838.png)
ENIAC长30.48米宽6米高2.4米占地面积约170平方米30个操作台重达30英吨耗电量150千瓦造价48万美元。它包含了17,468根真空管电子管7,200根水晶二极管1,500 个中转70,000个电阻器10,000个电容器1500个继电器6000多个开关计算速度是每秒5000次加法或400次乘法是使用继电器运转的机电式计算机的1000倍、手工计算的20万倍。
![image-20240830154010191](./img/image-20240830154010191.png)
ENIAC的编程通过改变电缆连接的方式进行那时几乎所有的程序员都是女性。
## 1.2. 计算机核心技术的发展
![image-20240830154119341](./img/image-20240830154119341.png)
电子管又叫做阴极射线管是ENIAC的核心。
![image-20240830154308967](./img/image-20240830154308967.png)
1947发面了晶体管一般使用半导体材料硅/锗为材料,后来锗材料因为物理特性的原因几乎很少用了)代替电子管,使得计算机的功耗和体积大大降低,同时运算速度大大提升。
![image-20240830154543648](./img/image-20240830154543648.png)
集成电路英文为Integrated Circuit缩写为IC顾名思义就是把一定数量的常用电子元件如电阻、电容、晶体管等以及这些元件之间的连线通过半导体工艺集成在一起的具有特定功能的电路。是20世纪50年代后期到60年代发展起来的一种新型半导体器件。它是经过氧化、光刻、扩散、外延、蒸铝等半导体制造工艺把构成具有一定功能的电路所需的半导体、电阻、电容等元件及它们之间的连接导线全部集成在一小块硅片上然后焊接封装在一个管壳内的电子器件。其封装外壳有圆壳式、扁平式或双列直插式等多种形式。集成电路技术包括芯片制造技术与设计技术主要体现在加工设备加工工艺封装测试批量生产及设计创新的能力上。
## 1.3. 现有主流计算机的计算能力
13th Gen Intel(R) Core(TM) i7-13700K
- 核心6.38GFLOPS/Core 64亿浮点/核心/秒
- CPU500亿2000亿/秒
- 频率 3~6G
- 晶体管数量 估计 20亿50亿
- 功耗 65W
# 2. 嵌入式系统的概念和特点
计算机系统分类P2
1. 通用计算机按照高速运算和海量存储的技术方向发展。
2. 嵌入式系统则向低功耗、高可靠性和便携性等方向发展
## 2.1. 什么是嵌入式
IEEE定义用于控制、监视或者辅助操作机器或设备装置。
通用定义:嵌入到对象体系中,以应用为中心,以计算机技术为基础,软硬件可裁剪,适应应用系统对功能、可靠性、成本、体积和功耗等严格要求的专用计算机系统。
## 2.2. 嵌入式系统的特点p2
1. 嵌入性
2. 专用性
3. 计算机系统
## 2.3. 问题:
> 你身边的电子设备,那些是嵌入式的,哪些是非嵌入式的?
>
> - 笔记本
> - 服务器
> - 手机?
> - 手表?
> - 空调
> - 电视?
> - 洗衣机
> - 冰箱
> - 蓝牙耳机
> - 遥控器
>
# 3. 嵌入式系统的组成p3
![image-20240831090312951](./img/image-20240831090312951.png)
虚线上的是软件部分,下部是硬件部分。硬件部分分为核心部分和外围电路;软件部分的操作系统是可选的。
> 问题:为什么需要操作系统,没有操作系统行不行?
## 3.1. 嵌入式硬件(p3-p4)
- 嵌入式处理器MPU/MCU一般来说MPU的通用能力更好、性能更好MCU 的性能较低、功耗更低型号更多满足专用的领域。例如以前学过的8051就是典型的MPU。
![image-20240831091648957](./img/image-20240831091648957.png)
> 问题8051 的基本性能和外设?
>
> 8051 可以用来做什么?
- DSP 数字信号处理器
### 3.1.1. 片上系统SOC
片上系统SOC集成度更高除了MPC/MCU集成了信号处理(DSP),音频、视频、存储等附加功能,更便于小型化和专用化。
### 3.1.2. ARM处理
ARM公司负责设计处理计内核其他公司购买内核设计并在内核的基础上增加功能后完成自己的芯片。
系列Cortex-A、Cortex-R、Cortex-M性能从高到底。Cortex-A系列用于手机、平板、甚至服务器领域Cortex-R通用的高性能嵌入式用于汽车、网络产品片、仪器、家电等领域Cortex-M是低功耗系列用于手表、物联网传感器等小型化、低功耗的领域。
![image-20240831093122332](./img/image-20240831093122332.png)
### 3.1.3. 外围电路p5
- 环境感知
- 通信类
- 存储类
- 人机交互类
## 3.2. 嵌入式系统软件p6
![image-20240831093537375](./img/image-20240831093537375.png)
- 驱动程序
- 操作系统
- 应用程序
# 4. 嵌入式系统的开发流程
## 编程模式p7
### 前后台程序(裸机编程)
该方式适合简单的应用。
后台系统:一个死循环,在循环中调用不同的功能函数完成操作;
前台系统:多个中断服务,用于处理系统的异步事件和实时性要求高的任务。
![image-20240831103309376](./img/image-20240831103309376.png)
### 嵌入式操作系统
适合复杂的应用更方便的管理任务间的切换同时也需要较多的资源RAM、ROM、CPU
## 程序开发方式P8
- 寄存器方式以前的8051编程方式需要了解每个寄存器的具体地址通过寄存器的读写、位操作等完成功能的开发
- 库函数方式:使用函数和预定义常量来简化寄存器的操作,其底层还是寄存器的操作。