用M4 Mac Mini学习51开发板
看几乎所有的嵌入式开发教程,都在用Keil4或是Keil5学习51单片机,之前了解到了一个用另一种方式做51单片机的方法,这种方法和平台架构已经没关系了,网上有人尝试用过windows,我自己尝试过Intel Mac和M系列的Mac Mini,M系列的MacBook也一样。
开发板照片:
普中的开发板,也不算很贵,69+。
安装过程
首先,需要安装一下 Microsoft VS Code,这是万能编辑器+IDE,通过 VS Code的插件,可以用来开发C/C++/Java/Go/JS/Html等等几乎可以开发任何编程语言。下载网址:Microsoft VS Code
然后,需要安装一个VS Code插件,叫做 PlatformIO IDE,在VS Code插件那里安装就好,类似这样子(这里截图截成TRAE的了,其实是差不多的):
安装可能需要翻墙,这个可以自行解决一下。
安装好了以后,重启一下VS Code,左边插件那里,会多一个小蚂蚁头的标志,点开小蚂蚁头,
会提示你初始化,初始化一下就好了,然后点 Create New Project,会打开 PIO Home,就是 PlatformIO 的 主页,点 主页上的 New Project,
然后,在弹出来的页面上,name可以随便写,按你需求来写,我就写个c51,主要是 Board,我的开发板,是 STC89C52RC,的,所以我就输入这个就好了,可以看一下,
这个玩意可以开发 Arduino,或者是 STM32,ESP8266/ESP32等等开发板,我们这里只要51的就好。
完成以后,创建出来的工程大概是这样子的: 
编码区别
然后就可以在src目录,新建一个main.c,不过注意一下,这里 和别人用 keil的不一样,代码里要用 #include<8052.h> 而别人视频教程里,都是 #include<regx52.h> ,还有一点区别是 别人的管脚在代码里,比如你要操作P21 引脚,那么你要用 P2_1 这样子来写,别人可能是 P2^1。其他方面,暂时就没有了,起码我目前遇到的就是这么多。
编译&烧录
用这个PlatformIO IDE,编译和烧录也有区别,别人一般是用Keil上的Build按钮编译成hex文件,然后在用STC-ISP软件烧录,我们这里,在你打开c51这个工程的时候,左下角有个对勾,和向右的箭头,这个就是编译&烧录按钮。
可以试试看,编译应该是没问题的,点了对勾,会有Terminal的日志提示你,绿色并且显示 SUCCESS,
代表编译成功了,然后在你工程的 .pio/build/STC89C52RC 这个目录下,会有对应的 fireware.hex,这个就是我们最终要烧录到单片机的固件。
一般烧录,是按 那个右箭头,然后单片机要重新上电,才会开始烧录。我这里遇到了一个问题是,烧录按钮点了,然后单片机就没反应了,断电上电多少次都没有反应,烧录日志 提示卡在 Waiting for MCU, please cycle power: done 这行日志, 
然后没反应了,经过之前的搜索,才发现是需要改一个文件,甚至于偶尔翻B站有没有教程解决这个问题,还翻到我自己在23年1月的时候解决过这个问题的回复,
解决方法正如我截图中说的,要修改一下某个文件,路径是:/Users/{你的用户名}/.platformio/platforms/intel_mcs51/builder/main.py 记得把你的用户名替换上去,然后第155行,有个 -a的参数,在他前面加一行注释就可以。大概是这样子的:
贴过来一个烧录成功的日志:
demo程序
再贴过来我的第一个点灯程序吧,
1 | #include<8052.h> |