Freescale芯片挺好的,可是远不如STM32流行。
很久以前,遇到一件事,不过,没有特别在意,也就没记录。
这几天,看看KL的代码,找到了Freescale被收购的原因:
for (i = 5; i <= 32; i++)
{
/* calculate the temporary sbr value */
sbrTemp = (UART_InitStruct->srcClock/(UART_InitStruct->baudrate * i));
/* calculate the baud rate based on the temporary osr and sbr values */
calculatedBaud = (UART_InitStruct->srcClock / (i * sbrTemp));
if (calculatedBaud > UART_InitStruct->baudrate)
.........
这是LPUART_Init 的代码, 意思是 串口初始化!
而且,这还不算比较复杂的。
还有近千页的文档及复杂代码。
在HAL文档中,搜uart ,在488页上找到。
可以找到好几套不同的代码,各有问题,各有特点。
唯一的共同点:不完整......
几个特定的总线频率,几个特定的波特率,真的被他们折腾出花了。
|