最近采用stm32cubef4进行开发,发现库分层比较清晰,使用起来也比较简单,但是提出以下几个疑问。
1、大家有没有使用stm32cubef4进行开发项目历程或者开发板的完整历程(例如:原子哥的)
2、stm32cubef4库将数据对写与寄存器控制进行了捆,(例如串口:使用中断进行接收,当接收完之后串口接收中断将会关闭,但是我们一般项目正常使用时不会数据接收完之后关闭中断,大部分会将数据与控制进行脱离操作,当然我也可以通过修改库方式实现我想要的功能,但是由于项目紧急,不希望因为这样的改动带来的隐含问题影响后期的项目周期)
3、还有就是上了OS之后__HAL_LOCK锁有没有必要存在
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
---------------------------------
贴段代码,这里就是UART_Receive_IT的处理,当接受计数为0时则会关闭中断!
if(--huart->RxXferCount == 0)
{
__HAL_UART_DISABLE_IT(huart, UART_IT_RXNE);
/* Check if a transmit process is ongoing or not */
if(huart->State == HAL_UART_STATE_BUSY_TX_RX)
{
huart->State = HAL_UART_STATE_BUSY_TX;
}
else
{
/* Disable the UART arity Error Interrupt */
__HAL_UART_DISABLE_IT(huart, UART_IT_PE);
/* Disable the UART Error Interrupt: (Frame error, noise error, overrun error) */
__HAL_UART_DISABLE_IT(huart, UART_IT_ERR);
huart->State = HAL_UART_STATE_READY;
}
一周热门 更多>