基于51单片机的心形LED流水帐


520 没有 npy,就自己弄板子玩,悲。

好久没有玩玩硬件相关的了,就想着从简单的开始入门画板子。 照着立创官方的基于51单片机的心形流水灯设计画的板子, 然后用 PlatformIO 上的 51 单片机样例改的代码。

1. 画板子

使用 STC89C52RC 作为 MCU,Type-C 口供电(仅供电),30 个 LED,用排针引出串口烧录。 一些小总结:

  • 直接使用 5V 驱动。
  • 晶振频率 11.0592 MHz。
  • 30 个 IO 口(P0.0–7、P1.0–7、P2.0–7、P3.2–7)对应 30 个 LED,使用低电平点亮。
  • P0.0–P0.7 作为 IO 口时需要外接 10K 的上拉电阻。
  • 元件都是直插的,方便焊接。
  • 外围电路很简单,基本只有晶振和复位。

2. 代码

使用 PlatformIO 作为 IDE,开发板选择 Generic-8051,开一个空项目。 然后再去 PIO Home 导入样例,选 anymcu-blink。 platformio.ini 修改为:

[env:STC89C52RC]
platform = intel_mcs51
board = STC89C52RC

具体代码在私有仓库里,单纯做个记录,就不放出来丢人了hh

3. 烧录

PIO 在烧录时使用 stcgal,随便找一个 USB 转串口的线即可。

注意烧录前先断开串口的 VCC,只接 RX、TX、GND。 等开始烧录,显示 “Cycling power: done” 时再接上 VCC。 或者,也可以一直插着 VCC,然后在烧录时重新插拔一次。


Authorthebesttv
Created2023-05-20 21:54
Modified2023-05-20 22:36
Generated2024-06-11 02:39
VersionEmacs 29.3 (Org mode 9.6.15)
Rawheart-shaped-led-51.org