@@ -469,7 +469,7 @@ int at_client_obj_wait_connect(at_client_t client, rt_uint32_t timeout)
469
469
return - RT_ERROR ;
470
470
}
471
471
472
- resp = at_create_resp (64 , 0 , rt_tick_from_millisecond (1000 ));
472
+ resp = at_create_resp (64 , 0 , rt_tick_from_millisecond (300 ));
473
473
if (resp == RT_NULL )
474
474
{
475
475
LOG_E ("no memory for AT client(%s) response object." , client -> device -> parent .name );
@@ -700,20 +700,21 @@ at_client_t at_client_get(const char *dev_name)
700
700
RT_ASSERT (dev_name );
701
701
702
702
rt_slist_t * node ;
703
- at_client_t client = RT_NULL ;
703
+ at_client_t client ;
704
704
705
705
rt_base_t level = rt_hw_interrupt_disable ();
706
706
rt_slist_for_each (node , & g_at_client_list )
707
707
{
708
708
client = rt_slist_entry (node , struct at_client , list );
709
709
if (rt_strcmp (client -> device -> parent .name , dev_name ) == 0 )
710
710
{
711
- break ;
711
+ rt_hw_interrupt_enable (level );
712
+ return client ;
712
713
}
713
714
}
714
715
rt_hw_interrupt_enable (level );
715
716
716
- return client ;
717
+ return RT_NULL ;
717
718
}
718
719
719
720
/**
@@ -726,7 +727,10 @@ at_client_t at_client_get_first(void)
726
727
at_client_t client = RT_NULL ;
727
728
728
729
rt_base_t level = rt_hw_interrupt_disable ();
729
- client = rt_slist_first_entry (& g_at_client_list , struct at_client , list );
730
+ if (!rt_slist_isempty (& g_at_client_list ))
731
+ {
732
+ client = rt_slist_first_entry (& g_at_client_list , struct at_client , list );
733
+ }
730
734
rt_hw_interrupt_enable (level );
731
735
732
736
return client ;
@@ -956,8 +960,7 @@ static int at_client_para_init(at_client_t client)
956
960
(void (* )(void * parameter ))client_parser ,
957
961
client ,
958
962
1024 + 512 ,
959
- 9 ,
960
- /* RT_THREAD_PRIORITY_MAX / 3 - 1,*/
963
+ RT_THREAD_PRIORITY_MAX / 3 - 1 ,
961
964
5 );
962
965
if (client -> parser == RT_NULL )
963
966
{
0 commit comments