**嵌入式:**以应用为中心,以计算机技术为基础,软硬件可裁剪的专用计算机系统
计算机组成: 控制器、运算器(CPU)、存储器(内存 外存)、输入设备(鼠标、键盘、耳机)、输出设备(显示器、麦克风、打印机)
低成本、低功耗、体积小
51单片机(8位单片机):
1980年,Intel推出MCS-51系列: 8051型号单片机(控制领域)
Intel将8051单片机授权:Atmel(AT89C51)、Philips(P89V51 ISP在线编程)、STC(STC89C52、STC89C52RC)
**最小系统:**能够使单片机正常工作所需要的最少的器件
**晶振:**单片机工作提供频率/节拍
11.0592MHZ(串口波特率)
12.000MHZ(定时器)
底板型号: HC6800-MS 普中51-MS
单片机芯片型号: STC89C52 STC89C52RC(512byte)

处理器概念:
CPU:Central Processing Unit 中央处理器 完成数据运算和指令处理
MCU:Micro Ctronller Unit 微控制器 集成度高,将所有的功能集成到同一块芯片中,成本低,应用在简单控制领域
MPU:Micro Procerssing Unit 微处理器 集成度低,只有一块单独的CPU芯片,需要外接功能模块,成本高,复杂应用领域
GPU:Graphics Processing Unit 图形处理器,图形处理、图像渲染
NPU:Neural Processing Unit 神经网络处理器,AI推理、AI加速、神经网络处理、卷积运算
FPU:Floating Point Unit 浮点数运算单元,完成浮点数运算(集成在CPU内部)
SOC:System On Chip 片上系统,将多个功能芯片集成到一块芯片(体积小、功耗低、Linux)
存储器概念:
内存:存放程序运行过程中的变量、掉电数据丢失、读写速度快、价格贵(内存条)
外存:存放程序、代码、指令、掉电数据不丢失、读写速度慢、价格便宜(硬盘)

RAM:Random Access Memory ,随机访问存储器,存放单片机程序运行过程中变量

CPU与RAM交互的三大总线:
- 地址总线:CPU通过地址总线寻找RAM中变量的地址,寻址范围:2^8(单向)
2.数据总线:CPU通过数据总线与RAM进行数据传输(双向)
3.控制总线:CPU通过控制总线发送控制指令(双向)
// 1. CPU通过控制总线向RAM发送读指令
// 2. CPU通过地址总线寻找RAM中变量地址
// 3. RAM通过数据总线将变量值发送给CPU
// 4. CPU负责数据运算
// 5.CPU通过控制总线向RAM发送写指令
// 6. CPU通过地址总线寻找RAM中变量地址
// 7.CPU通过数据总线将运算结果存入到RAM
ROM:Read Only Memory **只读存储器,**存放的是单片机程序、代码、指令(8KB)

51 **单片机:**将40个引脚划分为4组:P0 - P3,每一组分别有8个引脚
**网络编号:**本质一根导线,为了避免复杂物理连线,相同编号的引脚在实际电路中彼此互连
**外设寄存器:**能够操作硬件,具有固定地址的空间
位运算:
- | :按位或,将两个二进制数对应位进行比较,如果全为0,则结果为0;如果有一个bit为1,则结果为1
char t = 0xF4; // 1111 0100
char n = 0x32; // 0011 0010
t | n: 1111 0110 0xF6
应用场景:指定位置1,其余位不变 t |= (1 << n);
- &:按位与,将两个二进制数对应位进行比较,如果全为1,则结果为1;如果有一个bit为0,则结果为0
char t = 0xF4; // 1111 0100
char n = 0x32; // 0011 0010
t & n: 0011 0000 0x30
应用场景:指定位清0,其余位不变 t &= ~(1 << n);
- ~:按位取反,将二进制数每一位进行翻转
char t = 0xF4; // 1111 0100
char n = 0x32; // 0011 0010
~(t & n): ~(0011 0000) ->1100 1111 0xCF
- ^:按位异或,将两个二进制数对应位进行比较,相同为0,相异为1
char t = 0xF4; // 1111 0100
char n = 0x32; // 0011 0010
t ^ n:1100 0110 0xC6
-
<<:按位左移,将二进制数左移n,低位补0
-
>>:按位右移(逻辑右移、算术右移、循环右移)