请教 C 语言问题 #190-D enumerated type mixed with another type

343 天前
 TESTFLIGHT2021
HAL_StatusTypeDef status = HAL_OK;

status = MYUARTGets((char*)&char1, 1, timeout); ---->报警告


已经

typedef enum
{
HAL_OK = 0x00U,
HAL_ERROR = 0x01U,
HAL_BUSY = 0x02U,
HAL_TIMEOUT = 0x03U
} HAL_StatusTypeDef;


MYUARTGets 函数

HAL_StatusTypeDef MYUARTGets(char *pRxBuffer, unsigned int numBytesToRead, unsigned int timeOut)
{
unsigned int count = 0;

HAL_StatusTypeDef status = HAL_OK;

unsigned long long Sys_Ticks_Timeout_Ms = Sys_Ticks_Now_Ms+timeOut;

if(numBytesToRead <= 0)
{
status = HAL_ERROR;
return status;
}


while((Sys_Ticks_Now_Ms <= Sys_Ticks_Timeout_Ms) && (count < numBytesToRead))
{
status = HAL_TIMEOUT;
if(TRUE == UARTCharsAvail(SOC_UART_1_REGS))
{
*pRxBuffer = UARTCharGetNonBlocking(SOC_UART_1_REGS);
pRxBuffer++;
count++;
Sys_Ticks_Timeout_Ms = Sys_Ticks_Now_Ms+timeOut;
status = HAL_OK;
}
}
return status;
}


本人看不得 warning
请教各位大佬了~!
985 次点击
所在节点    程序员
4 条回复
jiekeop
343 天前
扔给 GPT
yolee599
343 天前
这是 STM32 的 HAL 库吧,HAL_StatusTypeDef 应该是内部定义好了的,你不用再自己定义一次,除此之外没别的问题了。
TESTFLIGHT2021
343 天前
@yolee599 没用 用在其他单片机 把 STM32 里面一个函数扒出来用了
TESTFLIGHT2021
343 天前
@jiekeop 哥 GPT 也说没问题,但是编译器就报 warning

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/999579

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX