0.3 学习Stm32经历过的磨难

文章目录

    • [用库函数传参 能否按位或](#用库函数传参 能否按位或)

用库函数传参 能否按位或

答案是看清况,而不是一股脑的写!(血泪的经验啊)

  • 可行的情况:
c 复制代码
//如gpio初始化结构体中的gpiopin参数
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_1 | GPIO_Pin_2;
//或是exti初始化结构体中EXTI_Lines参数
EXTI_InitStructure.EXTI_Line = EXTI_Line0 | EXTI_Line1;


由上图可知:这些可以用"按位与"的方式传参的都是一个二进制位表示一个特定名称的

  • 不可行的情况
c 复制代码
这里按位与会 死的很惨 不要问我怎么知道的(真的崩溃)
	GPIO_EXTILineConfig(GPIO_PortSourceGPIOB, GPIO_PinSource0 | GPIO_PinSource1);

来一探究竟

可见其中并不满足一个特定量占一位的原则,如GPIO_PinSource0与GPIO_PinSource1
0000 0000 如果与上  0000 0001 那么将得到0000 0001 
自然无法区分两个量

总结

在不知道能否按位与传参的时候要

  1. 右击参数类型查看definition
  2. 根据参数的位分配判断能否按位与传参

相关推荐
Ting-yu5 分钟前
零基础学习Redis(10) -- zset类型命令使用
数据库·redis·学习
iot王国的战士26 分钟前
合宙Air201资产定位模组LuatOS:开机容易关机难?PWRKEY控制来帮忙
嵌入式硬件·物联网·硬件工程
小黄酥1 小时前
Python学习笔记--列表、字典、集合、元组
笔记·python·学习
Arms2061 小时前
gradle 学习备忘
学习
m0_739312871 小时前
【STM32】独立看门狗(IWDG)原理详解及编程实践(下)
stm32·单片机·嵌入式硬件
代码总长两年半1 小时前
FatFs文件系统的移植---STM32(标准库)
c语言·stm32·单片机·嵌入式硬件
再不会python就不礼貌了2 小时前
一步步教你利用大模型开发个性化AI应用,告别‘人工智障’!
人工智能·学习·算法·oracle·llama
互联网女工人2 小时前
大学生必备10个AI工具网站,辅助完成辩论/开题/实践/形势政策报告、创新创业计划书、思想汇报、心得感悟等作业,提升学习效率和学术表现!
学习
网安kk2 小时前
2024网络安全与黑客技术:零基础自学手册
网络·学习·安全·web安全·网络安全·php
冯宝宝^2 小时前
基于学习功能聚合的英语口语学习APP
python·学习