目录
打开Keil251后,点击Project->New uVision Project编辑
切换到STC MCU Database,选择STC16f40K128芯片编辑
点击File Extensions, Books and Environment进行文件管理编辑
新建工程
打开Keil251后,点击Project->New uVision Project
![](https://i-blog.csdnimg.cn/blog_migrate/648af6bac5c2d5f0af853a65004872bb.png)
选择文件路径,并对Project命名,点击保存
![](https://i-blog.csdnimg.cn/blog_migrate/9b205ddf81fe56d7b53c81c9b1e69bef.png)
这里我推荐大家每新建一个工程,单独新建一个文件夹,因为新建工程的时候会在选择的文件路径下创建很多文件和文件夹,给每个工程一个单独的文件夹可以方便工程管理。
切换到STC MCU Database,选择STC16f40K128芯片
![](https://i-blog.csdnimg.cn/blog_migrate/c73b4040b7a2fd5ff4f8d3b26f43a56f.png)
点击OK,之后,一个完整的工程就创建好了。
.uvproj后缀的文件就是一个keil工程
工程管理并配置
打开工程文件夹,添加文件夹App和Main
因为本人的强迫症比较严重,之前用CCS写DSP工程的时候就有把main和其他模块的源程序及其头文件分开的习惯,后续开发时移植也非常方便,所以在写STC工程的时候也打算继续坚持这个习惯啦。
Main文件夹下存放工程的主函数main.c
App文件夹下存放模块程序及其头文件,比如数模转换ADC模块的源程序adc.c和头文件adc.h
附上一张本人CCS工程文件夹管理
点击File Extensions, Books and Environment进行文件管理
![](https://i-blog.csdnimg.cn/blog_migrate/ea8f81bd6a43de0861f5e5e04fea07aa.png)
将默认生成的Group重命名为Main,并添加一个Group命名为App
注:工程中的Group可以理解为一个虚拟的文件夹,方便进行工程管理,但物理文件系统不会随Keil中的Group管理而改变。
点击options for target这个选项
![](https://i-blog.csdnimg.cn/blog_migrate/511bc71a68eb445e9fe55329b22b2254.png)
在output下勾选create Hex file
在C251下添加文件路径include path
将工程文件夹下的App添加到包含路径中
编写一个简单的main函数
右键点击Main这个Group,点击Add New Items to Group 'Main',选择C File,命名main.c,此处一定要有.c后缀。并修改Location在工程下的Main文件夹中。
在main.c文件写入以下几行代码
#include <stdio.h>
int main()
{
while(1);
}
并进行编译
编译结果
0 errors,0 warning,表明平台搭建完毕。
2022-11-13 19:52:59更新
工程属性配置
后面在写代码的时候发现代码量过大的时候会出现一些意想不到错误,还需要对工程属性进行配置一下。
点击Options For Target,修改Memory Model为Large,Code Rom Size为Huge
2023-01-08 20-44-57更新
添加STC芯片包到keil
首先安装好keilc251以及stc-isp之后,按照如下的操作步骤添加stc芯片包。
参考资料
stc-isp下载及stc32/16芯片手册文档链接:STC: 32位 8051 单片机创新者, ISP/IAP 技术创新者,中华有为:除了胜利,我们已无路可走