Commit Graph

53 Commits

Author SHA1 Message Date
yangpengya a8d5a645f2
[components][at] 优化AT组件,并解决内存泄露
1.优化at server endmark判断,支持自动识别'\r''\n'"\r\n"。
2.优化at_recvfrom,修复大数据量时sem多次释放造成的接收错误。
3.修复at组件中可能存在的内存泄露。
4.优化部分代码逻辑,减少冗余代码。
2024-02-18 11:07:05 -05:00
yangpeng 8012c0c9a2 [at]优先判断是否是URC数据 2023-10-08 13:25:28 +08:00
yangpeng c386a2c956 [at]优化at格式化输出,避免多个at client和server输出冲突 2023-10-08 13:25:28 +08:00
JasonCang d0c6d6f4a4
[at] optimize at_vprintfln
为什么提交这份PR (why to submit this PR)
现在的at指令发送接口,底层会自动添加"\r\n",某些场景需要发送空指令。如ESP32的蓝牙发送数据指令,收到">"后
发数据,等待接收OK。

详细讨论可见:
https://club.rt-thread.org/ask/question/185810c0aed98558.html

你的解决方案是什么 (what is your solution)
判断at指令长度,长度为0,则直接返回
2023-06-09 23:40:37 -04:00
wenxingpt f2d78e87b5
[component][at] fix(misc): fix null char input issue
fix issue #7005
2023-05-14 00:33:59 -04:00
szlr 90853abb08
[HUST CSE] for循环判断条件出错字符串读取越界 (#7352) 2023-04-26 09:15:31 +08:00
Lu_Reaper 3a9c5690b1
[AT] Add null pointer check in at_client_get (#7154)
1. prevent null-pointer dereference in rt_strcmp
2023-04-03 23:04:40 +08:00
betesla d1baf1f5b5 [Fix]:fix at_server.c link failed when using ac6
use __ARMCC_VERSION to replace __CC_ARM
2023-03-03 19:04:43 -05:00
Man, Jianting (Meco) 99bdf978d7
[rtdef] use lower-case to define attributes (#6728)
* [rtdef] rename RT_WEAK attribute as rt_weak

* [rtdef] rename RT_USED attribute as rt_used

* [rtdef] rename RT_SECTION attribute as rt_section

* [rtdef] rename ALIGN attribute as rt_align

* [legacy] add RT_USED ALIGN RT_SECTION RT_WEAK as legacy support
2022-12-11 13:12:03 -05:00
SNOWA 3400a79035 Update at_utils.c
如果打印格式为"%02X"的数据大于0x7F,打印的数据就会在前面多出6个'F',原因详见https://blog.csdn.net/zqxwce821/article/details/53011925。
现在通过强制转换成unsigned char后,在STM32(KEIL5+C99)已测试确认能修复该问题。
2022-10-19 22:28:36 -04:00
thewon86 f5b0bfd3f4 uniform code writing-disable interrupt 2022-04-20 14:22:43 +08:00
Meco Man f89a162ea3 [core] 使用rt_memcpy rt_memset代替memcpy memset 2022-01-09 00:23:18 +08:00
jonas 7e06b6c504 [fix]修复AT组件在CLI模式下,指令输入过长导致数组越界的问题 2021-12-09 18:11:55 +08:00
Meco Man df9a23c534 [mutex] use RT_IPC_FLAG_PRIO to replace RT_IPC_FLAG_FIFO 2021-11-17 15:57:15 -05:00
Meco Man b35fffd659 [remove rtlibc]修复缺失的头文件导致的报错 2021-09-11 14:43:09 -04:00
malongwei f1e1b6b2e3 fix at_client.c 2021-09-03 20:16:35 +08:00
malongwei c229d8b2b5 fix at_client.c 2021-09-01 21:19:22 +08:00
sszlbg bf88963a3e Merge branch 'master' into at_client-rt_realloc_iss
# Conflicts:
#	components/net/at/src/at_client.c
2021-07-25 17:00:00 +08:00
sszl 88d4faf687 更新old_urc_table为new_urc_table 2021-07-14 11:01:21 +08:00
malongwei 180d0e1224 add at_utils_send virtual function 2021-07-08 12:02:29 +08:00
malongwei e7b63ed7ab fix at_vprintf and at_vprintfln and end_sign response 2021-07-07 23:49:42 +08:00
bernard 82f3a84ec8 !64 componets:fix at_server_getchar spelling error
Merge pull request !64 from fwatch/dev
2021-06-17 08:52:20 +00:00
sszlbg 57eb1c5a80 修改at_obj_set_urc_table函数重新分配内存可能导致内存泄漏问题 2021-05-29 15:51:12 +08:00
Meco Man c40fd2da70 update 2021-03-17 14:00:49 +08:00
Meco Man 08af865c50 [at][bug] 修复内存泄漏的bug 2021-03-17 13:56:42 +08:00
Meco Man 3c05a4e719 [compoenets] auto & manual formatted 2021-03-08 18:19:04 +08:00
Wayne Lin eaacc0ae3e Optimize getc flow. 2021-03-02 10:42:40 +08:00
Wayne a50d81827a
Revert "fix the bug that rx_notice out of sync when data received after last rt_device_read() is zero" 2021-02-04 22:53:58 +08:00
Bernard Xiong 72bc0d8fad
Merge pull request #3293 from rgw5267/fix_at
fix the bug that rx_notice out of sync when data received after last rt_device_read() is zero
2020-12-31 08:34:57 +08:00
qiyongzhong0 db0880bd26 fix at_client, avoid creating the same client repeatedly and prevent working exceptions and memory leaks. 2020-11-02 17:43:23 +08:00
gouqs0615 020a82a65a fix at_server_getchar spelling error 2020-11-02 16:44:13 +08:00
任光伟 27b7e0d929 解决在判断接收字节为0与RESET信号量之间接收到数据时,导致此次数据无法被处理的bug。
Signed-off-by: RGW <rgw5267@gmail.com>
2019-12-26 00:53:19 +08:00
chenyong 108b85f2af [network][at] Fix the end sign "\r\n" conversion error,and at_server_send、at_server_recv function
Signed-off-by: chenyong <1521761801@qq.com>
2019-08-26 14:55:38 +08:00
chenyong b5ad12573f [net][at] update AT component V1.3.0, change as follows:
- AT Socket feature supports multi-client connections;
- Fix `send data error, current socket (0) state (0) is error` issue when the socket is closed;
- Improve dirty data processing when AT device hard reset;
- Improve `at_obj_set_urc_table()` fucntion, Support for setting multiple URC tables;
- Improve RAW data print format;
2019-05-27 12:03:04 +08:00
chenyong 99c069ffd3 [net][at] Modify AT commands send timeout error log level
Signed-off-by: chenyong <1521761801@qq.com>
2019-04-26 10:04:43 +08:00
chenyong 946484760e [net][at][lwip] Modify AT component and lwIP components for netdev 2019-04-16 20:21:33 +08:00
slyant a6b51ada1e 修改at_client.c 传入参数timeout单位是ms,此处需要转换为tick 2018-10-18 21:01:30 +08:00
armink 4e578b0042 [component][at] Change the license to Apache-2.0. 2018-10-12 16:02:20 +08:00
armink 405fce917a [component][at] Move at log from at.h to at_log.h . 2018-10-12 15:54:09 +08:00
luofanlu d65424a51b
Update at_client.c
correct a spelling mistake
2018-09-19 22:53:22 +08:00
chenyong 3302ef9d65 [net][at] Add at_client_recv function receive data timeout 2018-09-14 19:31:43 +08:00
HubretXie 8edb978c9a
Update at_client.c
修复LOG_X修改引起的编译错误
2018-09-12 10:22:31 +08:00
chenyong 02c1f0c621 [net][at] Add AT Client Error LOG for multiple clients 2018-08-31 17:24:26 +08:00
chenyong ed7f0cad8b [net][at] Add AT multiple client support 2018-08-28 11:59:30 +08:00
chenyong c2e6f20caf [net][at] Modify the AT client initialization process, delete AT socket automatic initialization. 2018-08-21 12:05:09 +08:00
chenyong 622fa0e7ce [net][at] Fix receive error data when AT CLI exits. 2018-08-21 09:35:21 +08:00
zylx f3bce48502 [net][at] add at_client_wait_connect 2018-08-08 18:18:03 +08:00
zylx f166ac946b [net][at] fix server repeated enter issue 2018-08-04 18:47:01 +08:00
zylx e5d9bb9013 [net][at] fix repeated enter issue 2018-08-04 17:44:12 +08:00
chenyong 2e8d994485 [net][at] Modify the AT commands response ERROR judgment method. 2018-08-03 19:10:35 +08:00