day42-单片机
一、51单片机
1980 年 Intel 推出 MCS - 51 系列 8051 单片机(工业控制领域 MCU),此后 Atmel(AT89C51)、Philip(P89V51 系列)、STC 宏晶半导体(STC89C51 等)推出增强型兼容单片机,推动其从 MCU 转型为通用 CPU。
二、51单片机相关概念
1.CPU:Central Processing Unit(中央处理器) 进行数据运算和指令处理,CPU的性能越高,完成指令处理和数据运算的速度越快。
2.MCU:Micro Ctronller Unit(微控制器) 集成度较高,将所有功能集成到芯片中(CPU、RAM、ROM、定时器、UART、IO),适用于简单控制场景,成本低
3.MPU:Micro Processing Unit(微处理器) 集成度较低,只有一块CPU,需外接外设和存储模块才能组成完整系统,应用于复杂领域,Linux操作系统,成本高
4.GPU:Graphics Processing Unit(图像处理器) 进行图形处理和图形渲染,CPU的性能越好,图形显示的质量越好
5.NPU:Neural Processing Unit(神经网络处理器) 负责AI推理和硬件加速,处理神经网络中的核心运算(如卷积运算),【华为Mate60的“达芬奇NPU”通过AI自动优化照片】
6.FPU:Floating Point Unit(浮点数运算单元) 完成浮点数的运算和处理(遵循IEEE754),大部分集成在CPU内部
7.SOC:System On Chip(片上系统) 集成度较高,将多个芯片集成到一块芯片上(存储芯片,外设芯片)。
三、RAM和ROM
1.外存:主要用于存放程序、代码、指令,掉电时数据不会丢失,读写速度慢,价格便宜
2.内存:主要用于存放程序运行过程中的临时变量,掉电时数据会丢失,读写速度快,价格昂贵
3.RAM:Random Access Memory, 随机访问存储器,存放临时变量,临时数据,掉电时数据会丢失
4.ROM:Read-Only Memory, 只读存储器,用于存放单片机的程序,指令,掉电时数据会丢失
四、单片机芯片内部结构
CPU、RAM、ROM、Timer、PWM、IO、中断、UART
三大总线:
1.地址总线:用于寻找RAM中的地址,所能寻址的最大范围2^8,256byte,单向
2.数据总线:通过地址总线去获取数据,数据交互双向
3.控制总线:时序控制,IO控制,中断
五、原理图
MCU单片机芯片:
STC89C52RC、DIP40 封装:双列直插式,40个引脚,划分成4组(端口 寄存器 unsigned char P2;)
网络编号:
在实际电路中的一个编号,避免物理连线,相同网络的编号的引脚在实际电路中是彼此互通
LED模块:
LED发光二极管(具有单向导通性)
分类:共阳极和共阴极
特点:
1.所有发光二极管的阳极接到电源正极(VCC),阴极接到单片机的引脚。
2.阳极输出高电平(VCC 5V),如果发光二极管阴极输出低电平(OV),阳极和阴极之间会形成一个正向电压差,满足发光二极管的单向导通性,所以电流会从阳极流向阴极,发光二极管被点亮
六、位运算符
1.位运算符或 |
将二进制中的对应位的bit进行比较,如果有一个bit为1,结果为1;如果都为0,结果为0;
应用场景:指定位 置1
2.位运算符与 &
将二进制中的对应位的bit进行比较,如果全为1,结果为1;如果有一个0,结果为0;
应用场景:指定位 清0
七、数码管
51单片机搭载一个4位共阴极数码管,每一位数码管可以显示一些独立数值,数码管同一时刻只能显示一位
位选:通过控制对应引脚(如 P1 口某一位),选中其中某一位,让它准备显示内容。
段选:控制数码管 “各段发光二极管” 的亮灭,以此显示数字 / 字符(如七段数码管的 a - g 段,通过段选信号组合,能显示 0 - 9 等数字)。
静态显示:每个数码管都有独立的段选控制线,一旦给某数码管设置好段选信号(如对应数字的段码),它就持续显示该内容,直到信号改变。
动态显示:多个数码管共用一套段选控制线,通过 “快速轮流位选” 每个数码管,利用人眼 “视觉暂留”,让多个数码管看起来同时亮着。