问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501
你好,欢迎来到懂视!登录注册
当前位置: 首页 - 正文

STM32中操作寄存器GPIOB_CRL &= ~( 0x0F<< (4*0))与GPIOB_CRL &=~(0x0F)之间有什么区别吗?

发布网友 发布时间:2022-04-26 19:03

我来回答

4个回答

热心网友 时间:2023-10-22 14:23

没有区别,在这个代码中用到4*0的作用是因为是用的是作用于PB0,而4是对应GPIO设置的最小位数,将4*0中的0改为1后就可以对PB1进行操作,这种写法是为了后续操作的快捷。所以对于只用到PB0的程序~(0x0F<<(4*0))和~0x0F是没有区别的,而若是使程序以后的修改更加的便利,还是推荐书上的那种写法,希望采纳。

热心网友 时间:2023-10-22 14:23

#include "stm32f10x.h"
#include "GPIO_Config.h"
/*********************************************************************************/
/***GPIO_Config***/
void GPIO_Config(void)
{
RCC -> APB2ENR |= 1<<0; //开启AFIO IO口辅助功能时钟使能

// RCC -> APB2ENR |= 0x1c; //开启GPIO——A,B ,C
RCC -> APB2ENR |= 0x7c; //开启GPIO——A,B ,C,D,E 103VET6

// AFIO -> MAPR &= ~(0x0f<<24);AFIO -> MAPR |= 2<<24; //配置前先清除;关闭JTAG-DP +SW-DP功能

RCC -> APB2RSTR |= 0x7c;RCC -> APB2RSTR &= ~0x7c; //复位GPIO——A-B-C-D-E,并清除复位

// GPIOA -> CRL = 0x33333333;GPIOA -> CRH = 0x33333333; //推挽 输出 50MHZ
// GPIOB -> CRL = 0x33333333;GPIOB -> CRH = 0x33333333;
// GPIOC -> CRL = 0x33333333;GPIOC -> CRH = 0x33333333;
// GPIOD -> CRL = 0x33333333;GPIOD -> CRH = 0x33333333;
// GPIOE -> CRL = 0x33333333;GPIOE -> CRH = 0x33333333;
}
/*********************************************************************************/
/***GPIO_Port_Enable***/
void GPIO_Port_Mode(GPIO_TypeDef *GPIO_Numtemp,unsigned char GPIO_PortNum,unsigned char GPIO_PortMode)
{
GPIO_PortMode &= 0x0f;GPIO_PortNum &= 0x0f;
if(GPIO_PortNum < 8)
{
GPIO_PortNum *= 4;
GPIO_Numtemp -> CRL &= ~(0x0f <<GPIO_PortNum); //配置前先清除
GPIO_Numtemp -> CRL |= GPIO_PortMode <<GPIO_PortNum; //重新配置 GPIO XX 端口 功能
}
else
{
GPIO_PortNum -= 8;
GPIO_PortNum *= 4;
GPIO_Numtemp -> CRH &= ~(0x0f <<GPIO_PortNum);
GPIO_Numtemp -> CRH |= GPIO_PortMode <<GPIO_PortNum;
}

}
/**********************************************************************************/

热心网友 时间:2023-10-22 14:24

本人小白,对于=0xf0,寄存器与0xf0,低四位正好至0

热心网友 时间:2023-10-22 14:24

我回答一下其他没有回答的那个问题,和1相与是其本身所以不影响
声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。
E-MAIL:11247931@qq.com
uv彩印机操作教程规范 新手买UV打印机怎样打印 掌盟里我们家的奥斯卡那个妖姬给你鸡腿别打我行吗的背景音乐的英文歌叫... 租车跑滴滴押金好退吗 为什么鸟在天上飞雷劈不到 什么通用机打发票 通用机打发票是什么发票 通用机打发票属于什么 四川监理公司有哪些 天地云庭交通状况 成都华夏建设(集团)有限责任公司攀枝花分公司怎么样? 各位高人 请问 STM32要调用库与操作寄存器各有什么优缺点? stm32进入不了串口中断(寄存器操作) stm32直接对寄存器进行操作 中位数,众数,方差 平均数、中位数、众数、方差、标准差、极差区别? 极差怎么算?公式是? 极差,标准差,方差各是什么 Excel如何求平均值和极差? 平均数,中位数,众数,极差,方差,定义,有什么意义 求极差均值2.5怎么算出来? 中位数,众数,平均数和极差怎么算? 极差越大,平均数越小还是越大 方差 标准差 极差 平均数 怎样求方差极差和平均数 平均数的极差 平均数,中位数,众数,极差,方差,标准差各代表着什么 房产委托公证书怎么办理要多少费用 平均极差的说法对吗? 如何办理房产公证? 极差和均值是什么意思有什么含义 办理房产委托书公证需要什么材料 stm32 用库函数操作好还是用寄存器好 STM32 寄存器操作 RCC-BCDR&OX02 是第几位? 对16进制不 初学STM32,先学寄存器操作还是库函数操作好呢??? stm32如何用操作寄存器的方法吧GPIOB组的PB2电平置高或置地。 怎么删除微信中自己的动画表情?不是撤回,是把那个表情删除 作品视频一般都上传到哪些平台,可以弄成链接放到作品集里 哄的意思是什么? 哄组词是什么 哄有几种读音分别是什么? 微信软文推广方案?软文怎么写 哄的读音是什么 哄的含义是什么? 哄的多音字组词和拼音 哄的含义 哄的读音? 苦荞茶对降血脂有用吗? 哄是多音字吗 “哄”有哪些多音字并组词? 哄可以组什么词 “哄”的广东话怎么说?
  • 焦点

最新推荐

猜你喜欢

热门推荐