51单片机 01 1. 描述CPU、MCU、MPU、GPU、NPU、FPU、SOCCPU中央处理器完成指令处理和数据运算。MCU微控制器集成度高将CPU、RAM、ROM、Timer、GPIO、中断、UART等功能集成到一块芯片中成本低应用于简单控制领域。MPU微处理器集成度低只有一块单独的CPU芯片需要外接存储和外设模块成本高用于复杂应用领域如运行Linux操作系统。GPU图形处理器用于图形处理、图像渲染常见于显卡。NPU神经网络处理器用于AI推理、AI加速、神经网络处理及卷积算法。FPU浮点数运算单元浮点数运算单元大部分集成在CPU内部。SOC片上系统片上系统将很多个芯片集成到一起。2. 单片机最小系统包括单片机最小系统包括1.主控芯片如stc芯片2.电源5V提供稳定的电压供电在芯片的VCC和GND之间需要放滤波电容。3.晶振提供基准节拍晶振频率决定了单片机执行指令的速度、通信时序的精准度以及定时器的精度。4.复位电路让单片机从头开始执行程序。3. STC芯片内部结构以STC89C52系列为例内部结构包括1.8位CPU,负责执行所有指令和进行数据处理2.随机访问存储器RAM存储程序运行过程中的临时数据如变量、中间结果等断电后数据会丢失3.只读存储器ROM存放单片机程序、代码、指令。掉电后数据不会丢失。4.4组8位并行I/O每个端口都可独立配置为输入或输出用于控制LED、读取按键、与其他芯片通信等5. 定时器时间延时、计数、外部事件、测量外部脉冲频率6.UART串行通信接口实现单片机与电脑、或其他串口设备之间的数据交换4. 内存和外存特点内存(RAM):直接与CPU交互CPU通过总线读写访问速度快容量较小断电后数据丢失临时存放 CPU 正在运行的数据、程序和程序中的变量外存ROM、EEPROM、硬盘先把数据加载到内存中PCU才能操作访问速度慢容量很大断电后数据永久保存。存放程序、代码、指令。5. RAM和ROM特性RAM随机访问存储器1.断电后数据丢失2.读取速度快3.可读可写4.程序运行时临时存放变量、堆栈、中断现场等ROM只读存储器1.断电后数据不丢失2.读取速度相对RAM慢3.工作状态下只能读取不能随意改写4.存放单片机程序、代码、指令等。6.CPU与RAM之间三大总线及作用1. 地址总线CPU通过地址总线寻找RAM中的地址最大寻址范围2^8(256byte) 单向2. 数据总线CPU与RAM之间进行数据传输双向3. 控制总线CPU通过控制总线发送控制指令 双向7. 如何实现数码管的显示数码管由8个LED7段 1个小数点组成。根据内部LED的连接方式分为共阴数码管所有LED的阴极连在一起接地高电平点亮LED、共阳数码管所有LED的阳极连在一起VCC低电平点亮LED静态显示一个数码管独占一组I/O口使用P1口控制位选对应的I/O口置1其余清0即可选中对应的数码管。通过段选段码决定显示什么数字。常用共阴段码表如下//0-9的共阴段码表 unsigned char seg[]{0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F};8. 数码管动态显示原理当需要显示多位数字时为了节省I/O口所有数码管的段选线a-g, dp是并联在一起的。通过快速轮流点亮每个数码管利用人眼视觉暂留效应造成“同时亮”的错觉。以显示数字1234为例扫描流程取个位→ 关闭所有位选消影→ 打开位选选中数码管 → 发送个位段码→ 延迟100ms即可→ 切换到下一位// 共阴极段码表(0 - 9) unsigned char seg[] {0x3F, 0x06, 0x5B, 0x4F, 0x66, 0x6D, 0x7D, 0x07, 0x7F, 0x6F}; // 位选 void Select_Bit(unsigned int n) { P1 ~(0x0F 0); // P1寄存器低四位清零 P1 | (1 n); // 选中第n位数码管显示 } // 段选 void Select_Seg(unsigned int n) { P0 seg[n]; } // 数码管动态显示 void Digiter_show(unsigned int n) { int m 0; int t 0; while (n ! 0) { m n % 10; P0 0; Select_Bit(t); Select_Seg(m); delay(100); n / 10; } }9. 指定位清零和指定位置1如何实现通过位运算指定位清零t ~(1 n);“有零为零”指定位置一t | (1 n);“有一为一”10.什么是外设寄存器外设寄存器能够操作硬件具有固定地址的空间。是单片机内存映射的用来专门控制硬件外设如I/O口i、定时器、串口等位于特殊功能寄存器区。可以读写寄存器对应地址的数据来控制外设、读取外设运行状态、控制引脚电平。11. 控制LED和数码管分别用到了哪几个外设寄存器控制LED的外设寄存器1.P0、P1、P2、P3这4个通用I/O口寄存器输出高低电平控制LED亮灭。控制数码管的外设寄存器1.段选用P0寄存器决定显示什么数字2.位选用P1寄存器决定哪一个数码管亮