添加stmisp协议
This commit is contained in:
@@ -20,6 +20,8 @@ void sertrf_init(void)
|
||||
// 协议初始化
|
||||
sertrf.resend_read_mutex = xSemaphoreCreateMutex();
|
||||
resend_init(&sertrf.resend_device, resend_send, resend_recv, resend_get_length,resend_user_parse);
|
||||
// stmisp协议初始化
|
||||
stmisp_init(&sertrf.stmisp_device,stmisp_send,stmisp_recv,stmisp_get_length);
|
||||
//OAT信息获取
|
||||
get_partition_status(&sertrf.otau);
|
||||
//线程启动
|
||||
@@ -62,7 +64,8 @@ void embedded_thread(void* arg)
|
||||
{
|
||||
uint8_t data[embedded_size ];
|
||||
// data[embedded_size] = '\0';
|
||||
embedded_device_read(&sertrf.device, data, embedded_size,0);
|
||||
if(!sertrf.stmisp_device.flag)
|
||||
embedded_device_read(&sertrf.device, data, embedded_size,0);
|
||||
|
||||
Protocol_buf_decode(data, embedded_size);
|
||||
// SYS_LOG_INF("data : %s", data);
|
||||
@@ -86,7 +89,8 @@ void pc_thread(void* arg)
|
||||
uint8_t data[pc_size];
|
||||
pc_device_read(&sertrf.device, data, pc_size);
|
||||
// SYS_LOG_INF("data : %s", data);
|
||||
embedded_device_write(&sertrf.device, data, pc_size);
|
||||
if(!sertrf.stmisp_device.flag)
|
||||
embedded_device_write(&sertrf.device, data, pc_size);
|
||||
}
|
||||
// printf_chill_time(10,1000);
|
||||
|
||||
@@ -354,4 +358,25 @@ void resend_user_parse(void *resend_device)
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
int stmisp_send(void* data, uint16_t len, int timeout)
|
||||
{
|
||||
return embedded_device_write(&sertrf.device, data, len);
|
||||
}
|
||||
int stmisp_recv(void* data, uint16_t len, int timeout)
|
||||
{
|
||||
uint32_t time_start = os_get_sys_time();
|
||||
int size = 0;
|
||||
while(os_get_sys_time() - time_start < timeout)
|
||||
{
|
||||
size = embedded_device_read(&sertrf.device, data, len, 0);
|
||||
os_thread_sleep(1);
|
||||
}
|
||||
return size;
|
||||
}
|
||||
int stmisp_get_length(void)
|
||||
{
|
||||
return embedded_device_get_rx_length(&sertrf.device);
|
||||
}
|
||||
Reference in New Issue
Block a user