如何简洁高效地布局51单片机程序(多文件)

在我们建成一个51工程文件后,会向其中增加一些.c文件,同时还会有一些.h文件。如何避免文件多造成的混乱呢,同时还能有效地将一系列的.c文件成功地添加到工程文件,并且.h文件也能自动被识别出来呢。下面讲讲具体实现

1.先在一个空的文件夹下新建如下文件夹

2.然后打开app文件夹在该文件夹下新建一个src文件夹。

3.接着在bsp文件夹下创建两个新的文件夹,名称分别为inc和src

4.打开keil4,创建一个51的工程文件保存在和app,bsp在同一目录下

5.继续创建新文件,第一个文件保存在app\src\下,取名为main.c

再创建两个新文件,都保存在bsp\下,即与src,inc同一目录下,取名为bsp.h和bsp.c

6.如果需要继续创建新的.c文件,则放入src,例如创建一个bsp_led.c的文件

inc的作用是存放.h文件,需要的话创建一个bsp_led.h文件放入inc中。

7.完成了对文件以及文件夹的创建后,下面就要在keil4上面把他们逐个安置好,以实现相应功能

进入keil4的界面后,在界面的上半部分有一些该软件功能的图形化显示

我们需要找到这两个,先点击右边这个三种颜色的小正方体堆在一起的这个图案。

 

8.进入后会是一个这样的界面

有三栏,第一栏是工程名称,双击即可修改。第二栏是文件夹的名称,这里需要我们在此新建一个文件夹,通过该界面上X号左边白色还有点黄色的矩形框就可以实现,双击修改名称。第三栏就是要将我们刚才创建的.c文件,记住只要放.c文件,放入第三栏,可以按界面右下角的Add Files键打开文档,搜索刚才存好的文件,并且按照规则,即:main.c在app下,bsp.c和bsp_led.c放在bsp下,最后点击OK完成配置。

 

这时主界面左半边是这样

9.下面讲讲怎么在文件中搭框架

main.c自然是主函数,里面一定要有main函数,同时还要有while(1)这样的循环,还要有bsp_init()这样的初始化函数

在bsp.c里面,我们主要是写这个init函数

不知道有没有发现,他们的函数库都是调用的bsp.h,一些函数库,bsp.c中声明的函数以及后续要加载进来的.c文件的头文件,例如bsp_led.c的头文件bsp_led.h就写在bsp.h中,这样我们需要什么样的功能就把对应的.c文件的头文件加载到bsp.h文件中,就可以了,需要什么样的函数库,加载到bsp.h文件中也可以,从而文件功能清楚,层次感强

10.到了这里还并没有结束,如果这个时候我们在keil4上编译,并不会显示错误,而是会有一些警告,对于警告uncalled这样的警告我们可以暂时不理会,原因是如果写了一些函数而没有调用会有这样的警告。而除此之外的警告实际上就是错误。就在这个文件下编译会有非uncalled的警告,提示找不到bsp_led.h。如果把bsp_led.h和bsp_led.c放在和bsp.c,bsp.h同一目录下这个问题就能解决,但这显然不是我们想要的结果。

这时就需要点左边这个按钮

出来界面后点击界面上面的C51进入新的界面

我们只要将界面中的内容修改成这样就好,再次编译。没有uncalled之外的警告,文件布置工作全部完成。

 

 

 

 

  • 8
    点赞
  • 60
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值