嵌入式技术william hill官网
直播中

王丽

7年用户 1301经验值
私信 关注
[问答]

请教下rt_device_read()函数的问题?

rt_size_t rt_device_read(rt_device_t dev, rt_off_t pos, void buffer, rt_size_t size
);
描述:pos 读取数据偏移量,此参数串口设备未使用
但在例子中:while (1)
{
/ 从串口读取一个字节的数据, 没有读取到则等待接收信号量/
while (rt_device_read(serial, -1, &ch, 1) != 1)
{
/ 阻塞等待接收信号量, 等到信号量后再次读取数据/
rt_sem_take(&rx_sem, RT_WAItiNG_FOREVER);
}
/ 读取到的数据通过串口错位输出*/
ch = ch + 1;
rt_device_write(serial, 0, &ch, 1);

问题:pos此参数串口设备未使用 ,但在例子中,为啥为-1?,不懂,新手 ,请教!


回帖(1)

张静

2023-5-12 15:34:56
既然末使用,那你随便填什么值都无所谓。
但不建议写成正值,不然容易误解成从第多少个字节开始读,可以写0。
对于有些设备,-1表示全部数据,可能是这么来的。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分