专利名称:一种gps模块串口通讯一致性通用调整方法
技术领域:
本发明涉及一种GPS模块串口通讯一致性通用调整方法。
背景技术:
目前各个生产GPS模块的厂家在所生产的GPS模块上都可以提供用户常用的GPS 定位、授时等功能,同时软件协议接口上能兼容GPS领域通用的NMEA协议,在与主板连接的硬件接口上也提供了比较相似的管脚,如电源、串口、SPI、II等接口,但是各种GPS模块虽然看上去较为相似,实际上使用时却往往难以方便的相互替换使用。其主要原因是GPS模块与主板之间通信是靠串口来进行通信,但是串口波特率却难以调整并适应用户的需求。 因为在现有的GPS模块中,虽然都提供了通信串口中最主要的txd、rxd信号,但是串口通信中最重要的通信速率,即波特率却由软件编程定制或出厂默认,即由模块厂商固化。这导致在工程应用、产品升级换代中,用户需要根据各不同厂家的GPS模块规格书中所写明的波特率,或在GPS模块连接的主板端上编写软件来调整波特率,或重新购买出厂默认波特率和现有产品一样的模块,不仅限制了用户的可选择范围,也加大了用户软件开发、调试成本。随着GPS定位装置的应用越来越广泛,生产GPS模块的厂家数量也越来越多,使得市面上的GPS模块的型号也越来越多,同时伴随着GPS模块的升级、替换也越来越频繁,而现有的GPS模块波特率难以调整的问题也越来越严重。
发明内容
为了解决现有GPS模块与主板之间的波特率难以调整的技术问题,本发明提供一种可方便的调整GPS模块与主板之间的波特率的GPS模块串口通讯一致性通用调整方法。为了实现上述技术目的,本发明的技术方案是一种GPS模块串口通讯一致性通用调整的方法,包括以下步骤步骤I :预先确定用于确定波特率的通信串口管脚并确定相应管脚电平状态所对应的波特率,然后设定GPS模块与主板的控制器在上电复位后首先检测各自的通信串口用于确定波特率管脚的电平状态;步骤2 :将用于确定波特率的通信串口管脚分别串联电阻后连接至逻辑高电平或逻辑低电平用以调整波特率;步骤3 :将GPS模块通过通信串口连接主板;步骤4 GPS模块和主板上电复位,GPS模块和主板分别检测通信串口用于确定波特率管脚的电平状态,并根据管脚的电平状态确定波特率;步骤5 =GPS模块初始化后进行定位,定位完成后按NMEA协议通过通信串口向主板发送信息,即完成通讯一致化调整并进入正常定位和通讯流程。所述的一种GPS模块串口通讯一致性通用调整的方法,所述的步骤I中用于确定波特率的通信串口管脚为⑶、DTR、DSR、RTS、CTS和RI管脚中的至少一个,管脚的电平状态为逻辑高电平或逻辑低电平,波特率范围为4800 115200。
所述的一种GPS模块串口通讯一致性通用调整的方法,所述的步骤4中根据管脚的电平状态调整GPS模块的波特率的步骤为步骤一 GPS模块和主板的控制器分别读取各自用于确定波特率的通信串口管脚的电平状态,并将电平状态按预先设定的对应关系保存为变量值;步骤二 GPS模块和主板的控制器将步骤一中所得到的变量值按预先设定的对应关系转换为各自的串口控制器的寄存器参数值;步骤三GPS模块和主板的控制器将串口控制器的寄存器参数值写入至各自的串口控制器的寄存器;步骤四GPS模块和主板的串口控制器根据所写入的寄存器参数确定串口通信的波特率。本发明的技术效果在于,由于串口通讯是一种较为传统的通讯方式,在开发串口通讯技术时,由于当时通讯技术所限,各种通讯带宽较小,数据吞吐率低,导致控制器压力大,所以采用了 9个管脚的设计,引入了如CTS、RTS、RI这些管脚,其主要是起硬件控制通讯速率的作用。随着通讯技术的发展,带宽提高,故现在主要所用到的是两个管脚TXD以及RXD管脚,其他引脚已基本不再使用,而由于GPS数据流量本身就小,所以更加不会用到除两个主要管脚之外的管脚。而GPS模块上由于为了兼容RS232串口的硬件流控制,故也引出了多余不用的比如CTS、RTS、RI等管脚,本发明通过给这些管脚通过电阻连接至不同的高低电平,同时在GPS模块中预先设定在在上电复位后首先检测通信串口的管脚电平状态,并根据管脚的不同的电平状态来自行调整GPS模块的波特率,即可人为的从硬件上强制GPS模块按照指定的波特率进行通信,由于各不同厂家的各种GPS模块均设有这些管脚, 只需预先在GPS模块中设定上电复位后首先检测管脚电平来确定波特率,即可方便的从硬件上调整各种GPS模块的波特率,实现波特率一致化。方便了 GPS模块制造厂家和GPS模块客户的串口硬件设计开发,既相互独立,又可以无缝连接。减少了 GPS模块客户或使用者在软件开发方面的负担。使各厂家生产的GPS模块相互替换成为可能,方便升级换代。下面结合附图对本发明作进一步说明。
图I为本发明的流程图;图2为本发明根据管脚电平确定波特率的流程图;图3为本发明实施例的结构示意图。
具体实施例方式参见图1,一种GPS模块串口通讯一致性通用调整的方法,包括以下步骤步骤I :预先确定用于确定波特率的通信串口管脚并确定相应管脚电平状态所对应的波特率,然后设定GPS模块与主板的控制器在上电复位后首先检测各自的通信串口用于确定波特率管脚的电平状态;步骤2 :将用于确定波特率的通信串口管脚分别串联电阻后连接至逻辑高电平或逻辑低电平用以调整波特率;步骤3 :将GPS模块通过通信串口连接主板;
步骤4 =GPS模块和主板上电复位,GPS模块和主板分别检测通信串口用于确定波特率管脚的电平状态,并根据管脚的电平状态确定波特率;步骤5 =GPS模块初始化后进行定位,定位完成后按NMEA协议通过通信串口向主板发送信息,即完成通讯一致化调整并进入正常定位和通讯流程。其中所述的步骤I中用于确定波特率的通信串口管脚为⑶、DTR、DSR、RTS、CTS和 RI管脚中的至少一个,管脚的电平状态为逻辑高电平或逻辑低电平,波特率范围为4800 115200。参见图2,其中上述步骤4中GPS模块根据管脚的不同的电平状态调整GPS模块的波特率的步骤为步骤一 GPS模块和主板的控制器分别读取各自用于确定波特率的通信串口管脚的电平状态,并按预先设定的对应关系将电平状态保存为变量值;步骤二 GPS模块和主板的控制器将步骤一中所得到的变量值按预先设定的对应关系转换为各自的串口控制器的寄存器参数值;步骤三GPS模块和主板的控制器将串口控制器的寄存器参数值写入至各自的串口控制器的寄存器;步骤四GPS模块和主板的串口控制器根据所写入的寄存器参数确定串口通信的波特率。参见图3,现假设采用主板的通信串口的CTS管脚、RTS管脚和RI管脚来作为调整波特率所检测的管脚,实际上通信串口包括9个管脚,即CD、RXD、TXD、DTR、SG、DSR、RTS、 CTS和RI管脚,目前在实际通信使用中,一般只使用RXD和TXD管脚,其他管脚并未利用,实际使用时,完全可以根据需要来设置检测更多或更少的管脚,也可采用其他管脚作为检测对象。本实施例中,CTS管脚通过电阻串联至逻辑高电平,RTS管脚通过电阻串联至逻辑低电平,RI管脚通过电阻串联至逻辑低电平,同时根据预先自定的管脚电平与波特率的对应表,故本实施例所确定的波特率为9600。自定的管脚电平与波特率的对应表参见下表1, 表中I代表逻辑高电平,0代表逻辑低电平,此表仅为一种实施方式,可根据需要调整管脚电平与波特率的对应关系。
权利要求
1.一种GPS模块串口通讯一致性通用调整的方法,其特征在于,包括以下步骤步骤I :预先确定用于确定波特率的通信串口管脚并确定相应管脚电平状态所对应的波特率,然后设定GPS模块与主板的控制器在上电复位后首先检测各自的通信串口用于确定波特率管脚的电平状态;步骤2 :将用于确定波特率的通信串口管脚分别串联电阻后连接至逻辑高电平或逻辑低电平用以调整波特率;步骤3 :将GPS模块通过通信串口连接主板;步骤4 =GPS模块和主板上电复位,GPS模块和主板分别检测通信串口用于确定波特率管脚的电平状态,并根据管脚的电平状态确定波特率;步骤5 :GPS模块初始化后进行定位,定位完成后按NMEA协议通过通信串口向主板发送信息,即完成通讯一致化调整并进入正常定位和通讯流程。
2.根据权利要求I所述的一种GPS模块串口通讯一致性通用调整的方法,其特征在于, 所述的步骤I中用于确定波特率的通信串口管脚为CD、DTR、SG、DSR、RTS、CTS和RI管脚中的至少一个,管脚的电平状态为逻辑高电平或逻辑低电平,波特率范围为4800 115200。
3.根据权利要求I或2所述的一种GPS模块串口通讯一致性通用调整的方法,其特征在于,所述的步骤4中根据管脚的电平状态调整GPS模块的波特率的步骤为步骤一 GPS模块和主板的控制器分别读取各自用于确定波特率的通信串口管脚的电平状态,并将电平状态按预先设定的对应关系保存为变量值;步骤二 GPS模块和主板的控制器将步骤一中所得到的变量值按预先设定的对应关系转换为各自的串口控制器的寄存器参数值;步骤三GPS模块和主板的控制器将串口控制器的寄存器参数值写入至各自的串口控制器的寄存器;步骤四GPS模块和主板的串口控制器根据所写入的寄存器参数确定串口通信的波特率。
全文摘要
本发明公开了一种GPS模块串口通讯一致性通用调整方法,主板通信串口的管脚通过电阻分别连接逻辑高电平或逻辑低电平以调整GPS模块通信波特率。本发明方便了GPS模块制造厂家和GPS模块客户的串口硬件设计开发,既相互独立,又可以无缝连接。减少了GPS模块客户或使用者在软件开发方面的负担。使各厂家生产的GPS模块相互替换成为可能,方便升级换代。
文档编号G06F13/40GK102609391SQ201210022010
公开日2012年7月25日 申请日期2012年2月1日 优先权日2012年2月1日
发明者刘海明, 张友文, 黄长喜 申请人:湖南赛格导航技术研究有限公司