在Visual Studio 2019中配置出C51单片机开发环境

把Visual Studio 2019中配置C51单片机开发环境


本文参考了VS2008调用Keil实现单片机c语言编程.因其太过古老且啰嗦,所以我重新写了以下教程,成功后的效果大致如下:
在这里插入图片描述
前提:你的电脑里面要先安装keil C51 Visual Studio 2019


配置

  1. 在你电脑环境变量的Path变量中添加keil软件中BIN文件夹的路径.
    在这里插入图片描述
    新建一个变量名为C51INC的变量,值为INC文件夹的路径
    在这里插入图片描述
    再新建一个变量名为C51LIB的变量,值为LIB文件夹的路径
    在这里插入图片描述
  2. 按如图所示,依次点击以下按钮,添加第一个工具.
    在这里插入图片描述
  3. 属性设置如下,title将会是后面工具按钮现实的文字,可以取你想取得名字,Command为keil里面C51.exe可执行文件的路径,参数为$(ItemPath),初始目录不设置,在Use Output window前打上对勾,另外两个不选择.然后点击apply.
    在这里插入图片描述
  4. 接着添加第二个工具,titleLX51,Command为keil里面LX51.exe可执行文件的路径,参数为$(ItemDir)$(ItemFileName).obj TO $(ItemDir)$(ItemFileName).abs,其余设置和上面一样的
    在这里插入图片描述
  5. 再添加第三个工具,titleHex51,Command为keil里面Ohx51.exe可执行文件的路径,参数为$(ItemDir)$(ItemFileName).abs,其余设置和上面一样的.这一步完成后点击OK
    在这里插入图片描述
  6. 依次点击以下按钮,新建一个ToolBar,可以取名为MCU51,然后点击close
    在这里插入图片描述
  7. 在如图所示的地方出现一个按钮:
    在这里插入图片描述
    点击它,添加按钮
    在这里插入图片描述
  8. 在如图所示的界面点击Add Command
    在这里插入图片描述
    你在前面添加的3个工具(3,4,5步)会在这里表示为External Command x的形式,把这几个外部命令依次添加进来.在我的电脑里,他们表示为External Command 6,External Command 7External Command 8,你的电脑里也许和我这里一样.如果不一样,你可以从最后面一个External Command往前尝试,添加错了可以很容易的移除.
  9. 成功后的界面如图所示:(先忽略最左边的cpt51)
    在这里插入图片描述
    使用时先点击C51,成功后点击LX51,再成功后点击Hex51,即可生成hex文件,

每一次使用都要点击三个按钮才能生成hex文件,太麻烦了!怎样才能一键生成呢?
10. 我们建立一个脚本文件,取名Cpt51.bat,内容如下:(切记第一行里文件夹路径要改成你自己keil的BIN文件夹路径)

SET KEILPATH=C:\Keil_v5\C51\BIN
%KEILPATH%\C51.exe %~1.C
%KEILPATH%\lx51.EXE %~1.obj to %~1.abs
%KEILPATH%\OHX51.EXE %~1.abs
@echo off
DEL %~1.obj
DEL %~1.abs
DEL %~1.map
::DEL %~1.IST,I don't know why the IST file couldn't be found and deleted

你可以将它保存在keil的安装路径下.
11. 按照上面的教程再添加一个外部工具,标题可以设置为Cpt51,设置如下,Command为那个脚本文件的路径,参数为$(ItemDir)$(ItemFileName)
在这里插入图片描述
12. 在如同上面7,8所示,把它对应的外部命令添加进去.至此,大功告成.上面会多一个Cpt51的按钮,可以一键生成hex文件


创建工程

创建新工程时选择创建C++的空的解决方案(blank solution):
在这里插入图片描述
工程创建好后,可以添加一个或多个solution folder,用于组织你自己写的头文件和源文件(实测最好只写一个源文件)
在这里插入图片描述
每一次更改后记得保存一下,但不要只是ctrl+s,而是要ctrl+shift+s,以保存所有文件.否则编译的还是修改前的文件.
另一个方法就是直接创建一个空的c文件用vs打开再编辑.


一些问题

  1. reg52.h和intrins.h文件不能通过右键直接打开,故代码提示和自动补全功能稍弱,但还是比keil好多了.
  2. 不能通过点击错误直接定位到错误的那一行.
发布了10 篇原创文章 · 获赞 8 · 访问量 621

猜你喜欢

转载自blog.csdn.net/zhaojun666/article/details/105078616