嵌入式学习day40-硬件(1)

嵌入式:

以应用为中心:消费电子(手机、蓝牙耳机、智能音响)、医疗电子(心率脉搏、呼吸机)、无人机(大疆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)

段选

静态显示

动态显示

相关推荐
心祭丫丫1 小时前
【每天一个 Python 小案例17】Python 实现通讯录
开发语言·人工智能·笔记·python·学习
Nerd(BUG版)4 小时前
Flutter学习day5--事件手势与命中测试
学习·flutter
Nerd(BUG版)5 小时前
KMP学习day4--Kotlin空安全与泛型
学习·安全·kotlin
東隅已逝,桑榆非晚6 小时前
算法6. 双指针法-查找总价格为目标的两个商品
c++·学习·算法
wdyan2977 小时前
带着小白学习-微服务-5 实战:配置中心-数据库连接
数据库·学习·微服务
叼烟扛炮7 小时前
Linux 学习笔记(五十):网络层——IP 协议、子网划分与 NAT 魔法
linux·笔记·学习
叼烟扛炮7 小时前
Linux 学习笔记(六十):单线程的逆袭——epoll 高并发服务器实战
linux·服务器·网络·笔记·学习·算法
Rabitebla9 小时前
【Linux操作系统】进程篇(十一):进程程序替换——从底层原理到 exec 函数族
linux·服务器·c++·笔记·学习·算法
叼烟扛炮9 小时前
[LangChain] 学习笔记(03):打破失忆症——对话机制与上下文管理
java·前端·javascript·笔记·学习·langchain
旖旎夜光10 小时前
【C++ 基础入门】类和对象(下):初始化列表、static 成员、友元与内部类
c++·笔记·学习