计算机硬件组成与运行原理,、单片机介绍(51和stm32)

计算机基础

计算机 硬件 组成

  • 输入设备:将其他信号(物理量)转换为计算机可以识别的信号(电信号01011)。
  • 输出设备:将电信号(0、1)转为人或其他设备能理解的信号。
  • 运算器:CPU对信息处理和运算的部件,常进行算术运算和逻辑运算,其核心是算术逻辑单元ALU,CPU中用各种各样的数字电路搭配成各种各样的运算电路,如:算术运算:加减乘除,逻辑运算:与或非等
  • 控制器:整个计算机的指挥中心
  • 存储器:存放程序和数据的部件,也是计算机能够实现"存储程序控制"的基础。

存储

存储器分为:内部存储器(内存)、外部存储器(外存)

  • 内存主要分为两类:
  1. ROM(Read Only Memery)只读存储器
    1. 掉电不丢失
    2. 默认只读,改写需特殊条件
    3. 读取速度慢
    4. 长期存储,存放系统程序、固件代码
    5. 如:计算机存放BIOS程序的内存、单片机存放程序的flash
  2. RAM(Random Memery)随机存储器
    1. 掉电丢失
    2. 可读可写
    3. 速度快
    4. 临时存储,存放程序运行过程中产生的临时变量
    5. 如:内存条、寄存器、cache等

其他常见存储结构:

寄存器

位置:位于CPU内部,直接集成在处理器芯片上。

特点:速度最快:访问时间以纳秒(ns)计,与CPU时钟周期同步。

容量极小:仅存储几个字节到几十字节的数据(如指令指针、状态寄存器)。

易失性:断电后数据丢失。

作用:存储CPU当前执行的指令、操作数和中间结果

cache :(高速缓存)

三级存储结构:L1\L2\L3

位置:通常集成在CPU内部或靠近CPU的芯片上,分为三级(L1、L2、L3)

特点:速度次快:L1缓存访问时间约1-3个时钟周期,L3缓存约10-20个周期。

容量较小:L1缓存通常为几十KB,L3缓存可达几十MB。

易失性:断电后数据丢失。

作用:缓存CPU频繁访问的数据和指令,减少访问内存

内存

传统ROM或Flash闪存

位置:部分集成在CPU内部

特点:传统ROM为只读,现代系统可能使用可擦写ROM(如EEPROM、Flash)以支持固件更新。

在CPU内部可能以微代码形式存在,用于实现复杂指令集(如x86的微操作缓存)。

作用:存储固化程序(如BIOS/UEFI固件),断电后数据不丢失。

主存储器 或内存 (Main Memory,属于RAM ):

位置:独立于CPU的内存条,通过内存总线与CPU连接。

特点:速度中等:访问时间约50-100纳秒,远慢于缓存但快于外存。

容量较大:现代计算机通常配备8GB-128GB RAM。

易失性:断电后数据丢失。

类型:DRAM:动态随机存取存储器,需定期刷新,成本低、容量大。

SRAM:静态随机存取存储器,无需刷新,速度快但成本高(用于缓存)。

作用:存储当前运行的程序和数据,是CPU与外存之间的"中转站"。

硬盘、磁盘

位置:独立于主板的外部设备(如硬盘、SSD、光盘等)。

特点:速度较慢:访问时间以毫秒(ms)计,比内存慢3-5个数量级。

容量巨大:硬盘可达数TB,SSD通常为256GB-4TB。

非易失性:断电后数据保留。

类型:机械硬盘(HDD):通过磁头读写旋转磁盘,容量大但速度慢。

固态硬盘(SSD):基于闪存芯片,无机械部件,速度快、抗震性好。

光盘/U盘:便携式存储,容量和速度较低。

作用:长期存储数据和程序,是计算机的"永久仓库"。

总线 (系统总线)

总线(Bus)是计算机各种功能部件之间传送信息的公共通信干线,它是由导线组成的传输线束,按照计算机所传输的信息种类,计算机的总线可以划分为数据总线、地址总线和控制总线,分别用来传输数据、数据地址和控制信号。

数据总线

(1)是CPU与内存或其他器件之间的数据传送的通道。

(2)数据总线的宽度决定了CPU和外界的数据传送速度。

(3)每条传输线一次只能传输1位二进制数据。如: 8根数据线一次可传送一个8位二进制数据(即一个字节)。

(4)数据总线是数据线数量之和。

地址总线

(1)CPU是通过地址总线来访问内存地址单元。

(2)地址总线决定了cpu 所能访问的最大内存空间的大小 。如: 10根地址线能访问的最大的内存为1024位二进制数据(1024个内存单元)

(3)地址总线是地址线数量之和。

控制总线

(1)CPU通过控制总线对外部器件进行控制。

(2)控制总线的宽度决定了CPU对外部器件的控制能力。

(3)控制总线是控制线数量之和。

总结:

数据总线的宽度决定CPU与其他元器件一次最大传送的数据量;

地址总线的宽度决定CPU的寻址能力;

控制总线决定CPU对其他元器件的控制能力

CPU的运行原理

程序的编译过程

C语言是高级语言,需要使用编译器编译成机器码,CPU进行处理执行。在Linux系统下C程序一般通过GCC编译器进行编译代码,在Keil5中默认使用ARM Compiler编译C程序。

编译步骤详细划分:

  • 预处理:主要是进行宏替换和拷贝包含的头文件到本文件
  • 编译:检查代码的规范性,是否有语法错误等,没错的话将代码编译成汇编语言
  • 汇编:将汇编文件转换成二进制目标文件
  • 链接:链接库函数生成可执行文件

程序 的执行过程

https://player.bilibili.com/player.html?bvid=BV15u4y187vA&autoplay=false

IO逻辑

在计算机中数据的存储、传输、运算都是以二进制形式进行的,二进制的取值为0和1。数据的传输通过总线真正传递的是电信号,本质是高低电平的切换,如:

高电平(逻辑1):通常表示电压接近电源电压(如3.3V或5V)。

低电平(逻辑0):通常表示电压接近0V(或地电位)。

单片机基础

单片机简介

单片机(Microcontroller Unit,MCU)是一种将中央处理器(CPU)、存储器(RAM/ROM)、输入输出接口(I/O)、定时器/计数器、中断系统等核心功能集成在一块芯片上的微型计算机系统。

MCU&MPU:

主流单片机

51单片机

  • 8位单片机
  • 应用场景:遥控器、电子钟表、简单家电控制(如电风扇、加湿器)、教学实验
  • 优势:成本低(单片机低至1元)、开发门槛低
  • 代表型号:

​​​​​​​32单片机

  • 32位高性能单片机

  • 代表型号:

    • ST(意法半导体)公司(STM32F1系列、STM32F4系列等)

    • 兆易创新公司(GD32F1系列)

    • 乐鑫科技公司(ESP32系列:ESP8266芯片)

主流芯片介绍(参考):

https://blog.csdn.net/2301_79556402/article/details/150448567

​​​​​​​开发板/ 最小系统

开发板/最小系统板是嵌入式系统开发的基础平台,主要包含如下部分:

  • 核心处理器(MCU/MPU)
  • 电源电路
  • 时钟电路
  • 复位电路
  • 调试接口
  • 存储器(可选,依赖处理器类型,MCU之外的)
  • 启动配置(可选,依赖处理器类型)

STM32简介

STM32优势

STM32是意法半导体公司生产的一款32位的微控制器。

STM32功能强大、性能优异、片上资源丰富、功耗低、是一款经典的嵌入式微控制器。

https://www.stmcu.com.cn/Product/pro_detail/STM32U5/product

  • 产品型号丰富,可选择性强;
  • 运算速度快,功耗低;
  • 处理器外设接口丰富;
  • 库函数(标准库、HAL库、LL库)开发体系学习资料多,应用广泛。

​​​​​​​芯片命名

芯片型号的命名,一般由"STM32"+产品类型+子系列代码+具体型号构成.

|------|---------------------------------------------------------------------------------------------------------|
| ST | 意法半导体 |
| M | 微控制器 |
| 32 | 32位处理器 |
| 类型 | F 通用/基础型 foundation G 多用途型general-purpose L 低功耗 low power H 高性能High performance S 简单/标准型 Standard U超低功耗 |
| 系列 | 0精简系列 1/2/3 增强系列 4/7 高性能系列 |
| 子型号 | 00/01/02/03/05/07 |
| 引脚数量 | K/6-32脚 C/8-48脚 R-64脚 V-100脚 Z-144脚 A-168脚 I-176脚 B-208脚 N-216脚 |
| 存储量 | 6:32KB 8:64KB B:128KB C:256KB D:384KB E:512KB G:1MB I:2MB |
| 封装 | U - UQFN封装 T - TQFP封装 |
| 工作温度 | 6 - -40 ~ 85度 |

​​​​​​​芯片框图

ARM

  • ARM是一家公司 ,ARM公司是英国一家芯片知识产权(IP)供应商,它与一般的半导体公司最大的不同就是不制造芯片且不向终端用户出售芯片,而是通过授权模式将技术提供给芯片厂商(如苹果、高通、三星、华为等),由后者基于ARM架构开发具体的处理器芯片(如手机SoC、嵌入式MCU等)
  • ARM 一些处理器的统称 早期经典处理器:ARM7 ARM9 ARM11,后续处理器开始以cortex命名,Cortex-A/R/M
  • ARM表示一种指令集 ,计算机硬件与软件之间的"沟通语言",它定义了处理器能够执行的基本指令集合、数据类型、寄存器结构、寻址模式等底层规则
    1. ARM处理器分类

早期经典处理器:ARM7 ARM9 ARM11,后续处理器开始以cortex命名,Cortex-A/R/M

  • Cortex-A系列

针对开放式操作系统的高性能处理器,应用于智能手机、数字电视、智能平板等高端运用

常见的有Cortex-A8、Cortex-A9、Cortex-A53、Cortex-A57

  • Cortex-R系列

提供非常高的性能和吞吐量,同时保持精准的时序属性和可预测的中断延时,通常用于时序关键的应用中,针对实时系统、满足实时性的控制需求,应于汽车制动系统、动力系统等

  • Cortex-M系列

为单片机驱动的系统提供了低成本优化方案,应用于低功耗嵌入式控制、智能传感器、汽车周边、物联网设备等

常见的有Cortex-M0、Cortex-M3

​​​​​​​

硬件基础

​​​​​​​二极管

特性:单向导通性,正向导通反向截止

​​​​​​​三极管

三极管有两种类型,PNP和NPN型。分别由两个PN结组成,作用为通过小电流控制大电流,实现信号放大、开关控制等功能。

三极管是电流控制型开关,通过基极B电流控制集电极C电流实现电流放大作用。

​​​​​​​NPN型

特性:基极(B)比发射极(E)高至少0.7V才能导通,形成电流路径:C→B→E。适合接在电路的低边(靠近GND),基极(B)接正电压(如3.3V),发射极(E)接地

​​​​​​​PNP型

特性:基极(B)比发射极(E)低至少0.7V才能导通,形成电流路径:E→B→C,适合接在电路的高边(靠近VCC),基极(B)接负电压(或比发射极低0.7V),发射极(E)接电源

​​​​​​​MOS管

MOS管是电压控制型开关,通过栅极G电压(Vgs)控制源极S与漏极D之间的导通与截止,实现电流的通断控制。

NMOS管的G栅极给高电平时,漏极D和源极S导通,电流从D流向S

PMOS管的G栅极给低电平时,漏极D和源极S导通,电流从S流向D

(其中蓝色箭头表示电子的流动方向,电流和电子的方向相反)

相关推荐
Logic10112 天前
《计算机系统与维护》形考实训2、4、9:从零开始认知硬件、动手设计配置清单并完成网络接入
网络配置·计算机基础·计算机配置·计算机硬件·装机·形考作业·国家开放大学
编程火箭车2 个月前
【Java SE 基础学习打卡】02 计算机硬件与软件
java·电脑选购·计算机基础·编程入门·计算机硬件·软件系统·编程学习路线
希赛网3 个月前
软考软件设计师常考知识点:(一)计算机组成与体系结构
软考·uml·编程语言·计算机基础·软件设计师
前端杂货铺5 个月前
计算机组成原理(一)
计算机组成原理·计算机基础
编程火箭车5 个月前
程序在计算机中如何运行?——写给编程初学者的指南
计算机基础·编程入门·硬件知识·程序运行原理·初学者指南·编译与解释·操作系统作用
Cyrus_柯6 个月前
单片机基础
嵌入式硬件·计算机基础
奇妙之二进制6 个月前
计算机科学导论(10)什么是BIOS
ubuntu·计算机基础
奕天者6 个月前
计算机基础(一)——设计模式
学习·设计模式·计算机基础
迢迢星万里灬7 个月前
Java求职者面试指南:Spring、Spring Boot、MyBatis框架与计算机基础问题解析
java·spring boot·spring·mybatis·计算机基础·面试指南