0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何快速在AWorks OS操作系统中开发并稳定应用GPS模块

AGk5_ZLG_zhiyua 来源:YXQ 2019-07-10 08:59 次阅读

物联智能时代,GPS定位应用愈发广泛,如何快速应用GPS定位模块,稳定有效的获取定位信息,缩短项目周期是至关重要的。本文就如何快速在AWorks OS操作系统中开发并稳定应用GPS模块进行详细介绍。

GPS简介

GPS是Global Positioning System(全球定位系统)的简称,由美国国防部组织研制,具有全方位、全天候、全时段、高精度特点的军民两用的导航定位卫星系统。在获取定位数据时通常会将GNSS、BDS、GPS包含进来,三者说明如表1所示。

表1

GNSS包含了BDS、GLONASS、GALILEO、GPS、MASS、GAGAN等全球卫星导航系统,是一个包含了全球各卫星导航系统的统称,定位数据通常包含了多种信息类型,如图1所示。

图1 定位数据

图1中有多种信息类型,如表2所示。

表2

不同的数据类型里有不同的数据内容,不同的数据代表不同信息,数据量较多需要按位进行数据解析,在AWorks平台中,已经将数据解析这一步处理完成,可以供用户直接使用,不用再去考虑数据解析的问题就可得到定位信息。

AWorks外设使能配置

用户使用GPS模块定位分为两个步骤:

通讯方式的选择配置

解析定位数据得出结果

在AWorks平台使用GPS模块时,工作流程如图2所示。

图2GPS模块工作流程

当用户需要使用某个设备时,在AWorks工程中用户可以通过aw_prj_params.h配置文件设备宏使能进行设备添加与删除,在aw_prj_params.h文件中,每一个设备宏代表着一个硬件

本例程中选用的GPS模块是瑞士U-blox公司所生产的MAX-7Q系列模块,具有支持GPS/QZSS/GLONASS定位,无需AT指令控制、默认波特率9600、上电自动定位的特点。

在例程中选用串口3与GPS模块进行通讯,因此在aw_prj_params.h中使能AW_DEV_IMX1050_LPUART3(串口宏),具体选用哪一个串口进行通讯由用户自行决定。

在使用不同硬件设备时打开不同硬件设备宏,在本例程中使用GPS设备,因此打开AW_DEV_GNSS_UBLOX(GPS模块宏),如程序清单2.1所示。

程序清单2.1

AWorks中GPS的硬件配置

在AWorks中所有设备由AWbus_lite进行集中管理,在使用一个硬件设备前,必须将其添加到系统硬件设备列表aw_const struct awbl_devhcf g_awbl_devhcf_list[] 中(在awbus_lite_hwconf_usrcfg.c中定义),awbl_devhcf结构体成员如程序清单3.1所示。

程序清单3.1

在使用GPS模块时,设备管理列表g_awbl_devhcf_list[] 中已包含硬件设备名,其中GPS硬件配置信息如程序清单3.2所示。

程序清单3.2

其中指向设备信息(常量)如:与MCU通讯的串口号、波特率、需要使用的引脚等,具体信息详见程序清单3.3所示。

程序清单3.3

配置完通讯接口后还需要调用解析数据的GNSS文件,包含了NMEA-0183协议解码驱动、GNSS接口文件,详见程序清单3.4,所在位置为程参数自动配置文件aw_pri_param_auto_cfg.h 中。

程序清单3.4

AWorks中GPS的接口与参数说明

在GPS模块接收到数据后,通过串口与MCU进行数据传输,在AWorks中已经完成数据的解析等,用户不再需要解析数据格式,只需调用相关接口即可,接口说明如表3所示。

表3 接口与参数

其中aw_gnss_ioctl_req_t为命令请求,原型详见程序清单4.1。

程序清单4.1

aw_gnss_data_type_t是需要获取的数据类型,详见程序清单4.2。

程序清单4.2

如用户在调用AW_GNSS_RMC_POSITION数据类型时,系统会自动解析对应的数据,如经纬度、时间等值,用户可免去繁琐的数据解析步骤。

应用案例代码详解

此应用基于M1052平台演示,展示部分应用代码,详见程序清单5.1。

程序清单5.1

验证结果

通过调用程序清单5.1,得出如图3所示定位信息。

图3 定位信息

由图3得出应用例程中所需的结果,如表4所示

表4 数据结果

通过表4,将经纬度坐标代入到地图,如图4所示。

图4

通过坐标数据代入,定位位置与实际位置相同,精度可靠。可见在AWorks平台下使用GPS模块定位,免去了大量时间,不用考虑AT指令的实现、上电时序的考虑即可得到所需的结果。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 操作系统
    +关注

    关注

    37

    文章

    6279

    浏览量

    121868
  • GPS定位
    +关注

    关注

    4

    文章

    76

    浏览量

    22158

原文标题:AWorks框架下GPS接口的编程与应用

文章出处:【微信号:ZLG_zhiyuan,微信公众号:ZLG致远电子】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    航天宏图推出新一代卫星操作系统PIESAT-OS 1.0版

    和满足卫星任务快速开发和资源优化需求的必要途径。然而,研发新一代卫星操作系统的过程极具挑战性。面对这些高标准需求,航天宏图公司凭借卓越的技术实力和前瞻性的创新思维,重磅推出了新一代卫星操作系统
    的头像 发表于 01-03 10:57 412次阅读
    航天宏图推出新一代卫星<b class='flag-5'>操作系统</b>PIESAT-<b class='flag-5'>OS</b> 1.0版

    LabVIEW不同操作系统上使VI、可执行文件或安装程序

    不同操作系统之前,确保硬件的所需驱动程序操作系统受支持。例如,使用DAQmx 9.8开发的应用程序
    发表于 12-02 21:47

    从芯片到操作系统,手机厂商的操作系统混战卷到了智能手表

    向,能够给手机厂商带来新的竞争力。   但风向归风向,新操作系统在刚推出时,也会面临不少问题。近期小米澎湃OS系统出现bug的话题冲上“热搜”,不过业内人士表示该问题仅出现在开发版,正
    的头像 发表于 11-22 01:09 1447次阅读
    从芯片到<b class='flag-5'>操作系统</b>,手机厂商的<b class='flag-5'>操作系统</b>混战卷到了智能手表

    鸿蒙 OS 应用开发初体验

    操作系统平台和开发框架。HarmonyOS 的目标是实现跨设备的无缝协同和高性能。 DevEco Studio 对标 Android Studio,开发鸿蒙 OS 应用的 IDE。
    发表于 11-02 19:38

    开源操作系统大全

    运行程序。 2、ToAruOS ToAruOS 是一个由伊利诺伊大学计算机科学本科生开发的业余爱好操作系统,其代码托管 GitHub 上。ToAruOS 可在 P OSIX 和 x86 架构上运行,其
    发表于 10-27 15:13

    鸿蒙操作系统的前世今生

    能力整合,可以实现不同终端设备之间的快速连接、能力互助、资源共享,匹配合适的设备、提供流畅的全场景体验。 对应用开发者而言, 鸿蒙操作系统采用了多种分布式技术,使应用程序的开发实现与不
    发表于 10-08 19:55

    嵌入式操作系统IJLC/OS一Ⅱ通信电源监控应用

    系统可编程nash,4 kByte的SRAM和EEPROM。同时带有8路10位A/D转换器及1个可用于程序下载的SPI串行口.并且已应用于中兴的第三代组合电源ZXDU300A(3.0),为
    发表于 09-20 06:46

    使用MDK构建Mbed操作系统项目

    ARM med OS是一款免费、开源的物联网操作系统,具有连接性、安全性、存储、设备管理和机器学习功能。 它包括开发基于ARM Cortex-M微控制器的互联产品所需的所有功能,包括安全性、连接性
    发表于 08-25 07:01

    linux是实时系统还是分时操作系统

    大家平时玩单片机基本上对于µC/OS、FreeRTOS、ThreadX这些操作系统非常熟悉了,他们都属于实时操作系统(RTOS),在工业领域比较广泛;
    的头像 发表于 08-18 09:48 1307次阅读

    国产操作系统AWorks LP — 科技自立自强的排头兵

    ZLG致远电子一直在科技仪器设备、操作系统国产化道路深耕多年,推出的新一代国产化工业物联网解决方案:AWorksLP操作系统搭配国产MR6450核心板,助力用户快速开发出具有市场竞争力
    的头像 发表于 08-03 08:28 321次阅读
    国产<b class='flag-5'>操作系统</b><b class='flag-5'>AWorks</b> LP — 科技自立自强的排头兵

    【技术分享】国产操作系统AWorks LP — 科技自立自强的排头兵

    ZLG致远电子一直在科技仪器设备、操作系统国产化道路深耕多年,推出的新一代国产化工业物联网解决方案:AWorks LP操作系统搭配国产MR6450核心板,助力用户快速
    的头像 发表于 08-02 11:45 301次阅读
    【技术分享】国产<b class='flag-5'>操作系统</b><b class='flag-5'>AWorks</b> LP — 科技自立自强的排头兵

    FreeRTOS:一个迷你的实时操作系统内核

    、协程等,可基本满足较小系统的需要。由于RTOS需占用一定的系统资源(尤其是RAM资源),只有μC/OS-II、embOS、salvo、FreeRTOS等少数实时操作系统能在小RAM单
    的头像 发表于 06-29 17:15 516次阅读
    FreeRTOS:一个迷你的实时<b class='flag-5'>操作系统</b>内核

    RT-Thread操作系统有哪些优势?

    快速模块化裁剪,无缝地导入丰富的软件功能包,实现类似 Android 的图形界面及触摸滑动效果、智能语音交互效果等复杂功能。 相较于 Linux 操作系统,RT-Thread 体积小,成本低,功耗低
    发表于 06-28 08:16

    OS实验目标(2)#操作系统

    操作系统
    学习硬声知识
    发布于 :2023年05月31日 22:44:27

    为什么不用Go开发操作系统

    操作系统 (OS) 是计算机系统的心脏和灵魂,它管理着计算机的硬件和软件资源,并为用户提供与计算机交互的方式。传统上,C 和 Assembly 等语言因其低开销和 “接近机器码” 的特性而被用于
    的头像 发表于 05-26 15:09 318次阅读
    为什么不用Go<b class='flag-5'>开发</b><b class='flag-5'>操作系统</b>?