OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 3283|回复: 4

问个问题,如何获得驱动一个器件的必要条件?

[复制链接]

1

主题

24

帖子

0

精华

初级会员

Rank: 2

积分
105
金钱
105
注册时间
2018-11-13
在线时间
25 小时
发表于 2020-10-8 14:48:15 | 显示全部楼层 |阅读模式
1金钱
     就是想知道,我要驱动一个LED,我是怎么知道以下步骤的

1, 使能IO口时钟。配置寄存器RCC_APB2ENR。
2, 初始化IO口模式。配置寄存器GPIOx_CRH/CRL
3,操作IO口,输出高低电平。配置寄存器GPIOX_ODR或者BSRR/BRR。


怎么知道这些信息,比如我下次要驱动一个别的东西,还是按这3个步骤开始写代码吗?还是说在那里有说明要怎么做?


最佳答案

查看完整内容[请看2#楼]

这可能是个人开发STM32的一个痛点了吧。 最原始通用的办法,是把数据手册里面相关的寄存器都仔细阅读一遍,具体到各个位,然后按需求配置,但是这个会遇到几个问题,首先是非母语环境在阅读起来会有不小的障碍,其次,即便是理解了英文,你可能也不知道他具体在指什么,最后一个更麻烦的问题是,一个外设可能涉及到其他的外设,简单的说,配置IO这种简单的操作,你还需要打开对应时钟,这部分如果你只配置GPIO相关寄存器,是无法 ...
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

6

主题

279

帖子

0

精华

高级会员

Rank: 4

积分
750
金钱
750
注册时间
2015-3-27
在线时间
98 小时
发表于 2020-10-8 14:48:16 | 显示全部楼层
本帖最后由 弦子的弦 于 2020-10-8 17:58 编辑

这可能是个人开发STM32的一个痛点了吧。
最原始通用的办法,是把数据手册里面相关的寄存器都仔细阅读一遍,具体到各个位,然后按需求配置,但是这个会遇到几个问题,首先是非母语环境在阅读起来会有不小的障碍,其次,即便是理解了英文,你可能也不知道他具体在指什么,最后一个更麻烦的问题是,一个外设可能涉及到其他的外设,简单的说,配置IO这种简单的操作,你还需要打开对应时钟,这部分如果你只配置GPIO相关寄存器,是无法正常驱动LED灯的,如果涉及到IO口的中断以及唤醒,那就范围就更广了。
所以我通常会抄例程,别人能运行的例程我研究一下,看看都配置了哪一些东西,这样是一种可行的办法,但是也有一个问题,这些例程有时候不太好找,好在STM32的生态相对来说已经非常的好了,特别是常见的STM32型号,类似正点原子开发板都有例程(demo)直接抄就好了。
官方其实也一直在处理这种问题,比如st公司会有一些例程给开发者选择,以及最近几年推出的HAL库,就是为了让各个型号的芯片外设初始更加统一。
这里就不得不提外设驱动配置工具:STM32CubeMx这个工具,让用户在图形化界面下初始化外设,我个人是非常推荐使用的。

回复

使用道具 举报

11

主题

84

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1455
金钱
1455
注册时间
2020-6-18
在线时间
225 小时
发表于 2020-10-8 14:55:43 | 显示全部楼层
我是需要什么就看什么的例程,然后改。
回复

使用道具 举报

52

主题

247

帖子

0

精华

高级会员

Rank: 4

积分
997
金钱
997
注册时间
2017-8-19
在线时间
160 小时
发表于 2020-10-8 16:32:55 | 显示全部楼层
看stm32的系统架构图就差不多了哈,然后慢慢看。其他的MCU就可能有点不一样,我认为是看系统架构图。学了第二遍发现这个东西真有用
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165508
金钱
165508
注册时间
2010-12-1
在线时间
2115 小时
发表于 2020-10-9 00:57:58 | 显示全部楼层
看参考手册,对应外设的说明
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-5-17 10:31

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表