【吐槽一下软件bug】为什么我这么写有问题,移位操作该何去何从
我以为是我数据移位的位数不对导致的PWM无法正常工作,曾用AI介入帮助思考检查,但未发现不合理的部分,直到我写好了寄存器=给定值的一系列代码没问题,但是一到用宏定义一个位并移动多少位时出错,这个将如何解决?工程师帮解决!UPDATE:问题解决,只需要将+号改成或|就可以了!!
忽略PWMA和PWMB的区别,其实第一行那么写就不行,第二行就可以,究竟是为什么,本想定义好宏来方便操作,没想到居然掉入无底深渊?!
看是否这个差异导致:
1 + 1 == 10(二进制)== 2(十进制)
1 | 1 == 01(二进制) == 1(十进制) 注意变量类型和运算符优先级
ercircle 发表于 2025-2-18 11:33
看是否这个差异导致:
1 + 1 == 10(二进制)== 2(十进制)
1 | 1 == 01(二进制) == 1(十进制) ...
{:fendou:}是的,刚想到 DebugLab 发表于 2025-2-18 11:39
注意变量类型和运算符优先级
较为高深{:touxiao:}
页:
[1]