STM32 驱动开发模式 终极总结:

1、C 语言编写 LED 灯驱动的时候,每个寄存器的地址我们都需要写宏定义

使用起来非常的不方便。我们在学习 STM32 的时候,可以使用“ GPIOB->ODR ”这种方式来给
GPIOB 的寄存器 ODR 赋值,因为在 STM32 中同属于一个 外设的所有寄存器地址基本是相邻的
(有些会有保留寄存器)。 因此我们可以借助 C 语言里面的结构体成员地址递增的特点来将某个
外设的所有寄存器写入到一个结构体里面,然后定义一个结构体指针指向这个外设的寄存器基
地址,这样我们就可以通过这个 结构体指针 来访问 这个外设的所有寄存器。
2、NXP 提供了 一个类似 STM32 的 STD库 或者 HAL 库 
这个 SDK 包提供了 Windows 和 Linux 两个版本 
再者,不是所有的半导体厂商都 会为 Cortex-A 架构的芯片编写裸机 SDK 包,我使用过那么多的 Cotex-A 系列芯片,也就发现 了 NXP 给 I.MX6ULL 编写了裸机 SDK 包
使用 Cortex-A 内核芯片的时候不要想着有类似 STM32 库一样的 东西 ,I.MX6ULL 是一个特例,基本 所有的 Cortex-A 内核的芯片都不会提供裸机 SDK 包 。因 此在使用 STM32 的时候那些用起来很顺手的库文件,在 Cotex-A 芯片下基本都需要我们自行 编写,比如.s 启动文件、寄存器定义等等。
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 。
MCIMX6Y2.h:  位置为 SDK_2.2_MCIM6ULL\devices\MCIMX6Y2\MCIMX6YH2.h 。
整个 SDK 包  我们就需要上面这 三个文件 ,  把这 三个文件 准备好,我们 后面移植要用
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

梦幽风

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值