搜索
bottom↓
回复: 16

求一个AT指令的程序架构

[复制链接]

出0入4汤圆

发表于 2023-2-19 19:32:38 来自手机 | 显示全部楼层 |阅读模式
现在要用mcu来控制一个BLE模块,接口方式是AT指令,求一个这方面的MCU参考程序。

出0入115汤圆

发表于 2023-2-19 19:37:11 来自手机 | 显示全部楼层
我以前在stm32用rtos封装,用的是类unix的 poxi接口,write,read函数实现at命令,自己实现应该比较容易吧。

出0入4汤圆

 楼主| 发表于 2023-2-19 19:42:39 来自手机 | 显示全部楼层
三年模拟 发表于 2023-2-19 19:37
我以前在stm32用rtos封装,用的是类unix的 poxi接口,write,read函数实现at命令,自己实现应该比较容易吧。 ...
(引用自2楼)

还是想找一个裸机的程序。

出0入42汤圆

发表于 2023-2-19 19:59:24 | 显示全部楼层
有很多基于裸机的Shell库,参考一下,稍作修改就能实现AT命令的解析。

出10入29汤圆

发表于 2023-2-19 20:27:48 | 显示全部楼层
BLE模块接口是AT指令,你MCU是发送方,printf("AT+xx"),不就完了?

回传用dma灵活长度检查一下不就好了?

出0入4汤圆

 楼主| 发表于 2023-2-19 20:41:48 来自手机 | 显示全部楼层
LM5017 发表于 2023-2-19 20:27
BLE模块接口是AT指令,你MCU是发送方,printf("AT+xx"),不就完了?

回传用dma灵活长度检查一下不就好了? ...

(引用自5楼)

通过at指令来控制,还有很多状态跳转的吧?比如说模块返回值ok或者error应该怎么做,发送命令时携带的参数怎么方便调整,如何传递进去。

出10入29汤圆

发表于 2023-2-19 20:47:26 | 显示全部楼层
Landmark 发表于 2023-2-19 20:41
通过at指令来控制,还有很多状态跳转的吧?比如说模块返回值ok或者error应该怎么做,发送命令时携带的参 ...
(引用自6楼)


不同厂家BLE模块之间AT指令差别还是比较大的。基本都是自定义。

你疑问的,返回ok或者error应该怎么做,这个不就是个if elseif 的问题吗?

发送时候携带的参数,直接用 xxx/100  xxx/10%10  xxx%10 的方式,按顺序填进去串口发送队列也完事了。。

===

都是很初级的C语言问题。。。

出0入4汤圆

 楼主| 发表于 2023-2-19 20:52:21 来自手机 | 显示全部楼层
本帖最后由 Landmark 于 2023-2-19 20:58 编辑
LM5017 发表于 2023-2-19 20:47
不同厂家BLE模块之间AT指令差别还是比较大的。基本都是自定义。

你疑问的,返回ok或者error应该怎么做, ...

(引用自7楼)


好吧,是我想偷懒,是想直接复制别人的框架来用。我这个只是一个测试程序而已,并不是用在正式产品上面的

出0入42汤圆

发表于 2023-2-20 07:27:10 来自手机 | 显示全部楼层
确实以前在论坛见过at指令交互框架的

出0入55汤圆

发表于 2023-2-20 07:50:48 来自手机 | 显示全部楼层
坛里有个babyos 的系统,那里有很多模块,包括AT,都是裸机的

出0入0汤圆

发表于 2023-2-20 10:56:50 | 显示全部楼层
Landmark 发表于 2023-2-19 20:52
好吧,是我想偷懒,是想直接复制别人的框架来用。我这个只是一个测试程序而已,并不是用在正式产品上面的 ...
(引用自8楼)

让厂家提供测试从程序啊。不同型号的指令和返回会有差别,还是要针对产品进行修改的

出0入4汤圆

 楼主| 发表于 2023-2-20 11:30:01 | 显示全部楼层
kingqxj 发表于 2023-2-20 10:56
让厂家提供测试从程序啊。不同型号的指令和返回会有差别,还是要针对产品进行修改的 ...
(引用自11楼)

我能说我就是BLE模块厂家的吗?

开发完BLE程序,现在要准备测试了。

出0入1209汤圆

发表于 2023-2-20 11:34:26 | 显示全部楼层
Landmark 发表于 2023-2-20 11:30
我能说我就是BLE模块厂家的吗?

开发完BLE程序,现在要准备测试了。 ...
(引用自12楼)

说说是哪家,以后避开

出100入143汤圆

发表于 2023-2-20 11:44:12 | 显示全部楼层
https://github.com/MaJerle/lwgsm
我参考的这个框架,ST库的作者写的,现在好像弄得复杂了,我参考的时候是基于"Protothreads"做得AT框架,我已经用了好几年了,挺好用。

出0入102汤圆

发表于 2023-2-20 11:46:19 | 显示全部楼层
Landmark 发表于 2023-2-20 11:30
我能说我就是BLE模块厂家的吗?

开发完BLE程序,现在要准备测试了。 ...
(引用自12楼)

GitHub上搜“UART AT COMMAND”,挺多的,
下面这个是基于nordic芯片的,串口解析AT command
https://github.com/langxing08/nRF52832-BLE-UART

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入0汤圆

发表于 2023-2-20 12:21:49 | 显示全部楼层
Landmark 发表于 2023-2-20 11:30
我能说我就是BLE模块厂家的吗?

开发完BLE程序,现在要准备测试了。 ...
(引用自12楼)

那可以尝试用【格西调试精灵】,简单弄个上位机

出0入4汤圆

 楼主| 发表于 2023-2-20 12:37:46 来自手机 | 显示全部楼层
gsq19920418 发表于 2023-2-20 12:21
那可以尝试用【格西调试精灵】,简单弄个上位机
(引用自16楼)

谢谢,不过还是用mcu好,测试可能要跑个10天半个月。
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-4-29 07:48

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表