今天在做触摸按键实验的时候,按照整点原子手册的代码进行实验,但是结果一直不对,最后用一点一点排除的方法花了好几个小时,发现是手册有误,真是哭了。
错误在 TPAD_Get_Val函数中,手册上是这样的
然而在实际代码中确实这样的
就是这个小小的差别导致结果不一样。
并且在手册中对这两个函数是有介绍的,
这里需要说明一下,固件库还提供了两个函数用来判断定时器状态以及清除定时器状态标志位的函数 TIM_GetFlagStatus 和 TIM_ClearFlag,他们的作用和前面两个函数的作用类似。只是在 TIM_GetITStatus 函数中会先判断这种中断是否使能,使能了才去判断中断标志位,而TIM_GetFlagStatus 直接用来判断状态标志位。
我当时其实也注意到了这里函数名不一样,但我下意识的以为这两个函数在这里是等价的,所以也没有多想,最后是在排除的没有东西可挑的情况下才考虑这个函数的。因为在这个实验中我们并没有使能中断,所以不能用TIM_GetITStatus 函数。