嵌入式硬件第一弹——51单片机(1)

1. 51单片机架构

1.1 结构

1.1.1 最小系统

能够使单片机工作所需要最少器件

  • 电源
  • 晶振
  • 复位

1.1.2 内部结构

RAM:random access memory

  • 随机访问内存,存放变量,掉电 数据丢失,读写速度快

ROM:Read-Only Memory

  • 只读存储器,单片机程序、代码、指令

1.1.3 外部外设

接LED、KEY、BEEP

1.2 处理器大家族

CPU:Central Processing Unit

  • 中央处理器,完成数据运算 指令处理

MCU:Micro Ctronller Unit

  • 微控制器,集成度高,将所有功能集成 到一块芯片中(CPU、RAM、ROM、timer、UART),成本低, 价格便宜,简单控制领域

MPU: Micro Processing Unit

  • 微处理器,集成度低,只有一块单独的 CPU,需要外接功能模块(RAM、ROM),成本高,能够实现更复杂 的功能,跑Linux操作系统

GPU:Graphics Processing Unit

  • 图像处理单元,处理图形数据,图像渲染

NPU:Neural Processing Unit

  • 神经网络处理器,AI推理,硬件加速 (Mate 60 达芬奇NPU AI自动实现照片优化)

FPU:Float Point Unit

  • 浮点数单元,完成对浮点数运算

1.3 SOC

System on Chip

  • 片上系统,将多个芯片集成到一起 构成一个片上系统

2. 位运算

eg1:

unsigned char t = 0x00;

0000 0000 -》 1000 0001

bit7 bit0

MSB LSB

t |= (1 << 0) | (1 << 7);

指定位置1,其余位不变t |= (1 << n);

eg2:

unsigned char t = 0xFF;

1111 1111 -> 1111 1110

t = t & ~(1 << 0)

t = t & ~ (1 << 7)

指定位清0,其余位不变t &= ~(1 << n);

相关推荐
智者知已应修善业18 小时前
【51单片机中的打飞机设计】2023-8-25
c++·经验分享·笔记·算法·51单片机
FreakStudio18 小时前
亲测可用!可本地部署的 MicroPython 开源仿真器
python·单片机·嵌入式·面向对象·并行计算·电子diy·电子计算机
智者知已应修善业20 小时前
【51单片机按键调节占空比3位数码管显示】2023-8-24
c++·经验分享·笔记·算法·51单片机
rit843249920 小时前
STM32 + DS3231 + TM1640 实时时钟数码管显示系统
stm32·单片机·嵌入式硬件
zjxtxdy21 小时前
STM32开发
stm32·单片机·fpga开发
集和诚JHCTECH21 小时前
BRAV-7120加持,让有毒有害气体无处遁形
大数据·人工智能·嵌入式硬件
LCG元1 天前
STM32实战:基于STM32F103的I2C通信(AT24Cxx EEPROM读写)
stm32·单片机·嵌入式硬件
徐某人..1 天前
基于i.MX6ULL平台的智能网关系统开发
arm开发·c++·单片机·qt·物联网·学习·arm
星恒讯工业路由器1 天前
MCU+WiFi与CPU+WiFi模块区别
单片机·嵌入式硬件
LCMICRO-133108477461 天前
长芯微LD7940完全P2P替代AD7940,是一款14位、逐次逼近型模数转换器(ADC)
单片机·嵌入式硬件·fpga开发·硬件工程·dsp开发·模数转换器adc