可能是不适合我吧,比如我再举个例子,原子教程里面用gpio的时候,设置两个引脚一样的配置,会用“|”符号给你连起来就可以设置两个一样的了,他只是机械式的告诉你这么做,但是为什么这样呢,他不说,到底是他不说,还是他自己也不知道?我觉得他不会不知道,也不要说c语言里面这样,从语言角度是这样的,可是底层还是操作寄存器的啊,按位与的为什么就行了,弄明白了,自己也可以写出一些库函数,
至于为什么,这个还是自己想了挺久看到的另一家的一本f1的书上才想通的,因为两个gpio引脚一个比如说0x8000,一个0x4000,因为8是1000,4是100,一按位与之后就是1100,正好把寄存器上面这两位都设置了,所以所有的宏定义里面定义gpio的时候那个地址很有意思,都是这样的倍数上去的,如果不是这样的定义这些引脚就问题大了,这个我找了很多资料看到的别人的一本从51到stm32的进阶的书才搞懂了,谁的书不说了,免的有打广告,但就这个问题我搞懂也是花了很多时间,
如果这个问题他的教程提一次原因,我估计就给人很大的收益,也让人能节省很多时间,才能快的起来,不然那太肤浅,我也太多疑惑,也许是个人习性不同,他的不适合我,算不算业内良心我就不评论了,因为每个人说的都该是自己的感受而已,
|