用MCU来控制蓝牙GPS模块

随着电子地图的日趋完善,gps系统将越来越发挥更加实际的指引作用。蓝牙gps模块实现以无线蓝牙接口来发送gps模块的定位数据,它挣脱了导线的束缚,从而可以很容易地在各种支持蓝牙的便携设备上实现导航定位功能。

  蓝牙gps模块也是一个小小的便携设备,需要实现电源的管理、gps数据的处理、蓝牙状态的判断以及点亮指示灯等功能。这都要求使用一个mcu来协调控制整机的工作。

  freescale半导体的hcs08系列8位高性能mcu:mc9s08qg4即是个不错的选择。适用于本方案的主要参数为:

  • 低功耗,简单的bdm调试口
  • 16脚封装,内嵌10mhz振荡器(外部晶振支持20mhz),最多可用14个io口
  • 4kb flash,256b ram
  • 内置上电复位电路,1路标准rs232接口,8路10位adc

         其它参数请参照mc9s08qg4的数据手册,根据需要可使用mcu的其它资源。

  下面为本方案的原理框图:

  选用的gps模块是skylab公司的高灵敏度模块gm20,低功耗,搜星快,最高接收灵敏度达-160dbm,弱信号时可很容易定位。由于其灵敏度高,在gps天线设计上带来简便,仅需要一个陶瓷片天线,不加外部lna即可实现良好的卫星接收性能。

  充电ic选用性价比高的eup8054,最大充电电流可达800ma,并可用外部电阻来调节充电电流;锂电池容量选择在1000mah以上,整机工作电流在50ma左右,因此易实现超过15小时的连续工作时间;蓝牙模块为业内兼容性良好的csr方案,并且蓝牙天线为直接画在pcb上的微带线,节省成本;3个led全部由mcu来控制,可分别指示蓝牙状态、gps定位状态及充电状态等,也可依客户要求来定做不同的显示模式。

  开关机是需要合理设计的,应实现由轻触按键进行开关机,在充电时也能自动开机指示充电状态,并且电池的电压不同时要保证电路的可靠工作。通过灵活运用9s08qg4的adc功能,搭配外围精简的rc电路,实现了上述要求开关要求。

  在关机状态下,按下按键使能 ldo,输出电压,mcu开始工作,此时,3个 led指示电池的剩余电量,若电量很低,则led均不亮。同时,mcu进行adc采样,通过ad值判断按键是否按下,当按下时间超过设定值,mcu使用一个io口锁住ldo的使能脚。此时按键松开系统继续供电,完成软开机操作;

  在开机状态下,按键按下时adc采样值会有变化,当持续按键超过设定值后,mcu判断为关机操作,关掉led,取消对ldo-en的自锁,按键松开后系统将失电,完成关机操作。

  需要说明的是,当直接插入外部电源给设备充电时,ldo也被使能,系统开机,此时adc的采样值与按键开机不同,因此mcu进入充电模式,3个led动态指示充电过程。当然,在充电过程中也可以通过按键进行开关机操作,显然,adc值也会有差别。

  mcu还使用一路adc检测电池电量,指示充电中、充满的状态,并可由按键来检查电量,led负责显示。

  对于gps的定位状态指示,由mcu的串行口读取标准nmea数据,判别rmc数据流中定位标志位来实现。这有利于兼容不同厂家的gps模块,因为rmc数据流是必需的信息。

  

  • 用MCU来控制蓝牙GPS模块已关闭评论
    A+
发布日期:2019年07月02日  所属分类:参考设计