嵌入式硬件 - 51单片机1

一.嵌入式

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

1. 以应用为中心

实现特定的任务设计:电子设计:手机,蓝牙耳机,

医疗设备:心率脉搏

汽车ABS,空调温控,智能手环,无人机

2. 计算机技术为基础

1. 计算机组成部分

运算器(数据运算)、控制器(指令控制)、存储器(内存外存)、输入 / 输出设备(IO)

运算器 + 控制器 = CPU(中央处理器)

**存储器:**RAM的大小和内存

输入 / 输出设备: 外设或IO,输入: 鼠标、键盘;**输出:**显示器、LED

2. 软件技术

编程语言,操作系统,数据结构,数据库

编程语言:C / C++

操作系统:Linux文件,负责管理文件、多任务、网络等资源

数据结构与数据库:处理复杂应用逻辑,如用户数据管理、通信协议

3. 硬件平台

STM32单片机:库开发(标准库,HAL库)

51单片机:硬件(PWM,中断,定时器),原理图,寄存器,外设操作(LED,按键)

ARM:设计处理器核心IP,芯片方案

三大系列:

CortexA:应用处理器,应用高端领域,用来运行Linux等复杂操作系统,处理UI,网络

等复杂任务。

CortexR:实时处理器,实时性与可靠性,用于汽车制动系统等要求响应及时的场景

CortexM:微控制器,是STM32,MCU单片机的核心,功耗低成本低

3. 软硬件可裁剪

硬件方面按需选择处理器架构与外设模块

软件方面可以剔除冗余部分,仅保留所需代码

4. 专用的计算机系统

  1. 通用型计算机:PC,手机,平板

  2. 专用型计算机:无人机,摄像机,仅实现某项功能的计算机

二、51单片机

1980年,由Intel公司MCS-51系列:8051型号单片机(工业控制领域),由MCU转型到CPU

Atmel(AT89C51)、Philip(P89V51系列单片机,增强型单片机 ISP在线编程)、STC 宏晶半导体(STC89C51 STC89C52 STC89C52RC)

三、相关概念

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(图形处理器),图形处理、图形渲染(GPU性能越好,图形显示的质量越好)

5. NPU

Neural Processing Unit(神经网络处理器),AI推理、硬件加速,神经网络处理(卷积运算)-> 华为Mate60 达芬奇NPU AI自动优化照片

6. FPU

Floating Point Unit(浮点数运算单元),完成浮点数的运算和处理(完全遵循IEEE 754),大部分集成在CPU内部

7. SOC

System On Chip(片上系统),集成度比较高,将多个芯片集成到一块芯片上(存储芯片、外设芯片)

四、ROM 和 ARM

1. 内存和外存

外存

主要存放程序、代码、指令,掉电数据不丢失,读写速度慢,价格便宜(移动盘 1T 300)

内存

主要存放程序运行过程中的临时变量、掉电数据丢失,读写速度快,价格贵内存条16G 300)

2. ROM 和 ROM

ROM:

Read-Only Memory,只读存储器,存放单片机程序,指令,掉电数据不丢失

RAM:

Random Access Memory,随机访问存储器,存放临时变量、临时数据,掉电数据丢失

五、单片机芯片内部结构

CPU、RAM、ROM、Timer、PWM、IO、中断、UART

三大总线

地址总线:用来寻找RAM中的地址,所能寻址的最大范围2^8,256byte,单向

数据总线:通过地址总线去获取数据,数据交互双向

控制总线:时序控制、IO控制、中断

六、原理图与部分概念

1. MCU单片机芯片

STC89C52RC、DIP40 封装:双列直插式,40个引脚,划分成4组(端口 寄存器)

2.网络编号

在实际电路中的一个编号,避免物理连线,相同网络的编号的引脚在实际电路中是彼此互通

3. LED模块

发光二极管:具有单向导通性,分为共阳极和共阴极二极管

4. 共阳极发光二极管的特性

将所有发光二极管的阳极接到电源正极(VCC),阴极接到单片机的引脚。

此时发光二级管阳极会输出高电平(VCC 5V),如果发光二级阴极输出一个低电平(0V), 阳极和阴极之间会形成一个正向的电压差,满足发光二极管的单向导通性,发光二级管被点亮

七、位运算:

1、|

将二进制中的对应位的bit进行比较,有1为1,全0为0

eg:指定位置1

将bit0和bit7置1:t |= (1 << 0) | (1 << 7);

2、 &

将二进制中的对应位的bit进行比较,有0为0,全1为1

eg:指定位清0

将bit 0 和 bit7 清0: t &= ~(1 << 0); t &= ~(1 << 7);

3、^

将对应位的bit进行比较,相同为0,相异为1

八、LED练习

main.c

led.c

delay.c

九、数码管练习

main.c

digiter.c

相关推荐
代码游侠5 小时前
学习笔记——设备树基础
linux·运维·开发语言·单片机·算法
CODECOLLECT9 小时前
京元 I62D Windows PDA 技术拆解:Windows 10 IoT 兼容 + 硬解码模块,如何降低工业软件迁移成本?
stm32·单片机·嵌入式硬件
BackCatK Chen9 小时前
STM32+FreeRTOS:嵌入式开发的黄金搭档,未来十年就靠它了!
stm32·单片机·嵌入式硬件·freertos·低功耗·rtdbs·工业控制
全栈游侠12 小时前
STM32F103XX 02-电源与备份寄存器
stm32·单片机·嵌入式硬件
Lsir10110_12 小时前
【Linux】中断 —— 操作系统的运行基石
linux·运维·嵌入式硬件
深圳市九鼎创展科技14 小时前
瑞芯微 RK3399 开发板 X3399 评测:高性能 ARM 平台的多面手
linux·arm开发·人工智能·单片机·嵌入式硬件·边缘计算
辰哥单片机设计14 小时前
STM32项目分享:车辆防盗报警系统
stm32·单片机·嵌入式硬件
小龙报16 小时前
【51单片机】从 0 到 1 玩转 51 蜂鸣器:分清有源无源,轻松驱动它奏响新年旋律
c语言·数据结构·c++·stm32·单片机·嵌入式硬件·51单片机
范纹杉想快点毕业16 小时前
嵌入式与单片机开发核心学习指南——从思维转变到第一性原理的深度实践
单片机·嵌入式硬件
Industio_触觉智能16 小时前
瑞芯微RK3566开发板规格书,详细参数配置,型号EVB3566-V1,基于RK3566核心板SOM3566邮票孔封装
嵌入式硬件·开发板·rk3568·rk3566·核心板·瑞芯微