C语言位域操作底层发生了什么?
摘要:我们知道CPU对内存访问的最小单位是字节,1个字节是8个位,但是有时候我们需要的变量只需要不到8个位就能存的下,为了节省内存就会使用位域。 比如我只需要1个变量的低2位变成10b,而其他位不受影响,我们会这么写: 1 void main(void) 2 { 3 volatile char a; 4
阅读全文
QT添加了一个类之后报错
摘要:添加了一个类之后报LNK2019和LNK1120的错误,如下图: 网上有人遇到同样的问题,但是都没有解决我的问题,最后我发现我新添加的这个类在原来就是已经有的,只需要换个名字就行了。 我想吐槽的是,QT的报错机制为什么这么烂,定义了两个相同的类你就告诉我定义了两个相同的类就行了,都不知道他在那说啥。
阅读全文
STM32的RXD能收到自己发出来的东西
摘要:遇到一个STM32的串口相关的问题,TXD会每隔500ms往外发一次数据,并且会根据RXD接收到的数据做出反应。这个功能我之前是调过的,表现是正常的,这次调就遇到问题了,那么很自然的想到这次和上次的区别。区别就是上次调试用的是JLink自带的串口,它发不出校验位,这我在另一篇博客里说了。但是我检查了
阅读全文