STM32 - GPIO 的位带操作

  我采用得是STM32F10RC  参考得是STM32普中科技的给出得例子:https://www.bilibili.com/video/av30149282/?p=45(这里给出网址)

https://blog.csdn.net/bulebin/article/details/73730141  这个博文还可以

ps:在15中 是个hi用sbit 进行位带

1、位带介绍

什么是位带呢? stm32 中没有sbit, 所以我们采用的是位带别名区

(1)

 

通过访问Bit band Alias 他 来控制 bit Band  ALias 的位

(2)位带区和位带别名区的转换

 

别名区地址=外设微带别名区的基地址+(位带区-位带区的起始地址)*32+n*4

n:表示的是是在第几位啊    其中每一位又膨胀成为i32位 4个字节  所以乘以4  

通过访问位带别名区 来访问别位带区

 

 

下面对上面这个两个公式进行统一“

 

 

位带操作一般都是对GPIO直接进行操作

 

3、位带部分的程序是怎么写的?

 

4、定义需要可以进行位带的GPIO口

一般位带的使用 我们都是对GPIO进行操作,所以我们还要将GPIO对应其来加入下面程序

 

 

大家可能跟我一样会对这个ODR和 IDR 有一定的考虑,为什么还会有输入呢?

https://zhidao.baidu.com/question/429972752.html(可以参考)

IDR这个寄存器的作用是为了实现读取端口的电位

 

5、实际应用

你们看,如果我想对使用哪个管脚的输出的位带 或者 读取电平的位带,我就可以直接对齐进行操作就ok了

 

PyCharm可以使用conda配置Python解释器。首先,在设置打开设置(快捷键为Ctrl + Alt + S),然后找到"Project | Project Interpreter"选项。点击"配置项目解释器"图标并选择添加。在添加Python解释器对话框的左侧窗格,选择"Conda Environment"。如果选择"新环境",则需要指定新的Conda环境的位置和Python版本,并指定Conda可执行文件的位置。如果选择"现有环境",则需要选择现有的解释器或指定Conda可执行文件的路径。完成以上步骤后,点击确定即可完成配置。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [如何在Pycharm里使用Conda虚拟环境](https://blog.csdn.net/qq_44733744/article/details/106745965)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"] - *2* *3* [Pycharm利用Anaconda进行环境配置](https://blog.csdn.net/weixin_44636374/article/details/123141645)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

没有水杯和雨伞的工科男

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

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

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

打赏作者

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

抵扣说明:

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

余额充值