友讯达模块学习记录 (不适合阅读)
内容纲要

友讯达模块学习记录

1. 软件功能的使用

  • 设备可以设置为3种模式 (Master/slaver/repeater(中继) )

  • 下图的信息设置,这里就是C字段 和CI 字段中间部分 表示设备制造信息,

    M1、M2是制造商域,ID1~ID4 表示的是身份识别域

    file

    具体的帧结构如下: Data存放的是具体要发送的数据,C-Field 字段表示 是主机发给从机的标识符(当然也可以自定义),

    file

  • RSSI 是接收信号强度,注意:L 字段表示字段长度,在发送数据的时候不会把 L字段写进去,在接收时自动计算出数据帧的长度,并添加L 字段。 如果在接收时,勾选了RSSI 强度,L字段会把 RSSI 所占用的 1字节长度加进去。如下图所示

    file

  • L 字段计算长度时不包含 它自己和CRC、START、STOP位,

    file

VM_BUS帧结构

file

L字段表示整个包的长度(除去它自己),

C-field字段就是该软件中数据包类型的字段,可以参考下方数据接收的案例

file

file

file

2. 对WMBus 数据帧字段的解释

模式: 正常模式,安装模式,监听模式

  • 正常模式:只接收存在于Slave 的列表中的终端,其余的自动过滤掉。
  • 安装模式:它将接受所有的安装请求数据包。
  • 监听模式:接收所有数据包
  1. C 模式(”紧凑模式“)

    file

  2. T 模式(”频繁发送模式“)

    file

  • 工作模式的设置

    1. 寄存器地址设置

      配置选项 寄存器地址 16进制设置值(返回值) 默认值 注意
      工作模式 0x01 0 : S2
      1 : T1
      2 : T2
      3 : S1
      4 : R
      10 : C1
      11 : C2
      0x01
      AT命令配置
      工作模式 "ATG" 0x00 - 0x04
      0 : S2
      1 : T1
      2 : T2
      3 : S1
      4 : R
      10 : C1
      11 : C2
      掉电

Slaver 可以和Master 通过地址寄存器来进行绑定,

  1. 使用寄存器进行帮绑定Slaver

    配置项 寄存器地址 设置值(返回值) 默认值 注意事项

    file

  2. 使用AT 指令来绑定

    file

设置角色信息

  1. 通过寄存器来设置

    file

  2. 通过AT指令来设置

WM_BUS 使用遇到的问题和解决方案

  • Q:设置主从,slaver 发送数据主机为何收不到?

    A:Master 必须绑定Slaver 的 M字段和 A字段,否则Slave 发送的数据 Master 会视而不见

  • Q:为什么Master 和Slaver 可以乱发数据?(直接上电相互发送数据,都可以接收到)

    A:工作模式默认位Listing 模式,该模式可不会管你是不是主从,只要有数据它都会接收到。

  • A:这里的通讯协议只是一个手段,但是里面的数据格式和类型都是可以随意的,只是在于解析数据的时候确保该数据能被人区分。因此,我理解为主从设备互相发的消息都能被接收到,只是接收之后是否存放在本地的地址。

    such as:

    file

    这里并没有开始接收数据,但是该软件还是收到了Master 发送的消息。只是没有存到本地而已

  • Q:那么如果有多个Master 呢,多个Master发布信息,但是Slaver 都会挨着接收,难道一定要接收了之后解析过M字段 和A字段 之后才能判断是不是我的Master?

做个流程图:T1 模式,接收数据之类 ,等待回复。姚哥那边设备做slaver ,我这里的模块发送消息,要让那边能接收到。

  • 初始化阶段
  1. 使用AT 或者 ATJ 进入 配置模式/寄存器配置模式
  2. 安装模式设置为0 正常模式,
  3. 模块角色设置为Slaver
  4. WMbus 模式设置为T1或者C1,T1和C1有点像,T1是频繁发送模式。C1是紧凑模式
  5. 波特率就是用默认的19200
  • 数据获取阶段
  1. 使用读寄存器读取到类似于下图的这块编码,方便Master 绑定子设备(如果是寄存器配置模式,也许能直接拿到返回值)

    file

    file

    file

  2. 发送数据,应该是0x35这个数据发送寄存器

    file

  • 今天遇到的问题以及方案
  1. Master 发送数据的时候,如果是Listing 可以随机收到Slaver 发送的帧

读取/设置模块当前工作模式
读取/设置模块当前角色信息

开始/结束接收数据

file

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇