ST意法半导体
登录
直播中
摩托罗拉
8年用户
896经验值
私信
关注
[问答]
传递“HAL_UART_Receive”参数2的指针目标的符号不同怎么解决?
开启该帖子的消息推送
HAL库
大家好,我在编写代码时看到警告;
--> HAL_UART_Receive(&huart3, &Rx_Byte[0], 1, 10);
Rx_Byte 是;
--> char Rx_Byte[1];
为什么我看到这个警告有人可以帮助我吗?
回帖
(1)
刘易
2022-12-27 10:55:49
它与 STM 没有任何关系——这是标准的 C 语言:
顾名思义,
u
int8_t 是无符号的;
普通 char 是否被签名是实现定义的。
您将 char 用于普通的、可打印的 ASCII 文本是正确的——这就是它的用途。
但是,HAL_UART_Receive() 不限于纯文本;它处理任意字节值——因此它使用 uint8_t。
您可以通过转换 char 值来抑制警告;例如,
char my_char;
HAL_UART_Receive( &huart3, (uint8_t*)&my_char, 1, 10 );
或者你可以把它变成 uint8_t(尽管你可能会从 C 标准字符串函数中得到同样的警告——期望的是 char,而不是 uint8_t)
它与 STM 没有任何关系——这是标准的 C 语言:
顾名思义,
u
int8_t 是无符号的;
普通 char 是否被签名是实现定义的。
您将 char 用于普通的、可打印的 ASCII 文本是正确的——这就是它的用途。
但是,HAL_UART_Receive() 不限于纯文本;它处理任意字节值——因此它使用 uint8_t。
您可以通过转换 char 值来抑制警告;例如,
char my_char;
HAL_UART_Receive( &huart3, (uint8_t*)&my_char, 1, 10 );
或者你可以把它变成 uint8_t(尽管你可能会从 C 标准字符串函数中得到同样的警告——期望的是 char,而不是 uint8_t)
举报
更多回帖
rotate(-90deg);
回复
相关问答
HAL库
请问
HAL_UART_Receive
_IT和
HAL_UART_Receive
的区别是什么?
2021-11-25
3451
STM32CubeMX
HAL_UART_Receive
函数怎么使用?
2024-04-03
137
使用
hal
函数进行
uart
通讯,接收时总是只能接受第一次数据
2019-01-25
6689
HAL_UART_RECEIVE
只接收一次,然后总是超时怎么处理?
2022-12-06
451
请问
HAL_UART_Receive
_DMA 和
HAL_UART
_Transmit_DMA怎么用
2018-11-16
16598
请问串口要发送数的地址如何设定
2019-03-25
1754
如果TX未完成时RX,
HAL_UART
_Transmit() 和
HAL_UART_Receive
_IT() 失败怎么处理?
2022-12-02
251
STM32如何能够在不知道长度和使用
HAL
函数的情况下分析用户收到的消息呢
2022-12-23
271
关于STM32
HAL
库串口接受部分的一点疑惑
2020-10-24
3102
有什么技巧可以让STM32L496RGT/
HAL
和
UART
一起工作吗?
2022-12-26
162
发帖
登录/注册
20万+
工程师都在用,
免费
PCB检查工具
无需安装、支持浏览器和手机在线查看、实时共享
查看
点击登录
登录更多精彩功能!
英国威廉希尔公司网站
william hill官网 版块
小组
免费开发板试用
ebook
直播
搜索
登录
×
20
完善资料,
赚取积分