【技术分享】基于M6Y2C平台实现LoRa远距离传输

您所在的位置:网站首页 lora传输距离有多远 【技术分享】基于M6Y2C平台实现LoRa远距离传输

【技术分享】基于M6Y2C平台实现LoRa远距离传输

2023-06-27 18:00| 来源: 网络整理| 查看: 265

想要使用LoRa远距离稳定可靠的传输数据?又不知道从何下手?本文将向您介绍ZSL421 LoRa智能组网芯片,以及在M6Y2C使用ZSL421 LoRa模块进行数据通信的实操案例。

2ef9f244-c37a-11ed-ad0d-dac502259ad0.jpg 移植准备

1. 简介LoRa全称为远距离无线电(Long Range Radio)是一种线性调频扩频调制技术,具有传输距离远、低功耗、组网灵活等诸多优势。

ZSL421 LoRa 智能组网芯片是致远电子自主研发的LoRa智能组网芯片,该产品集成无线收发器,超低功耗MCU,射频收发匹配电路和滤波电路。支持自组网透传协议、LoRaNET、LoRaWAN、LinkWAN、CLAA等软件组网协议。

2. 平台选择

M6Y2C是一款工业控制核心板,如图2所示,采用NXP Cortex-A7 800MHz主频的处理器,以先进的电源管理架构带来更低功耗。M6Y2C标配8路UART、2路USB OTG、2路CAN-Bus、2路以太网等接口;标配128/256/512MB DDR3和128/256MB NAND Flash、硬件看门狗等。

使用的LoRa模块是基于ZSL42x LoRa智能组网芯片的PCIE-ZSL421 LoRa模块,如图1所示。2f075d44-c37a-11ed-ad0d-dac502259ad0.png

图1

3. 硬件连接将PCIE-ZSL421插入PCIE座子即可,如图2所示。2f3f0cda-c37a-11ed-ad0d-dac502259ad0.png

图2

2ef9f244-c37a-11ed-ad0d-dac502259ad0.jpg 开始适配

1. 设备树修改

为了方便开发使用,PCIE-ZSL421模块里面已有出厂固件,我们只需要配置相应的串口,对该模块进行配置及通信即可,打开核心板对应的设备树文件,使能硬件对应的串口,如下:

&uart5 { pinctrl-names = "default"; pinctrl-0 = ; status = "okay";};

在iomux节点下添加对应引脚的电气属性。

pinctrl_uart5: uart5grp { fsl,pins = ;};

配置完后编译烧录即可。

2ef9f244-c37a-11ed-ad0d-dac502259ad0.jpg 模块调试

烧录完成后,我们需要通过刚刚适配的串口对PCIE-ZSL421模块进行调试,调试时我们借助ZSL42x-EVB Board板子以及Wireless Tool APP,使用USB线将电脑与ZSL42x-EVB Board板子连接后,打开Wireless Tool 连接ZSL42x-EVB Board,点击红框的按钮然后连接即可,如图3所示。(注:该工具可以在ZSL42x资料下载页面获取)2f713a0c-c37a-11ed-ad0d-dac502259ad0.png图3

连接后将设备地址设置为2002,设置信道为信道1,使能透传功能,设置目标地址为2001,如图4所示,设置完后点击右上角的保存图标进行保存。

2f83afb6-c37a-11ed-ad0d-dac502259ad0.png图4WirelessTool配置使用串口连接到核心板的调试串口,输入以下命令对PCIE-ZSL421进行配置。设置串口波特率:

stty -F /dev/ttymxc4 raw speed 115200 cs8 -parenb -cstopb -echo min 0 time 50

设置PCIE-ZSL421地址为2001:

echo -n -e "\x7e\x00\x00\x00\x03\x00\x00\x19\x00\x9a" > /dev/ttymxc4echo-n-e"\x7e\x00\x00\x00\x06\x00\x03\x06\x02\x20\x01\x00\xb0">/dev/ttymxc4

使能PCIE-ZSL421透传模式:

echo -n -e "\x7e\x00\x00\x00\x03\x00\x00\x19\x00\x9a" > /dev/ttymxc4echo-n-e"\x7e\x00\x00\x00\x04\x00\x03\x09\x01\x00\x8f">/dev/ttymxc4

设置PCIE-ZSL421目标地址为2002:

echo -n -e "\x7e\x00\x00\x00\x03\x00\x00\x19\x00\x9a" > /dev/ttymxc4echo-n-e"\x7e\x00\x00\x00\x08\x00\x03\x1b\x00\x02\x20\x02\x04\x00\xcc">/dev/ttymxc4

设置PCIE-ZSL421信道为信道1:

echo -n -e "\x7e\x00\x00\x00\x03\x00\x00\x19\x00\x9a" > /dev/ttymxc4echo-n-e"\x7e\x00\x00\x00\x04\x00\x03\x07\x01\x00\x8d">/dev/ttymxc4

配置完成后就可以当串口来使用了。

现在开始进行通信,首先在PC端关闭Wireless Tool,打开串口工具,设置波特率为115200,8n1,如图7所示,就可以进行测试,测试结果如图5所示。2fb4c880-c37a-11ed-ad0d-dac502259ad0.png2fdc85aa-c37a-11ed-ad0d-dac502259ad0.png图5PCIE-ZSL421通信结果



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3