AWorks框架下GPS接口的编程与应用
物联智能时代,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所示。
图2 GPS模块工作流程
当用户需要使用某个设备时,在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。
图片新闻
最新活动更多
-
即日-11.13立即报名>>> 【在线会议】多物理场仿真助跑新能源汽车
-
11月28日立即报名>>> 2024工程师系列—工业电子技术在线会议
-
11月29日立即预约>> 【上海线下】设计,易如反掌—Creo 11发布巡展
-
11月30日立即试用>> 【有奖试用】爱德克IDEC-九大王牌安全产品
-
12月19日立即报名>> 【线下会议】OFweek 2024(第九届)物联网产业大会
-
即日-12.26火热报名中>> OFweek2024中国智造CIO在线峰会
发表评论
请输入评论内容...
请输入评论/评论长度6~500个字
暂无评论
暂无评论