定位模组LuatOS快速入门:源UART串口通信
合宙Air201资产定位模组——是一个集成超低功耗4G通信、语音通话、超低功耗定位、计步、震动、Type-C、充电、放音、录音等功能的超小PCBA。
内部集成高效、简单、可靠的LuatOS语言,旨在帮助客户降低开发难度,降低研发成本,以及打造超小超低功耗的精品产品。
合宙Air201快速入门-UART示例使用说明-

本教程教你通过使用脚本代码,实现Air201的main_uart串口交互功能,可根据实际需求灵活应用。
我们先了解一些相关基础知识:
UART(通用异步接收器/发送器,全称:Universal Asynchronous Receiver/Transmitter)——是一种串行通信协议,因其多功能性和简单性而被广泛使用。
该协议允许异步通信,也就是说发送器和接收器之间无需共享时钟。数据被组织成数据包,每个数据包包含一个起始位、5到9个数据位、一个可选的奇偶校验位和一个或两个停止位。
UART只需要两条线即可运行:TX(发送)和 RX(接收)。
UART通信优点:
UART被广泛应用于各种设备之间的通信,具有较好的兼容性。
- UART通信协议相对简单,易于实现和调试。
UART通信距离较远,适用于需要长距离传输的场景。
UART也有通信速度相对较低等缺点,不适用于对速度要求较高的应用。由于UART是异步通信,可能会受到噪声和干扰的影响,需考量实际应用环境及需求。
接下来,我们讲解UART示例的具体使用。
1. 搭建环境
新同学建议先看前期的基础知识相关教程,更有助于理解和操作。
可以在LuaTools项目管理中新建一个项目,重新选择底层CORE和脚本;或者在原有项目的基础上,不更换CORE,将原来的脚本删除,添加为demo/uart的脚本。
1.1 硬件准备:
合宙Air201 PCBA
合宙Air201-BTB扩展版
Win10以上PC
SIM卡一张
带有数据通信功能的数据线

如上图所示,如果直接使用Air201上的main_uart串口,需要在4G_UART1_RXD和4G_UART1_TXD处引出线;
也可以连接B2B扩展板,直接接入板子上的main_uart串口。


1.2 软件准备:
LuaTools调试工具:
https://docs.openluat.com/Luatools/最新固件:
https://gitee.com/openLuat/LuatOS-Air201/tree/master/core最新脚本:
https://gitee.com/openLuat/LuatOS-Air201/tree/master/demo/uart串口工具:
https://llcom.papapoi.com/index.html
2. 调试代码
使用克隆的代码进行测试,代码路径:
LuatOS-Air201\demo\uart\uart
2.1 初始化UART
使用MAIN_UART(uart1)串口:

2.2 发送数据

2.3 注册接收数据的回调函数

2.4 完整例程

3. 代码烧录
新同学可以查看参考详细烧录教程:
https://docs.openluat.com/Luatools/
1)选对应的固件版本;
2)选择对应的脚本,选择添加默认lib,勾选免BOOT刷脚本;
3)固件版本不变的情况下,直接选择下载脚本即可。

4. 示例效果
4.1 串口接收展示

4.2 模组打印log

以上就是今天的全部内容,感谢收看。
定位模组LuatOS快速入门:源UART串口通信的更多相关文章
- 【C51】UART串口通信
我们常需要单片机和其他模块进行通信,数据传输,常用的方式就是串口通信技术. 常用来 单片机<-->电脑, 单片机<-->单片机之间通信. 串行通信 versus 并行通信 并 ...
- Win10 IoT C#开发 4 - UART 串口通信
Windows 10 IoT Core 是微软针对物联网市场的一个重要产品,既可以开发设备UI与用户交互式操作,又可以控制GPIO等接口,使得原来嵌入式繁琐的开发变得简单.通过Remote Debug ...
- 中科微北斗定位模组ATGM336H简介
36H系列卫星定位模块 产品介绍 ATGM336H是高灵敏度,支持BDS/GPS/GLONASS卫星导航系统的单系统定位,以及任意组合的多系统联合定位的接收机模块.ATGM336H基于本公司自主独立研 ...
- 【ARM】2410裸机系列-uart串口通信
开发环境 (1)硬件平台:FS2410 (2)主机:Ubuntu 12.04 FS2410串口的原理图 串口UART寄存器配置 配置TXD0与RXD0(GPH2.GPH3) 设置波特率(UBRDI ...
- UART串口通信
#include "sys.h" #include "delay.h" #include "usart.h" u8 rdata[]; UAR ...
- FPGA nios通过驱动LCD12864实现菜单界面和uart串口通信
因为csdn无法插入视频,无法展示我这个实现的效果,这里我截了一些图,应该基本上也能明白了: 基本功能就是如图片所示,里面采用了菜单结构(这里编程需要一定得c语言编程技巧与数据结构知识),gpa是什么 ...
- 【iCore3 双核心板_FPGA】实验二十五:NIOS II之UART串口通信实验
实验指导书及代码包下载: http://pan.baidu.com/s/1eRMZq18 iCore3 购买链接: https://item.taobao.com/item.htm?id=524229 ...
- 【iCore4 双核心板_FPGA】实验二十:NIOS II之UART串口通信实验
实验指导书及源代码下载地址: 链接:https://pan.baidu.com/s/1g_tWYYJxh4EgiGvlfkVu1Q 提取码:dwwa 复制这段内容后打开百度网盘手机App,操作更方便哦 ...
- vue 快速入门 系列 —— 侦测数据的变化 - [vue 源码分析]
其他章节请看: vue 快速入门 系列 侦测数据的变化 - [vue 源码分析] 本文将 vue 中与数据侦测相关的源码摘了出来,配合上文(侦测数据的变化 - [基本实现]) 一起来分析一下 vue ...
- 手把手教你基于luatos的4G(LTE Cat.1)模组接入华为云物联网平台
摘要:本期文章采用了4G LTE Cat.1模块,编程语言用的是lua,实现对华为云物联网平台的设备通信与控制 本文分享自华为云社区<基于luatos的4G(LTE Cat.1)模组接入华为云物 ...
随机推荐
- 使用 refreshNuxtData 刷新 Nuxt应用 中的数据
title: 使用 refreshNuxtData 刷新 Nuxt应用 中的数据 date: 2024/8/21 updated: 2024/8/21 author: cmdragon excerpt ...
- electron-builder打包配置说明
发现问题 通过vue建立的项目使用electron-builder打包(不会eletron打包vue项目的看这里)出exe后发现名字就直接是项目文件夹的名字,但此时想自定义汉字名称,通过尝试直接修改p ...
- mysql vs mongodb
Comments MongoDB 是NoSQL 数据库,适合存JSON格式数据,MySQL是关系型数据库,适合存table格式数据 MongoDB扩展性更好,MySQL支持主从和cluster但是感觉 ...
- 使用 nuxi preview 命令预览 Nuxt 应用
title: 使用 nuxi preview 命令预览 Nuxt 应用 date: 2024/9/8 updated: 2024/9/8 author: cmdragon excerpt: 摘要:本文 ...
- JavaScript – 理解 Function, Object, Prototype, This, Class, Mixins
前言 JavaScript (简称 JS) 有几个概念 Object, Prototype, This, Function, Class 是比较难理解的 (相对其它语言 C# / Java 而已),这 ...
- Sqoop简介安装及使用
Sqoop简介 sqoop 是 apache 旗下一款"Hadoop 和关系数据库服务器之间传送数据"的工具. 核心的功能有两个: 导入.迁入 导出.迁出 导入数据:MySQL,O ...
- 【赵渝强老师】Weblogic域和域的组成
一.什么是Weblogic WebLogic是美国Oracle公司出品的一个application server,确切的说是一个基于Java EE架构的中间件,WebLogic是用于开发.集成.部署和 ...
- UEFI原理与编程(一)
第一章 UEFI概述(Unified Extensible Firmware Interface 统一的可扩展固件接口) 常见缩写及描述: 缩略词 全名 描述 UEFI Unified Extensi ...
- 2023年2月中国数据库排行榜:OTO新格局持续三月,人大金仓、AnalyticDB排名创新高
玉兔迎春至,榜单焕新颜. 2023年2月,兔年开年的 墨天轮中国数据库流行度排行 火热出炉,本月共有259个数据库参与排名,排行榜样式去掉了较上月和半年前得分差的数据显示,更加聚焦各产品之间的排名变化 ...
- 小程序的json文件
json文件是页面的描述文件,对本页面的窗口外观设置,页面的配置可以覆盖全局的配置 (app.json);