嵌入式:
以应用为中心:消费电子(手机、蓝牙耳机、智能音响)、医疗电子(心率脉搏、呼吸机)、无人机(大疆DJ)、机器人(人形四足机器人)
计算机技术:
计算机五大组成:运算器(数据运算)、控制器(指令控制)、存储器(内存外存)、输入设备(鼠标、键盘、摄像头)、输出设备(显示器)
软件:
编程语言(C/C++)、操作系统(Linux文件、多任务、网络)、数据结构、数据库
硬件:
51单片机:
硬件概念(定时器、PWM、中断)、原理图、寄存器、外设操作(LED、按键、数码管、蜂鸣器、传感器)
STM32单片机:
库开发(标准库、HAL库)
ARM:
英国公司设计处理器芯片方案,SAMSUNG、ATMEL、NXP->ARM芯片方案->开发板(ARM)
ARM7、ARM9、ARM11
CortexA:应用高端领域,处理复杂任务,用来跑操作系统(Linux 文件系统 多任务调度 网络)
CortexR:应用实时控制领域,实时性要求高(汽车电子)
CortexM:应用微控制器领域,MCU单片机(IOT物联网智能家居控制领域)
软硬件可裁剪:
加入需要的硬件/软件功能,将不需要的硬件/软件裁剪掉(低功耗、低成本)
计算机:
通用型计算机:PC、平板、手机
专用型计算机:无人机,完成某项特定功能而设计计算机
51单片机:
1980年,由Intel公司MCS-51系列:8051型号单片机(工业控制领域),由MCU转型到CPU;Atmel(AT89C51)、Philip(P89V51系列单片机,增强型单片机ISP在线编程)、STC宏晶半导体(STC89C51 STC89C52 STC89C52RC)
相关概念:
CPU:
CentralProcessingUnit(中央处理器)数据运算、指令处理,CPU性能越高,完成指令处理和数据运算的速度越快
MCU:
Micro CtronllerUnit(微控制器),集成度比较高,将所有功能集成到芯片中(CPU、RAM、ROM、定时器、UART、IO),简单控制,成本低
MPU:
MicroProcessingUnit(微处理器),集成度低,只有一块单独的CPU,需外接外设、存储模块,复杂应用领域,跑Linux操作系统,成本高
GPU:
GraphicsProcessingUnit(图形处理器),图形处理、图形渲染(GPU性能越好,图形显示的质量越好)
NPU:
NeuralProcessingUnit(神经网络处理器),Al推理、硬件加速,神经网络处理(卷积运算)->华为Mate60达芬奇NPUAl自动优化照片
FPU:
FloatingPointUnit(浮点数运算单元),完成浮点数的运算和处理(完全遵循lEEE754),大部分集成在CPU内部
SOC:
SystemOnChip(片上系统),集成度比较高,将多个芯片集成到一块芯片上(存储芯片、外设芯片)
RAM和ROM:
外存:
外存:主要存放程序、代码、指令,掉电数据不丢失,读写速度慢,价格便宜(移动硬盘1T 300)
内存:
内存:主要存放程序运行过程中的临时变量、掉电数据丢失,读写速度快,价格昂贵(内存条16G 300)
ROM:
Read-Only Memory,只读存储器,存放单片机程序,指令,掉电数据不丢失
RAM:
Random Access Memory,随机访问存储器,存放临时变量、临时数据,掉电数据丢失
单片机芯片内部结构:
CPU、RAM、ROM、Timer、PWM、IO、中断
三大总线:
地址总线:用来寻找RAM中的地址,所能寻址的最大范围2^8,256byte,单向
数据总线:通过地址总线去获取数据,数据交互双向
控制总线:时序控制、IO控制、中断
原理图:
MCU单片机芯片:
STC89C52RC、DIP40封装:双列直插式,40个引脚,划分成4组(端口寄存器unsignedcharP2;)
网络编号:在实际电路中的一个编号,避免物理连线,相同网络的编号的引引脚在实际电路中是彼此互通
LED模块:
发光二极管:具有单向导通性,分为共阳极和共阴极二极管
共阳极发光二极管的特性:
将所有发光二极管的阳极接到电源正极(VCC),阴极接到单片机的引脚。此时发光二级管阳极会输出高电平(VCC5V),如果发光二级阴极输出一个低电平(OV),阳极和阴极之间会形成一个
正向的电压差,满足发光二极管的单向导通性,所以电流就会从阳极流向阴极,发光二级就被点亮
位运算:
1、|:将二进制中的对应位的bit进行比较,如果有一个bit为1,结果为1;如果都为0,结果为0;
应用场景:指定位置1
2、&:将二进制中的对应位的bit进行比较,如果全为1,结果为1;如果有一个0,结果为0;
应用场景:指定位清0
3、^: 将对应位的bit进行比较,相同为0,相异为1
数码管:
数码管:51单片机搭载一个4位共阴极数码管,每一位数码管可以显示一些独立数值,数码管同一时刻只能显示一位
位选:选中某一位数码管(将P1寄存器对应bit位置1)
段选
静态显示
动态显示