MX6U-MINI官方 SDK 移植实验(LED)

4 篇文章 0 订阅
2 篇文章 0 订阅
本文介绍如何将特定SDK中的关键文件移植到Cortex-A架构的芯片上进行LED控制。主要涉及fsl_common.h、fsl_iomuxc.h和MCIMX6Y2.h三个头文件,用于寄存器定义。通过创建cc.h、start.S和main.c文件,实现启动环境初始化、IO复用配置和LED的GPIO初始化。编译过程包括编写Makefile和链接脚本,最后将编译结果下载到SD卡中。
摘要由CSDN通过智能技术生成

官方 SDK 移植实验(LED)

前言:我们就来讲解如何移植 SDK 包里面重要的文件,方便我们的开发。但不是所有的半导体厂商都会为 Cortex-A 架构的芯片编写裸机 SDK 包,极少,所以我们只是借助SDK里的三个重要文件来开发,不能完全依赖SDK开发。在 Cotex-A 芯片下基本都需要我们自行编写,比如.s 启动文件、寄存器定义等等。
我们重点是需要 SDK 包里面与寄存器定义相关的文件,一共需要如下三个文件:
fsl_common.h:SDK_2.2_MCIM6ULL\devices\MCIMX6Y2\drivers\fsl_common.h。
fsl_iomuxc.h: SDK_2.2_MCIM6ULL\devices\MCIMX6Y2\drivers\fsl_iomuxc.h。
MCIMX6YH2.h:SDK_2.2_MCIM6ULL\devices\MCIMX6Y2\MCIMX6YH2.h。

使用以上3个头文件,我们就不用写上面一章的main.h了,因为头文件已经定义好寄存器了。

1.使用 VSCode 新建工程,将 fsl_common.h、fsl_iomuxc.h 和 MCIMX6Y2.h 这三个文件拷贝到工程中,这三个文件直接编译的话肯定会出错的!需要对其做删减。

2. 创建 cc.h 文件,cc.h 里面存放一些 SDK 库文件需要使用到的数据类型。

3.新建 start.S 和 main.c 这两个文件,start.S 文件的内容和上一章一样,也就是C语言的环境初始化,直接复制过来就可以。

4.然后编写main.c,main.c的包含fsl_common.h、fsl_iomuxc.h、MCIMX6YH2.h这三个头文件,也就是SDK那里拿出来的三个头文件,然后编写代码: 使能 I.MX6U 所有外设时钟、初始化 LED 对应的 GPIO。

5.在main.c中我们新使用了IOMUXC_SetPinMux 是 用 来 设 置 IO 复 用 功 能和 IOMUXC_SetPinConfig设置的是 IO 的上下拉、速度等。用来代替上一章中的IOMUX_SW_MUX->GPIO1_IO03 = 0X5;和IOMUX_SW_PAD->GPIO1_IO03 = 0X10B0;这样方便。

6.编译:编写 Makefile 和链接脚本。

7.使用 Make 命令编译代码,编译成功以后使用软件 imxdownload 将编译完成的 ledc.bin 文件下载到 SD 卡中。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值