summaryrefslogtreecommitdiff
path: root/components
diff options
context:
space:
mode:
authorBernard Xiong <[email protected]>2020-02-11 11:56:01 +0800
committerGitHub <[email protected]>2020-02-11 11:56:01 +0800
commitdd5178efdfa8ad6943459c1284237509a78c3367 (patch)
treeadcf2bec053196057cc8c36add6879b781aa08c7 /components
parentfbe98db3816ece7c3da9cfae842f76cf3c42ef85 (diff)
parent50c2af5eeaa10b776e19d47d55671495c4a82fbb (diff)
Merge pull request #3352 from z14git/serial_bug_fix
修复因串口接收缓冲区满且没有开启ULOG_USING_ISR_LOG而造成的死机问题
Diffstat (limited to 'components')
-rw-r--r--components/drivers/serial/serial.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/components/drivers/serial/serial.c b/components/drivers/serial/serial.c
index 50dd7e188b..d1c04dec6f 100644
--- a/components/drivers/serial/serial.c
+++ b/components/drivers/serial/serial.c
@@ -330,14 +330,16 @@ rt_inline int _serial_int_tx(struct rt_serial_device *serial, const rt_uint8_t *
static void _serial_check_buffer_size(void)
{
static rt_bool_t already_output = RT_FALSE;
-
+
if (already_output == RT_FALSE)
{
+#if !defined(RT_USING_ULOG) || defined(ULOG_USING_ISR_LOG)
LOG_W("Warning: There is no enough buffer for saving data,"
" please increase the RT_SERIAL_RB_BUFSZ option.");
+#endif
already_output = RT_TRUE;
}
-}
+}
#if defined(RT_USING_POSIX) || defined(RT_SERIAL_USING_DMA)
static rt_size_t _serial_fifo_calc_recved_len(struct rt_serial_device *serial)
@@ -1286,4 +1288,3 @@ void rt_hw_serial_isr(struct rt_serial_device *serial, int event)
#endif /* RT_SERIAL_USING_DMA */
}
}
-