b2科目四模拟试题多少题驾考考爆了怎么补救
b2科目四模拟试题多少题 驾考考爆了怎么补救

如何实现具有GPS功能的移动设备?

电脑杂谈  发布时间:2020-04-22 01:19:10  来源:网络整理

移动qq功能_移动wlan功能是什么_移动设备功能

答案对人们有帮助,并具有参考价值

2总体设计

该设计主要基于GPS数据信号流. 通过串口将GPS数据信号读入开发板的主程序,对数据信号进行解码,获取当前位置的经纬度信息,再查询经纬度,获取名称. 当前位置. 人机交互.

2.1串行端口驱动程序

移动qq功能_移动wlan功能是什么_移动设备功能

Microsoft eMbedded Tools封装了Windows API函数,以促进Windows CE应用程序的开发. 在Windows CE中,所有设备均视为文件. 可以通过API通信功能(例如访问普通文件)来实现串行通信. 系统的虚拟驱动程序负责执行特定任务. 在Windows CE下,串行端口被视为用于打开,关闭和读写串行端口的常规可安装流设备. 它是串行设备接口和与通信相关的特定功能的常规I / O驱动程序调用. 结合. Windows CE的通信功能类似于大多数其他Windows的通信功能. 值得注意的是,Windows CE不支持直接对串行端口的寄存器进行编程.

2.1.1打开和关闭串行端口

CreateFile函数用于打开串行端口. m_hDSComm = CreateFile(_T(" COM2: ")),GENER2IC_READ | GENER IC_WR ITE,0,NULL,OPEN_EXISTIN-G,0,NULL). 请注意,COM2后面有一个冒号. 第三个参数dwShareMode也必须为O,并且不能像文件一样共享通信端口. 最后一个参数dwFlagsAnd-Attributes必须为0,因为Windows CE仅支持非重叠的I / O. 此函数的返回值是打开的串行端口或INVALLD_HANDLE_VALUE的句柄. 关闭串行端口可以调用CloseHandle(m_hDSComm).

2.1.2串行端口参数设置

串行端口设置主要用于通过DCB配置来配置端口设置,包括波特率,停止位,数据位长,奇偶校验位,流控制和超时值等. 首先打开串行端口,使用GetCommState函数获取当前打开的串行端口配置,然后根据需要修改DCB成员,最后使用SetCommState函数设置新的串行端口配置.

移动设备功能_移动qq功能_移动wlan功能是什么

2.1.3设置缓冲区大小和超时

对于串行端口,必须设置超时值,否则程序可能陷入循环以等待串行端口中的字符. 对于使用WindowsCE的设备,这将大大减少设备的电池寿命,因此必须配置超时值. 另一个解决方案是使用多线程. 通常,配置超时值与配置串行端口相似. 首先使用GetCommTi-meouts函数获取当前串行端口的超时值,然后修改COM2MTIMEOUTS成员,最后使用SetCommTimeouts函数设置超时值.

2.1.4读写串行端口

使用ReadFile和WriteFile函数读取和写入串行端口. 应该注意的是Windows CE不支持重叠的I / O,因此如果主线程执行大量的读写串行端口操作,则可能导致整个程序陷入缓慢的串行端口等待,因此通常线程用于读取和写入运行的串行端口.

2.2 GPS数据处理

移动wlan功能是什么_移动qq功能_移动设备功能

GPS数据处理模块的设计方案如图1所示. GPS接收模块通过串行端口2将定位数据(NMEA0183 Ver2.0)发送到开发板,然后由应用程序处理数据. 在VS2005中,直接使用串行通信方法读取定位数据,然后对定位数据进行分类,并提取所需的信息,并将这些有用的信息传递给主应用程序,然后将主应用程序传递给GPS模块控制信息被组织为NEMA0183 VER2.0语句.

2.3信号接收和处理

GPS接收到位置信号后,系统将分解GPS定位信息并提取有用的数据. GPS信号接收和处理的过程是: 将GPS输出数据通过串行端口2传递到开发板,开发板主程序获取目标的当前位置(经纬度坐标),并分解通过获取当前目标位置和格林威治时间(此时间加上8小时是我们的标准时间),然后在经纬度中查询当前位置以获得当前的特定位置名称.

随着开发板的移动,纬度和经度不断变化. 显示控件时,必须设置计时器以更新该值. 该程序设置为1s. 如果在实际应用中移动速度非常快,则可以设置TIMER更新值. 变小.

移动qq功能_移动设备功能_移动wlan功能是什么

2.4人机界面设计

该系统使用分辨率为420×272的三星TFT显示屏. 人机界面的基本功能包括串行端口选择控制,波特率选择控制,经纬度显示框,位置显示框,“搜索星形”具体的交互界面设计如图2所示. 两个串行端口和波特率控件分别是串行端口选择和波特率选择. 其中,串行端口选择控件提供串行端口1和串行端口2进行选择. 波特率控件提供了三种设置,分别是4800、9600和19200. “搜索星形”按钮打开相应的串行端口,并开始从GPS接收模块接收数据. “位置查询”按钮用于显示实际的本地位置名称. 找到星星后,按此按钮可查询经纬度以找到相应的位置名称. 底部的文本框显示原始数据流.

3操作系统移植

WinCE 5.0操作系统的移植主要基于用于BSP开发的硬件平台. BSP基于WinCE 5.0平台系统的主要部分移动设备功能,它主要由一些源文件和二进制文件组成,也称为主板支持软件包,它主要由引导加载程序(bootloader),OEM适配层程序(OAL)组成)相关硬件设备的驱动程序的软件包,此外,上层应用程序也可以放置在BSP中. 在BSP中,它通过OAL链接到系统核心,并且驱动程序和系统配置文件与OAL层相关,以完成驱动器设备和配置系统的功能. 在BSP之外,我们可以看到基于硬件平台构建的主板支持包. 在开发过程中,您可以使用开发板操作员提供的BSP软件包来自定义操作系统. 自定义完成后,将其固化到Nandflash中.

4次测试

由于开发板的串行端口2直接连接到GPS接收模块的串行端口,因此串行端口设置将选择串行端口2. 波特率应与GPS模块匹配,并设置为4800. GPS模块在上电后立即启动,无法关闭,因此请单击“搜索星星”按钮以接收数据. 启动“搜索星标”按钮约1分钟后,将显示正确的纬度和经度. 单击“位置查询”按钮以正确显示位置信息. 底部的文本框可以显示原始数据流. 测试期间拍摄的照片如图2所示.

5摘要

本文以VS2005为软件平台,使用WinCE 5.0嵌入式开发平台和基于ARM处理器的GPS接收模块,通过合理使用串行通信实现GPS数据信号的接收和解码,并使用触摸屏. 用于显示移动设备功能,基本上已经拥有GPS移动设备的原型.


本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/tongxinshuyu/article-184199-1.html

    相关阅读
      发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

      热点图片
      拼命载入中...