朋友好,位带操作在STM8里面是不存在的,我们平时学习的位带操作常见于32位微处理器内核架构中,我们通过对位带区和位带别名区的相关映射和配置可以简化GPIO或者寄存器某个功能位的赋值,将复杂的寄存器配置简化为对某一“符号化”地址的简单配置,类似于经典8051中“sbit LED=P1^0”一样的写法,但是STM8是个8位机,本生寄存器数量不太多,GPIO操作也较为简单,只要合理运用DDR,CR1,CR2,ODR和IDR就可以使用了,故而不存在位带概念。若开发者使用IAR环境开发STM8,还会发现IAR中的头文件帮我们做好了GPIO相关寄存器结构体的封装,我们直接写Px_DDR=0xXX就可以对应到某一端口,使用上非常方便。以上是我浮浅的认识,愿能解除朋友的些许疑惑。
可以用%=0的方式清零
|=1的方式写1