众力资讯网

单片机必备的2个外围电路,你接了吗 玩单片机的新手别再踩坑了!90%的入门教程都

单片机必备的2个外围电路,你接了吗
玩单片机的新手别再踩坑了!90%的入门教程都不会明说的两个必装外围电路,少一个你写的代码跑半年都找不到bug根源。
我身边好多刚入门搞硬件的朋友都踩过这个坑。
焊完板子熬两个通宵写好代码,烧进去之后要么完全没反应,要么输出的逻辑全是乱的。
翻来覆去查引脚定义、查代码逻辑,查得眼睛都花了,最后才发现最基础的两个外围电路漏接了,纯纯白费功夫。
今天把这俩必装电路的核心知识点给大家掰碎了说,全是干货,新手存下来至少少走半年弯路。
第一个就是时钟电路。
结构特别简单,就1个晶振加2个电容,成本几块钱。
别小看这俩小元件,晶振的大小直接决定了单片机的整个运行节奏。
你写延时函数的时候,一模一样的代码,换个不同参数的晶振,最终跑出来的延时时长差得能离谱到姥姥家。
很多新手搞不懂的“时序”到底是什么?
说白了就是单片机里各个指令、各个信号排队执行的先后顺序,时钟信号就是给它们掐表的唯一时间基准。
给大家捋一遍最基础的时序单位,记下来以后看任何教程都不会懵:
单片机最小的时序单位,就是晶振本身的振荡周期。
振荡频率二分频之后形成状态周期。
1个机器周期包含6个状态周期,换算下来就是12个振荡周期。
普通指令的执行时间,也就1到4个机器周期。
第二个必装的是复位电路。
它分两种,上电复位和按键复位。
上电复位结构最简单,1个电阻加1个电容就能做出来。
要是想加手动重启功能,做按键复位,再多接一个几块钱的微动开关就行。
它的作用说白了就是给单片机“一键恢复出厂设置”。
刚通电的时候把所有乱七八糟的寄存器、存储单元都重置成厂商预设的初始值,不会出现程序跑飞的玄学状态。
这里有个很多教程都没标红的硬指标:
时钟电路正常工作之后,只要在单片机的复位(RST)引脚上,持续出现24个以上的时钟振荡脉冲高电平,单片机就能顺利完成初始化复位。
复位之后的效果也给大家说清楚:
P0口到P3口所有IO口直接输出高电平,全部变成准双向输入状态。
栈指针SP自动写入07H,程序计数器PC和其他所有特殊功能寄存器全清为0,相当于给你一块干干净净的空白板写代码。
最后给所有做单片机项目的朋友提个醒:
不管你手上的项目多简单、体积要求多紧凑,这两个电路最好都老老实实接上。
别为了省俩元件、省点布线空间跳步骤,到时候出了查都查不到的玄学bug,熬几个大夜都解决不了,哭都没地方哭。
玩单片机的老司机们,你们有没有过漏接这俩电路踩过的坑?评论区聊聊。