C51 单片机开发用 Keil 创建工程

码农UP2U

共 2575字,需浏览 6分钟

 · 2024-04-11

公众号文章同步阅读网址: www.netor0x86.com

上篇文章安装并注册了 Keil 这个集成开发环境,本篇文章在上篇文章的基础上来创建一个简单的工程。这里的工程是 Project,有的翻译是工程,有的翻译是项目,别太纠结!

如果没有看过上篇文章的话,那么可以进行查看:C51 单片机开发环境的安装


0x01:创建项目

首先 “以管理员身份运行” Keil 的开发环境,具体需不需要这样运行,我也不知道,反正我是每次都这么运行,为了给自己省一些不必要的麻烦吧!

打开以后,就开始创建工程,按照步骤操作就好。

在菜单栏选择 "Project" -> "New Vision Project",在打开的 "Create New Project" 窗口中选择要保存代码的文件夹。注意:文件夹需要是一个空的文件夹,因为一个工程中有多个文件,这个文件夹最好是专门为一个工程单独创建的。
选择好文件夹以后,在 "文件名" 的位置填入工程的名称,这里根据实际的项目填写即可。填好后点击 “确定” 按钮,这样会在当前的文件夹下生成一个 ".uvproj" 的文件,这个文件是项目管理文件,以后双击它就可以通过 Keil 打开这个工程。当然了,我们目前可以不用关心这个文件。
在填好填入工程名称并确定以后,会选择目标设备(这里显示的是 Select Device For Target 窗口),这里选择 Atmel 下的 AT89C52,选择 AT89C51 也可以,如下图。

6ffbb402c5e9b6f56ab0a2efa8c0fcc4.webp


选择以后点击 “确定” 按钮,就是上面图中的那个 “OK” 按钮。点击后会提示是否将启动代码加入到工程中,如下图:


74d6c0d8ba15a0506872420cb729775e.webp


这里点击 “是” 按钮。此时会在工程目录中添加一个 STARTUP.A51 的文件,这个是启动代码,用来在单片机启动时完成的一些初始化的工作,有了它应该就省去自己写很多代码了!到此,Keil 的工程目录结构如下:


09198d16da20f07656d13b76183fbdcd.webp

到此,用 Keil 就创建了一个空的工程,接下来在该工程中添加一个 C 程序代码。
0x02:添加 C 代码

上图中,在 Source Group 1 上点击右键,选择 "Add New Item to Group 'Source Group 1' ...",如下图:


22c9dd9c0dd679cb566a8ac885da4877.webp


会弹出一个添加源代码到工程的对话框,这里选择 .c 文件,并对源代码命名为 main,如下图:


52de50a567c822e29a671973835f662a.webp


填写后,点击 "确定" 按钮,让 main.c 加入到工程中。
然后,写一段简单的示例代码到 main.c 文件中,代码如下:
        
          
            #include "reg52.h"
          
        
        
          
            
sbit led1 = P3 ^ 7; sbit led2 = P3 ^ 6;
void main() { led1 = 0;     led2 = 0;
    while (1); }

代码的作用无所谓,就是一段示例代码。
0x03:工程编译

最后编译代码,并生成单片机的二进制文件,编译方法是按 F5 或通过工具来的按钮编译,工具栏按钮如下图:


2cdf715333f7dc48b8dd9870cc4dbb37.webp


编译完成后,到工程目录下查看是否有一个 .hex 的文件,如果有就说明生成了,如果没有,到 Keil 菜单的 "Project" -> "Options for Target" 中进行查看,选择 "Output" 选项卡,然后检查是否勾选 "Create Hex File" 选项,如下图:


9fabc4ddb1644f6b402b58d1b53037f1.webp


如果没有勾选,则将其勾选后,再次进行编译,则会生成 hex 文件。当然,在 "Build Output" 窗口中也可以看到是否创建 hex 文件的提示。


ca2765187501dafbc15b2e0465051c46.webp


在 "Build Output" 窗口的最后一行,可以看到有一个 "0 Error(s), 0 Warning(s)" 的提示,表示代码中没有错误,也没有警告,一般这是 C/C++ 程序员最爱看到的结果。一般情况下,如果有 Error 需要修改,有 Warning 可以暂时忽略不管。
这样,第一个通过 Keil 创建的 C51 的工程就完成了,生成的 hex 文件就是要烧录到单片机中的文件,后面的文章会进行介绍。




我是一个程序员,了解 C、PHP、Java、ASM、Python,有 信安、CISP 证书,写小白也能看得懂的文章,感谢关注!!!

我的网站:https://www.netor0x86.com


我的视频课程:

1. 入门级栈溢出分析

2. WEB端获取MAC地址真实项目案例

3. PHP扩展模块开发之DLL编写与调用

4. C语言零基础入门教程

5. PE 文件结构初识与二进制手写可执行程序



浏览 4
点赞
评论
收藏
分享

手机扫一扫分享

举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

举报