嵌入式STM32编程中,读GPIO口的数据的代码
#definekey1(GPIOA->IDR&0XFFFFFFFF)与#definekey1(GPIOA->IDR&(1<<0))有什么区别?...
#define key1 (GPIOA->IDR &0XFFFFFFFF) 与
#define key1 (GPIOA->IDR & (1<<0))有什么区别? 展开
#define key1 (GPIOA->IDR & (1<<0))有什么区别? 展开
1个回答
展开全部
1,我怀疑这样写的用意在哪里。两个define 对于GPIOA的IDR寄存器是没有任何意义的,32位的寄存器每一位该是0的是0,是1 的是1 没有什么变化,寄存器。如果是获取寄存器的值是可以的。但是两个的作用没有什么不同,他们寄存器的值都不会发生改变,如果实在要说区别的话,就是运算的时间和写法的不同。
2,#define key1 (GPOIA -> IDR | 0xFFFFFFFF) //这是每一位都置位为1
#define key1 (GPIOA -> IDR | ( 1<X ) ) // x位置位为1
3, #define key1 (GPIOA -> IDR & 0X0) //每一位都清0
#define key1 (PPIOA -> IDR & (1<X)) // x位清0
2,#define key1 (GPOIA -> IDR | 0xFFFFFFFF) //这是每一位都置位为1
#define key1 (GPIOA -> IDR | ( 1<X ) ) // x位置位为1
3, #define key1 (GPIOA -> IDR & 0X0) //每一位都清0
#define key1 (PPIOA -> IDR & (1<X)) // x位清0
意法半导体(中国)投资有限公司
2023-06-12 广告
2023-06-12 广告
STM32F207是一款非常优秀的微控制器芯片,它是ST(意法半导体)最新推出的基于90纳米工艺的STM32F2系列芯片之一。STM32F207芯片内置了丰富的外设接口,包括ADC、DAC、UART、SPI、I2C等,可以轻松实现各种复杂的...
点击进入详情页
本回答由意法半导体(中国)投资有限公司提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询