Merge pull request #4305 from OpenNuvoton/revert-3293-fix_at

Revert "fix the bug that rx_notice out of sync when data received aft…
This commit is contained in:
Bernard Xiong 2021-03-03 08:53:01 +08:00 committed by GitHub
commit fac97f1716
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 10 additions and 12 deletions

View File

@ -434,21 +434,19 @@ static rt_err_t at_client_getchar(at_client_t client, char *ch, rt_int32_t timeo
{
rt_err_t result = RT_EOK;
__retry:
while (rt_device_read(client->device, 0, ch, 1) == 0)
{
result = rt_sem_take(client->rx_notice, rt_tick_from_millisecond(timeout));
if (result != RT_EOK)
{
return result;
}
if(rt_device_read(client->device, 0, ch, 1) == 1)
{
rt_sem_control(client->rx_notice, RT_IPC_CMD_RESET, RT_NULL);
}
return RT_EOK;
}
else
{
goto __retry;
}
}
/**
* AT client receive fixed-length data.