如何使用 CMock 和 unity 框架为 stm32 进行模拟/存根
HAL_UART_Receive(&huart5, &temp, 1, BLUETOOTH_RX_TIMEOUT)
?
要模拟 UART 驱动程序,您应该将类似的内容添加到单元测试源文件中。这是 STM32L4 MCU 的示例,因此如果您使用不同的变体,文件名可能会有所不同。
#include "mock_stm32l4xx_hal_uart.h"
然后你可以用类似的东西来嘲笑
HAL_UART_Receive()
:
HAL_UART_Receive_ExpectAndReturn(&huart5, &temp, 1, BLUETOOTH_RX_TIMEOUT, HAL_OK);
或者你可以用类似的东西来存根它:
HAL_UART_Receive_AddCallback(your_stub_function);