一、指北第一章:核心知识点图谱——构建我的51知识体系(硬件)
(本系列文章会在我后续学习过程中不断完善~)
引言
- 笔者身份:通信工程大一学生,通信领域萌新一枚,自身经验不足,不足以给出深刻建议,故称作指北
- 写作目的:希望记录自己的学习经历与成长,与更多的大佬交流,同时用直白易懂的语言,学生学习者的视角,给想要入门的同学一点点浅显建议~
1.初识硬件:最小系统与核心概念
1.1什么是单片机
单片机就是一台超微型、高度集成的“电脑”,被封装在一颗芯片里。
1.2单片机的最小系统
电源电路
作用:为单片机提供+5V的稳定工作电压
核心元件:
- 稳压芯片:将高于5V的电压降压稳压
- 输入和输出电容:用于滤波和去耦,消除噪声,保持电压稳定

复位电路
按动按钮将rst的引脚拉高,同时给电容充电,松开手后,电容通过电阻放电,产生下降脉冲,完成复位

时钟电路
单片机上电后,产生丰富的电噪声,通过XTAL2引脚输出,加到并联谐振回路上
符合晶振频率的信号被筛选出来,通过XTAL1送入内部放大器进行放大
放大后又由XTAL2引脚输出,不断筛选出更纯的正频信号

程序下载电路
stc单片机通过串口进行程序下载,可用软件stc-isp实现
stc-isp官网
注意:选好芯片型号;下载瞬间,需先断电,点击下载按钮,再上电
1.3通用输入输出口
STC89C52有4个8位的GPIO口:P0, P1, P2, P3。每个口有8个引脚(如P1.0 ~ P1.7)
- 输出(Output)模式
目的:用程序控制引脚输出高电平(1)或低电平(0)来驱动外部设备。
1.驱动LED:必须串联限流电阻
共阳极接法:LED正极接VCC,负极接IO口。IO=0时点亮
共阴极接法:LED负极接GND,正极接IO口。IO=1时点亮
2.驱动继电器/蜂鸣器:通常需要三极管进行电流放大,因为GPIO的直接驱动能力有限(通常<20mA)。 - 输入(Input)模式
目的:读取外部电路施加到引脚上的电平状态(1或0)。
1.读取按键:这是最经典的输入应用。
低电平有效:按键一端接地,另一端接IO口。IO口内部上拉,平时读为1;按键按下时,引脚被拉低到0。
2.数码管:
静态显示:每个数码管的段选线都单独占用一个GPIO口。亮度高,程序简单,但占用IO多。
动态显示:所有数码管的段选线并联在一起,由一组GPIO(如P0)控制;每个数码管的位选线由独立的GPIO控制。利用人眼视觉暂留效应,快速轮流点亮每个数码管。极大节省IO口,是必须掌握的技术。
2.理解时序:延时与中断
2.1延时
简单来说就是让单片机“什么都不做地”等待一段时间

2.1.1软件延时
可使用stc-isp软件的软件延时计时器进行如下配置

2.1.1硬件延时(定时器延时)
可使用stc-isp的定时器计算器进行如下配置

中断法与查询法将在《51单片机新手入门指北|知识梳理软件篇》中详细说明
2.2中断
对单片机来说,中断就是CPU暂停当前正在执行的程序,转去处理一个紧急事件,处理完再回来继续执行原程序的过程。
stc89c52的五个中断源及其中断号

下列置1表示中断允许
EA中断总开关
ES:串口中断允许
ET0/1:定时器0/1中断允许
EX0/1:外部中断0/1中断允许
~~
以上是笔者认为入门51单片机时需要了解的一些硬件相关内容,由于当时急于比赛,并没有很深入地进行学习,时间充裕的同学可以在b站上跟着江科大等博主系统学习:D
当然,本篇文章会随着笔者的学习不断完善与改进,感谢大家批评指正,代码相关请见《51单片机新手入门指北|知识梳理软件篇》

1441

被折叠的 条评论
为什么被折叠?



