最近 DIY 之心又又又又复活了,翻出来吃灰多年的 51 开发板,重新学习一下 51。现在主力系统已经换成了 macOS,在折腾环境搭建的过程中,踩了一丢丢坑,特此记录一下。
环境搭建
在 macOS 下没有 Keil C51 (有也不想用ಥ_ಥ),之前都是用的 sdcc 编译,stcflash 烧录。这会想起来之前在 VSCode 尝试过的 PlatformIO IDE 插件,搜了一下,果然支持,开搞。
安装 PlatformIO IDE
很简单,在 VSCode 的应用市场里,搜索 PlatformIO IDE 安装即可。
安装 MCS-51 (8051) 支持
默认情况下,PlatformIO IDE 没有安装 8051 的支持库,导致我们创建工程的时候,无法选择 8051 平台,所以先安装一下:

我使用的 宏晶 STC89C52RC 正在支持板子列表中~

Hello, LED
新建工程:

新建文件 led.c,写入如下内容:
|
|
PlatformIO IDE 使用的编译工具是 sdcc,所以头文件及 GPIO 口的表示方式与 keil 稍有不同,见下表:
| SSDC | keil | |
|---|---|---|
| 头文件 | 8051.h/8052.h | reg51.h/reg52.h |
| IO口 | P1_0 | P1^0 |
| IO口定义 | #define LED P1_0 | sbit LED = P1^0 |
| 中断函数 | void INT0_ISR() __interrupt 0 | void INT0_ISR() interrupt 0 |

编译烧录之后,顺利点亮 LED ~
