51单片机开发——运行Demo

1 背景

2026年2月26日公司开会时候,另一个部门说要招STM32开发工程师。长期在公司发展的话,公司核心业务是必须要了解和学习的。于是,打算自学一下单片机开发。

偶然刷到江协科技STM32的视频,看得很懵。也注意到UP主的51单片机视频,听了一下都能理解,即是决定先学51单片机。

2 开始学习

学过点阵和定时器后,决定买开发板上手。开发板带的点阵只有8x8的,只能做贪吃蛇。接两个点阵的话,对我来说难度有点大(压根不懂硬件)。注意到普中A4套餐带屏幕,于是决定买A4然后开发俄罗斯方块的小游戏练手。规划是先做单机版的,然后用串口通信实现对战,最后做人机对战的。

3月6日23点多才定下来买A4,原先想着买A2单独买屏幕,毕竟江协的课程用的就是A2,后来才明白A2接屏幕得另外连硬件。幸亏没买A2,不然难度就太大了。

3月9日到货,晚上就开始试用。

3 运行Demo

遇到了好几个障碍,记录一下。

3.1 破解Keil5 C51

Win11系统会自动删除keygen文件,问元宝解决了。破解步骤,重新看的视频。

3.2 下载程序

3.2.1 STC ISP(V6.96)

运行教程自带的STC ISP(V6.86),下载程序没反应,还以为CH240驱动的问题(因为我没安装驱动,但是串口已经能看到了,Win11自带的)。升级了STC ISP到6.96,又问元宝又研究,才知道是A4的芯片和江协教程的A2不一样,普中A4的芯片得选"STC89C516RD+/LE516RD+"。也是这个时候才明白为啥我的A4跟教程中的A2不一样了,A4是开发板的版本,不是套餐的名称。也明白为啥A2不带屏幕元器件了,因为A2不支持呀。

3.2.2 STC ISP(V6.86)

后来看了普中的教程,发现STC ISP(V6.86)也可以,如下图:

不过6.86版本打开很慢。

3.2.3 PZ-ISP

普中自带的推荐软件PZ-ISP,找到不CH340串口,原因未知。

3.3 点亮LED

然后就顺利了,江协的2-1示例也运行起来了,只是LED灯的点亮也让我疑惑了很久。当时以为开发板不对,后来才想起来位0是点亮,位1是熄灭。

3.4 点亮LED点阵

点亮点阵的时候也费了点劲,看教程问元宝,A2板跟着江协教程就行,A4得换一下J24帽。

3.5 点亮屏幕

屏幕一直白屏,后来发现是排针没插到底。

4 新的认识

这段时间,我才真正明白了计算机图形用在哪里了。

读研时候自觉的计算机图形学,讲直线生成算法之类,当时学MFC做的练习。想着底层SDK都提供了画直线画圆方法,为啥要自己画。能想到的,也就是开发游戏引擎时候没法调用SDK画线,需要直接在内存里绘制。

现在才明白,单片机里没有底层SDK,就需要自己画。也明白了为啥有些岗位要熟悉Linux源码,因为单片机开发会用。

相关推荐
2501_914245932 小时前
C语言与硬件交互:从GPIO到中断的嵌入式编程实践
c语言·单片机·交互
炸膛坦客3 小时前
单片机/C/C++八股:(二十四)编译文件( .bin 和 .hex ,包括 .elf 和 .axf )
c语言·c++·单片机
Yunhoa3 小时前
51单片机(DS18B20 数字温度传感器)
单片机·嵌入式硬件·51单片机
zlinear数据采集卡5 小时前
2mV纹波的代价:硬核拆解ZLinear模拟前端放大器与正负可调电源设计
arm开发·单片机·嵌入式硬件·fpga开发·架构·开源
不上岸的旱鸭子7 小时前
PCB设计
单片机·pcb工艺
吠品7 小时前
多语言支持,从后台到前端我都趟过哪些坑
stm32·单片机·嵌入式硬件
xuxie997 小时前
start2 PWM+ADC掉电检测
单片机·嵌入式硬件
炸膛坦客7 小时前
单片机/C/C++八股:(二十三)#define 和 typedef 的区别
c语言·c++·单片机
zlinear数据采集卡8 小时前
硅片里的“自动纠错“:硬核拆解LHAMP188自动归零技术原理与三种封装的PCB布局实战
arm开发·单片机·嵌入式硬件·fpga开发·开源
2401_888859718 小时前
STM32H7外部flash(W25Q128)+SPI+DMA读写
stm32·单片机·嵌入式硬件