第十一讲:BSP工程管理
BSP管理其实就是以前学stm32一样的单独为led写.h和.c,并且文件夹有很多种
使用ubuntu的vscode创建bsp文件
第一步:新建bsp文件夹,在bsp文件夹新建各个外设或者功能的文件夹(一定是在相应的文件夹中新键文件夹)
第二步:在新建的clk、delay、led新建.h和,c文件,并且书写相应的代码
第三步:移植imx6ul文件夹
第四步:创建obj文件,用来装.o文件
第五步:创建project文件,用来装main和汇编文件
问题:找不到头文件
当我们在vscode创建多个文件夹的时候,会出现找不到头文件的情况,其实就是类似于keil软件中,我们单独把.c和.h文件放在另外一个文件夹中,导致找不到,我们需要配置头文件路径,我这里以简单的例子为例
解决方法:配置头文件路径(类似于keil)
操作C_Cpp文件 添加头文件即可 Ctrl+shift+P,输入c/c++:edit json
编译方法:
重新写一个makefile才能编译代码--举例编译小型代码,与我们初学的时候不同,这里使用了文件夹,因此我直接gcc main1.c test1.c -o main无法使用
目标:完成多文件的编译
Makefile编写-通用makefile编写
之前的Makefile已经无法使用了,我们需要更改Makefile
写Makefile的时候我们可以查看我们写的是不是我们想要的,那么我们可以打印一下
不足点:
Makefile相关知识的学习
第十二讲:蜂鸣器实验
第一步:原理图分析
低电平响,高电平不响
第二步:在之前的工程下新建beep文件夹和.c和.h文件
void Beep_Init(void)
{
/* 1、初始化IO复用 */
IOMUXC_SetPinMux(IOMUXC_SNVS_SNVS_TAMPER1_GPIO5_IO01,0);
/* 2、、配置GPIO1_IO03的IO属性
*bit 16:0 HYS关闭
*bit [15:14]: 00 默认下拉
*bit [13]: 0 kepper功能
*bit [12]: 1 pull/keeper使能
*bit [11]: 0 关闭开路输出
*bit [7:6]: 10 速度100Mhz
*bit [5:3]: 110 R0/6驱动能力
*bit [0]: 0 低转换率
*/
IOMUXC_SetPinConfig(IOMUXC_SNVS_SNVS_TAMPER1_GPIO5_IO01,0X10B0);
/* 输出*/
GPIO5->GDIR |= 0x02;
/* 4、设置GPIO5_IO01输出低电平,打开fmq*/
GPIO5->DR &= ~(0x01>>1);
}
注意点:Makefile只需要加路径就可以了,对应前面的通用二字
蜂鸣器的实验就是检验一下前面的知识有没有学到