前言
前几天,高中同学找我帮他做个小东西,用 51 单片机。一时间勾起了我对 51 的回忆。
初恋
我相信大部分人对单片机的初恋是 STC,14 年我在某宝上花了 39 块钱买了我人生中的第一块开发板。
从此开启了我的嵌入式之旅。
回顾
国产
当年并不知道 STC89C52 是一款国产芯片,现在才知道宏晶科技这家公 司,官 网:https://www.stcmcudata.com/。
下载
当年也不知道程序是怎么烧到板子里的,反正就是用 STC-ISP 这款软件,咚的一声就把程序下载到芯片中了,看到跑马灯立刻闪烁起来,心中莫名的激动。
现在才知道 ISP 下载的原理:STC 系列单片机在上电时会执行在 ISP-FLASH 的 ISP 程序,只要在串口上收到连续的 0x7F,便会进入 ISP 模式。所以 STC 单片机下载程序时,需要先在上位机上点击下载,然后给单片机通电。另外 STC 单片机需要使用宏晶专用的单片机下载程序 STC-ISP 下载,此软件需要以管理员身份运行。
代码
当年给 51 写代码,感觉挺难的,需要花上半天时间小心翼翼地才能写出一份程序,现在把之前的代码翻出来,这也太简单了吧,和 STM32 比起来,不需要倍频,不需要配置时钟总线,不需要配置 GPIO 口模式…… 几行代码,一个完整的功能就实现了,NB。
#include <reg52.h>
sbit IN=P3^0;
sbit OUT=P1^0;
void main (void)
{
while (1)
{
if(IN==0)
OUT=0;
else
OUT=1;
}
}
- 51 单片机引脚高电平为 5V。
- 不需要配置输入输出模式,直接对引脚进行输出控制或者输入读取。
- 使用串口时,需要根据自身使用的晶振频率计算波特率。
感谢
通过 51 单片机,我迈入了嵌入式的大门,为之后的学习、工作打下了一定的基础,非常庆幸自己在大学开始就结实了 51。奋斗吧,跑马灯!