最近捡起闲置已久的单片机学习板开始捣鼓,首先是配置开发环境,好久没操作了,配了老半天终于折腾好了,这里把我的历程分享一下,希望对大家有帮助。
首先,如果电脑有杀毒软件或防火墙之类的,请关闭,免得影响后面的破解过程
这个压缩包里包括有2032破解机、keil 5以及stc-isp
链接:https://pan.baidu.com/s/1nBFFRY61dX9bX6KQqf0rlA
提取码:2v6y
在这个目录下双击MDK518.exe
点击Next
“I agree”
选择安装路径,我这里安装在了D盘,默认的应该是C盘
随便填
稍微等待一会后就安装完了,下面那个选项是我之前安装过的才有的,正常第一次安装应该是没有的,把两个选项全去掉
会弹出个这玩意,这个好像是安一些ARM芯片驱动的,51单片机的话貌似是不用这一步的。本来他是可以在线安装的,但是由于一些众所周知的原因,国内是下载不了的,我们这里选择离线包,先将弹出的窗口一律选否,然后如图所示,点击左上角File下的Import
选择下载资源中pack下的两个包,点击打开
可以看到这个进度条在动,由于选择了两个包,因此将会有两次进度条,第二次相对而言等的将会久一些。
等到这里显示complete就可以右上角退出了
回到桌面,可以看到这里有个keil的快捷方式
右键管理员运行,这里没有的话可以到文件所在位置找到源文件管理员运行,这里必须要管理员运行否则后面破解会有问题
进入License Management
打开后是这个样子,不过第一次安的话应该是没有红圈那个东西的,我这里是卸载了演示一下的
在资源文件夹里找到注册机,右键管理员打开,这个注册机不知道是谁设计的,带有非常魔性的BGM
然后按照图示操作
这样就算OK了,那个日期是指你的使用截止日期,可能很多人翻以前别人发的安装教程一步步流程下来发现这里是红的,是因为以前的老注册机只到2020年,然而我写这篇博客的时候已经是2021年了,于是就换了一个新的注册机。可以预见在2032年的时候将会出更新的注册机(如果那时候keil还有人用的话)
回到这个文件夹,双击c51v959.exe
一路NEXT
依旧是管理员身份运行keil后进入license management后利用注册机破解,不同的是这次的Target选择C51(默认应该就是他),最后应该是这个样子的,应该就没问题了
接下来用一个程序来测试一下配置成功没有,同时也是熟悉一下操作,选用的例程是点亮第一个LED灯,这个应该算是嵌入式开发界的“Hello world”了吧。我这里选用的芯片是STC89C52,别的芯片需要作出相应的改变。
如图,在上方Project下选择New ****** Project…
选择保存路径,我个人的习惯是有这么一个文件夹保存各种各样的代码项目,这里我新建了一个C51文件夹
在这个文件夹下面再新建一个文件夹,不然以后很容易混淆,我这里取名为test2,而后进入test2后输入项目名称,我这里取名为test,保存类型用默认的就行了,然后点击保存
然后弹出一个界面,这个是选择芯片
由于我这里选用的51单片机,在下拉菜单中选择这一个
找到Microchip选项
由于我的芯片是STC89C52,我这里选择AT89C52。顺便一提,我以前用的是老版的keil,那个时候这个要在Atmel下找,但是后来这个公司被收购了,因此现在变到这里来了。
点击否
这个样子项目就建好了
然后点击Target 1左边的加号,展开后右键Source Group 1后选择Add New Item*******,
我们这里使用C语言编程,选择.c
在Name栏里命名文件为main
这样就OK了
然后点击这个选项
在Output选项卡中勾选Create HEX File的选项,然后点击OK退出
然后在代码框内键入一段代码
#include
sbit LED = P2 ^ 0;
void main()
{
while (1)
{
LED = 0;
}
}
点击Build或是按F7,可以看到下方显示0 error 0 warning
在之前的那个资源文件夹中的STC-ISP文件夹下双击打开stc-isp-15xx-v6.88.exe
可以勾选这个选项让以后不弹这个弹窗
点击Keil仿真设置选项卡,选择这个添加****
添加你Keil的安装目录,比如我这里是这个样子,选中后点击确定退出,会提示你添加成功之类的话语
在下拉菜单中找到STC89C52
点击打开程序文件,定位到刚刚建立的那个test2文件夹
在Objects文件夹下选择test.hex,点击打开
在学习板成功连接到电脑上后,点击“下载/编程”
然后按学习板的开关就可以观察到LED灯被点亮了
如果上面那个代码是你自己用手一个一个敲上去的,你就会很明显地感觉到——Keil简直就不是一个合格的现代IDE!甚至连最基本的括号匹配补全都没有!在日后的使用过程中,你还将发现它对中文的支持也一塌糊涂,以及各种毛病;通过资料查询,Keil 5居然是13年推出的软件!不想过多吐槽了。由此可以猜想单片机界其他的IDE是什么样子的了。
好在VSCode中有比较完备的插件供我们使用,为了让我能多活几年,这里选用VSCode作为我们代码的编辑器。当然大家也可以找找别的方法替代,我这里的是我自己使用的方法,不一定是最好的。
(这里默认认为大家都安装好了——Visual Studio Code,配置好了C/C++环境以及汉化环境,如果没有安装好的同学可以参考别的博主的相关博文,此处不再赘述)
打开VSC界面,进入扩展页面
搜索keil,选择第一个,点击右下角安装(我这里已经安装好了所以没有这个按钮)
安装完后右键选择扩展设置
找到并填写keil(UV4.exe)的所在路径,两个都填上
接着在设置框中输入搜索encoding,勾选这个框
进入资源管理器,点这个
点这个东西
找到并选中刚才创建的*.uvproj项目文件并Open
打开成功后是这个样子
语法高亮、自动补全啥的都有了,比较爽,不过有个问题就是这里P2给波浪线了,看着很不舒服,这个主要是C语言全局变量初始化规范引起的问题,我找了好久好久都没找到好的解决方案,最后如下解决的:
在扩展页面,右键C/C++插件,选择扩展设置,找到如图所示条目,在下拉菜单中选择Disabled,这样直接关闭了错误提示。。。。一劳永逸,解决提出问题的人(。当然希望有人能告诉我更好的方法!
注意这种方式实现的VSCODE仅仅只是一个编辑器,编译与调试还要在keil中进行。这里示范一下,比如把这个LED改成P0
关掉VSCode后回到keil,我们可以发现代码改过来了,我们按F7
build
继续类比之前的操作,可以看到现在灯改变了
很容易可以发现一些问题,比如说:每次都需要打开keil、打开VSCode以及打开STC-ISP,是不是显得很繁?
我们可以使用bat脚本来一键打开这三个软件
首先我们找到VSCode的可执行文件的绝对路径,找不到的同学可以右键VSC的快捷方式选择打开文件所在位置,进去后新建一个WorkSpace
文件夹,然后新建一个文本文档,命名为Code.bat
,右键选中编辑,在里面键入以下代码后保存退出:
@echo off
start Code.exe --user-data-dir "WorkSpace"
exit
然后我们在喜欢的地方新建一个文本文档,命名为嵌入式开发或者其他你喜欢的名字
键入以下代码,其中你应该改为你电脑中三者的可执行文件的绝对路径,当然VSCode对应的Code.exe改为Code.bat,如果你的路径中存在空格,请用双引号将整个路径引起来,然后Ctrl Shift S
另存为,这里我们将文件类型改为任意*.*
,编码格式改为ANSI,防止中文乱码(最好是整个路径干脆不要存在中文),选择替换原有的嵌入式开发.bat
@echo off
Start D:\Keil\UV4\UV4.exe
Start D:\Keil\stc-isp-15xx-v6.88.exe
cd /d "C:\Users\JMC\AppData\Local\Programs\Microsoft VS Code"
call Code.bat
保存退出关闭,更改后缀为.bat
然后我们直接双击这个bat脚本,可以看到直接打开了三个软件。
打开Keil,如图所示点击这个
按这个按钮,新建一个选项,命名为VS Code或者其他你喜欢的名字
在Command
后填入VSCode可执行文件的绝对路径,在Arguments
后填入参数#E
,按OK
退出
可以看到Tools下多了一个VS Code
打开的很顺利
卸载就比较简单了,找到你的安装路径,双击Uninstall.exe
这里由于我们安装了两个,那么就选中其中一个,点击Remove
选择是
很快就卸载成功了
记得把另一个也卸了
最后还要点击一个是
现在就彻底删完了。
教程基本就到这个地方了,助大家学习顺利!如有纰漏,敬请指正。欢迎在评论区留言~