CMUX

作者:闫俊杰 ##### CMUX是指串口多路复用。串口的多路复用器模式,就是使一个串行接口能够将数据传输到四个不同的客户应用程序。


要在Linux下使用模块的CMUX功能,需要在内核中开启相应的支持,开启方法见下图

image1 image2


将Air724UG开发板UART1连接到Linux客户端,使用AT+CMUX命令开启CMUX功能

语法规则

命令类型

语法

返回

设置命令

AT +CMUX=[<mode>[,<subse t>[,<port_speed>[,<N1 >[,<T1>[,<N2>[,<T2>[, <T3>[,<k>]]]]]]]]]

OK

查询命令

AT+CMUX?

+CM UX:[<mode>[,<subset>[ ,<port_speed>[,<N1>[, <T1>[,<N2>[,<T2>[ ,<T3>[,<k>]]]]]]]]]OK

测试命令

AT+CMUX=?

+CMUX:( <mode>),(<subset>s),( <port_speed>s),(<N1>s ),(<T1>s),(<N2>s),(<T 2>s),(<T3>s),(<k>s)OK

参数定义

<mode>定义:复用透传机制
    取值:0
    取值说明:基本选择
<subset>定义:控制通道的复用器建立的方式
    取值:0
    取值说明:仅使用UIH 包文
<port_speed>定义:传输速率,单位为 bits/s
    取值:1
    取值说明:9600
    取值:2
    取值说明:19200
    取值:3
    取值说明:38400
    取值:4
    取值说明:57600
    取值:5
    取值说明:115200
    取值:6
    取值说明:230400
    取值:7
    取值说明:460800
<N1>定义:最大报文大小
    取值:1-255
    取值说明:默认:127
<T1>定义:接收 timer,以 10ms 为单位
    取值:1-255
    取值说明:默认:10(100 ms)
<N2>定义:重传的最大数量
    取值:0-100
    取值说明:默认:3
<T2>定义:复用器控制通道的响应定时器,以10ms 为单位
    取值:2-255
    取值说明:默认:30
<T3>定义:唤醒响应定时器,以秒为单位
    取值:1-255
    取值说明:默认:10
<k>定义:窗口大小,适用于有错误恢复选项的高级操作
    取值:1-7
    取值说明:默认:2