快速掌握单片机基础(1)(嵌入式基本概念)

一、51单片机基本概念

1.软件学习路线

C语言:编程基础语法

数据结构:数据组织、操作数据的方法

Linux系统编程:Linux下软件功能实现(文件系统、多任务调度、网络、内存管理)

2.嵌入式基础概念

嵌入式:

以应用为中心,以计算机技术为基础,软硬件可裁剪的专用计算机系统。

特点:

低成本、低功耗、体积小

计算机五大组成

控制器、运算器(CPU)、存储器(内存、外存)、输入设备(鼠标、键盘、耳机)、输出设备(显示器、麦克风、打印机)。

1)51单片机(8位单片机)

1980年,Intel推出MCS-51系列: 8051型号单片机(控制领域)

Intel将8051单片机授权:Atmel(AT89C51)、Philips(P89V51 ISP在线编程)、STC(STC89C52、STC89C52RC)

51单片机:

将40个引脚划分为4组:P0 - P3,每一组分别有8个引脚

网络编号:

本质一根导线,为了避免复杂物理连线,相同编号的引脚在实际电路中彼此互连

最小系统:能够使单片机正常工作所需要的最少的器件

晶振:单片机工作提供频率/节拍

11.0592MHZ(串口波特率)

12.000MHZ(定时器)

底板型号: HC6800-MS 普中51-MS

单片机芯片型号:STC89C52 STC89C52RC(512byte)

2)处理器概念

  1. CPU(Central Processing Unit)中央处理器:

完成数据运算、指令处理。

  1. MCU(Micro‑Controller Unit)微控制器/单片机

芯片内部高度集成,CPU+RAM+ROM+外设全部集成在一块芯片;成本低,适合简单控制场景(51单片机属于MCU)。

  1. MPU(Micro‑Processing Unit)微处理器

只有独立CPU内核,RAM、ROM、外设都需要外接;集成度低,适合复杂操作系统。

  1. GPU(Graphics Processing Unit)图形处理器

图像渲染、图形处理。

  1. NPU(Neural Processing Unit)神经网络处理器

AI推理、卷积运算。

  1. FPU(Floating Point Unit)浮点运算单元

专门完成浮点数运算,集成于CPU内部。

  1. SOC(System On Chip)片上系

多个功能芯片全部集成在一块芯片;体积小、功耗低,多用于运行Linux的设备。

3)存储器概念

内存:

存放程序运行过程中的变量、掉电数据丢失、读写速度快、价格贵(内存条)

外存:

存放程序、代码、指令、掉电数据不丢失、读写速度慢、价格便宜(硬盘)

RAM:

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

// 1. CPU通过控制总线向RAM发送读指令

// 2. CPU通过地址总线寻找RAM中变量地址

// 3. RAM通过数据总线将变量值发送给CPU

// 4. CPU负责数据运算

// 5.CPU通过控制总线向RAM发送写指令

// 6. CPU通过地址总线寻找RAM中变量地址

// 7.CPU通过数据总线将运算结果存入到RAM

4)CPU与RAM交互的三大总线

地址总线:

CPU通过地址总线寻找RAM中变量的地址,寻址范围:2^8(单向)

数据总线:

CPU通过数据总线与RAM进行数据传输(双向)

控制总线:

CPU通过控制总线发送控制指令(双向)

5)ROM

Read Only Memory 只读存储器,存放的是单片机程序、代码、指令

6) 频率及时间

(1)频率单位

HZ

KHZ 1KHZ = 10^3HZ

MHZ 1MHZ = 10^3KHZ = 10^6HZ

GHZ 1GHZ = 10^3MHZ = 10^9HZ

THZ 1THZ = 10^3GHZ = 10^12HZ

大频率 -> 小频率:乘

小频率 -> 大频率:除

(2)时间单位

ns

us 1us = 10^3ns

ms 1ms = 10^3us = 10^6ns

s 1s = 10^3ms = 10^6us = 10^9ns

频率:2.1GHZ * 10 ^ 9 = 2,100,000,000HZ

时间与频率之间关系:呈倒数关系

时间:1 / 2,100,000,000 = 0.5ns

7)外设寄存器

外设寄存器:能够操作硬件,具有固定地址的空间

#define P2 *((unsigned char *)0xA0)

P2 = 0xFF;

P2 = 0x00;

bit7 bit0

0000 0000

MSB LSB

相关推荐
comyccccc12 小时前
LM2596电源PCB布局布线全解析学习笔记
单片机·嵌入式硬件
qq_4017004114 小时前
FreeRTOS 堆内存管理源码剖析:释放一块内存,空闲块数量反而变少了?
单片机·freertos
新晨单片机设计15 小时前
S017C-基于STM32汽车防酒驾系统(心率、血氧、短信)【Proteus仿真+Keil程序+原理图】
stm32·单片机·proteus·防酒驾报警系统
fly_sunnn16 小时前
STM32-GPIO输出以及按键控制LED&光敏传感器控制蜂鸣器
stm32·单片机·嵌入式硬件
qq_4017004119 小时前
FreeRtos:SysTick的功能分析
单片机·嵌入式硬件
zbyyd19 小时前
i.MX6ULL 裸机开发|GT9147 触控 + SPI 与 ADXL345 加速度传感器驱动
单片机·嵌入式硬件
fly_sunnn19 小时前
STM32-LED闪烁·LED流水灯·蜂鸣器
stm32·单片机·嵌入式硬件
jianqiang.xue20 小时前
【CStackGUI 实战】画板 drawpad:鼠标拖拽作图、撤销 / 重做、导出 PNG
单片机·嵌入式·cstackgui·c语言gui·可视化拖拽
新晨单片机设计20 小时前
S022A-基于STM32单片机音乐盒(数码管显示)【Proteus仿真+Keil程序+原理图】
stm32·单片机·proteus·音乐盒
深圳老胡20 小时前
STM32 MCU 国产替代型号简介
笔记·stm32·单片机·代码规范