单片机/STM32通用的AT命令支持程序

每次通过串口调试程序,需要通过命令来实现和配置参数,每次都需要单独写数据解析和判断,而且数据校验,这个是比较繁琐的事情,因此把几年前写的一个AT指令集支持程序改写到了单片机上。相比之前的版本,没有了动态加载和删除指令的功能,指令集列表通过const数据类型保存在flash空间中,节省单片机宝贵的RAM资源。

运行在stm32上面的程序示例:

头文件:

#ifndef __AT_MASTER_H_
#define __AT_MASTER_H_


typedef struct
{
    unsigned short cmd_type;                     //参数类型  0:无类型,不需要检查数据是否合法   1:数字类型     2:字符串类型       3:浮点数据类型
    int dat_1;                                  //数字类型时:dat1为最小值,dat2为最大值,字符串时为字符串长度最小最大限制
    int dat_2;
}cmd_parm_type;



typedef struct
{
    char *cmd_name;
    unsigned short parm_num;
    const cmd_parm_type *parm_list;
    int (*cmd_func)(int, char*[]);
}at_cmd_type;


//定义参数类型
#define AT_PARM_NOTYPE      ((int)0)
#define AT_PARM_INT         ((int)1)
#define AT_PARM_STR         ((int)2)
#define AT_PARM_FLOAT       ((int)3)


#define AT_CMD_MAX_PARM_CNT 
  • 3
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
机械手臂是一种能够模拟人类手臂运动的机械装置,常用于工业自动化和科研领域。机械手臂的核心是控制系统,控制系统可以使用各种单片机进行编程实现。对于机械手臂的控制,可以选择使用arduino、STM32或51单片机等开源硬件平台。 使用arduino进行机械手臂控制编程是一种常见的选择。arduino是一款简单易用、开源的单片机开发板,具有丰富的周边工具和库函数支持。通过arduino与机械手臂的连接,可以通过编程实现手臂的协调运动、精确定位等功能。在arduino的开发环境中,我们可以使用C/C++编写程序,通过对串口和GPIO等接口的操作来控制各个关节的运动。 与arduino相比,STM32是一款功能更强大的单片机,具有更高的计算性能和更多的外设接口。使用STM32进行机械手臂的控制编程可以实现更加复杂和精确的运动控制。STM32的开发环境是基于Keil或STM32CubeIDE等工具,我们可以使用C语言或者用C++进行编程,通过对定时器、PWM信号、CAN总线等进行操作来控制机械手臂的运动。 51单片机是一款经典的单片机,使用广泛,但相对于arduino和STM32而言,功能和性能有所限制。使用51单片机进行机械手臂的编程可以实现基本的运动控制功能,但不如arduino和STM32那样灵活和强大。 总结来说,使用arduino、STM32或51单片机进行机械手臂的编程可以实现6个自由度的控制。在开源硬件平台中,arduino是入门级的选择,适合初学者进行控制编程。STM32具有更好的性能和扩展性,适合需要更复杂控制的应用场景。51单片机则是功能相对受限的选择,适合一些简单的控制需求。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值