微波EDA网,见证研发工程师的成长! 2025濠电姷鏁告慨鎾儉婢舵劕绾ч幖瀛樻尭娴滅偓淇婇妶鍕妽闁告瑥绻橀弻锝夊箣閿濆棭妫勭紒鐐劤濞硷繝寮婚悢鍛婄秶闁告挆鍛缂傚倷鑳舵刊顓㈠垂閸洖钃熼柕濞炬櫆閸嬪棝鏌涚仦鍓р槈妞ゅ骏鎷�04闂傚倸鍊搁崐鎼佸磹閹间礁纾瑰瀣捣閻棗銆掑锝呬壕濡ょ姷鍋為悧鐘汇€侀弴銏℃櫆闁芥ê顦純鏇㈡⒒娴h櫣甯涢柛鏃€娲熼獮鏍敃閵堝洣绗夊銈嗙墱閸嬬偤鎮¢妷鈺傜厽闁哄洨鍋涢埀顒€婀遍埀顒佺啲閹凤拷22闂傚倸鍊搁崐鎼佸磹閹间礁纾瑰瀣捣閻棗銆掑锝呬壕濡ょ姷鍋為悧鐘汇€侀弴銏℃櫇闁逞屽墰缁絽螖娴h櫣顔曢梺鐟扮摠閻熴儵鎮橀埡鍐<闁绘瑢鍋撻柛銊ョ埣瀵濡搁埡鍌氫簽闂佺ǹ鏈粙鎴︻敂閿燂拷 闂傚倸鍊搁崐鎼佸磹閹间礁纾瑰瀣捣閻棗銆掑锝呬壕濡ょ姷鍋為悧鐘汇€侀弴銏犖ч柛灞剧煯婢规洖鈹戦缁撶細闁告鍐f瀺鐎广儱娲犻崑鎾舵喆閸曨剛锛涢梺鍛婎殕婵炲﹪鎮伴鈧畷鍫曨敆婢跺娅屽┑鐘垫暩婵挳骞婃径鎰;闁规崘顕ч柨銈嗕繆閵堝嫯鍏岄柛娆忔濮婅櫣绱掑Ο鑽ゎ槬闂佺ǹ锕ゅ﹢閬嶅焵椤掍胶鍟查柟鍑ゆ嫹婵犵數濮烽弫鍛婃叏閻戣棄鏋侀柟闂寸绾剧粯绻涢幋娆忕仾闁稿鍊濋弻鏇熺箾瑜嶉崯顐︽倶婵犲洦鈷戦柟绋挎捣缁犳挻銇勯敂璇茬仯缂侇喖顭烽、娑㈡倷鐎电ǹ寮抽梻浣虹帛濞叉牠宕愰崷顓涘亾濮樼偓瀚�
首页 > 硬件设计 > 嵌入式设计 > 基于GPSOne模块DTGS-800和MSP430F147的设计

基于GPSOne模块DTGS-800和MSP430F147的设计

时间:09-08 来源:互联网 点击:

  GPSOne综合了GPS、CDMAlX(码分多址分组数据交换网络)、GIS(地理信息系统)和互联网技术,是美国高通公司为基于位置业务而开发的定位技术,采用Client/Server方式。它将无线辅助A-GPS和高级前向链路AFLT三角定位技术有机结合,实现高精度、高可用性和较高速度的定位。在A-GPS定位技术无法使用的环境中,会自动切换到AFLT三角定位技术,确保定位的成功率和精确度。这里基于GPSOne模块DTGS-800和低功耗单片机MSP430设计并实现了具有定位、监控和报警功能的个人定位终端。

  1 系统硬件设计

  

闂傚倸鍊搁崐鎼佸磹閹间礁纾归柟闂寸绾惧綊鏌熼梻瀵割槮缁惧墽鎳撻—鍐偓锝庝簼閹癸綁鏌i鐐搭棞闁靛棙甯掗~婵嬫晲閸涱剙顥氬┑掳鍊楁慨鐑藉磻濞戔懞鍥偨缁嬪灝鐎俊銈忕到閸燁偆绮诲☉妯忓綊鏁愰崨顔跨缂備礁顑勯懗鍓佹閹捐纾兼慨姗嗗厴閸嬫捇鎮滈懞銉モ偓鍧楁煥閺囨氨鍔嶉柟鍐茬焸濮婄粯鎷呴崨濠傛殘闂佽崵鍠嗛崕鎶藉箲閵忕媭娼ㄩ柍褜鍓欓锝嗙節濮橆厼浜滅紒鐐妞存悂寮查鍕拺闁圭ǹ娴风粻鎾寸箾鐠囇呭埌閺佸牊淇婇妶鍛櫤闁稿鍓濈换婵囩節閸屾稑娅e銈忕到閵堟悂骞冩禒瀣垫晬婵炴垶蓱鐠囩偤姊虹拠鈥虫灍闁荤噦濡囬幑銏犫攽鐎n亞鍊為梺闈浤涢崘銊ヮ洭濠电姷鏁告慨鐑藉极閹间礁纾规い鏍仜閻掑灚銇勯幒鎴濐仼缁炬儳顭烽弻鐔煎礈瑜忕敮娑㈡煟閹惧娲撮柟顔筋殜閺佹劖鎯旈垾鑼晼濠电姭鎷冮崘顏冪驳闂侀€涚┒閸斿秶鎹㈠┑瀣窛妞ゆ洖鎳嶉崫妤呮⒒娴e憡璐¢柟铏尵閳ь剚姘ㄦ晶妤佺┍婵犲洤绠瑰ù锝堝€介妸鈺傜叆闁哄啠鍋撻柛搴$-缁辩偤骞掑Δ浣叉嫽闂佺ǹ鏈悷銊╁礂瀹€鍕厵闁惧浚鍋呭畷宀€鈧娲滈弫璇差嚕娴犲鏁囬柣鎰問閸炵敻姊绘担鑺ョ《闁革綇绠撻獮蹇涙晸閿燂拷...

  个人定位终端的硬件组成如图1所示。为了解决GPS在室内和高层建筑密集区难以定位的问题,选用AnyData公司的DTGS-800 GPSOne模块;为了缩小体积、降低功耗和成本,主控单元MCU选用超低功耗的16位单片机MSP430F147,显示器选用LED。单片机负责控制 GPSOne模块发起定位请求,接收并解析CDMA网络控制中心发送的信息,获取当前的经、纬度及其他信息,并以短信的方式送至控制中心或操作者的手机。主控单元MCU如图2所示。它包括MSP430F147,外接高速晶振和低速晶振,在不需要高速处理时,可将高速晶振关闭,只使用低速晶振,以降低功耗;MSP430F147有2个串行异步通信接口(USART),其中一个(DCD、CTS、DTR、RI、RFR/RTS、TXD、RXD引脚)接口连接DTGS-800的UAR-T1,另一个(URXD0、UTXDO)接口与PC机的串口相连,供系统调试使用。nRst、MS、TCK、TDI、TD0 引脚连接JTAG插座,用于程序下载和在线调试;keyl和key2引脚分别接"Help"和预留按键。外接的LED DS3和LED DS4分别用指示电池电量不足和DTGS-800与MSP430之间的通信;BatTest用于检测电池电量。

  

闂傚倸鍊搁崐鎼佸磹閹间礁纾归柟闂寸绾惧綊鏌熼梻瀵割槮缁惧墽鎳撻—鍐偓锝庝簼閹癸綁鏌i鐐搭棞闁靛棙甯掗~婵嬫晲閸涱剙顥氬┑掳鍊楁慨鐑藉磻濞戔懞鍥偨缁嬪灝鐎俊銈忕到閸燁偆绮诲☉妯忓綊鏁愰崨顔跨缂備礁顑勯懗鍓佹閹捐纾兼慨姗嗗厴閸嬫捇鎮滈懞銉モ偓鍧楁煥閺囨氨鍔嶉柟鍐茬焸濮婄粯鎷呴崨濠傛殘闂佽崵鍠嗛崕鎶藉箲閵忕媭娼ㄩ柍褜鍓欓锝嗙節濮橆厼浜滅紒鐐妞存悂寮查鍕拺闁圭ǹ娴风粻鎾寸箾鐠囇呭埌閺佸牊淇婇妶鍛櫤闁稿鍓濈换婵囩節閸屾稑娅e銈忕到閵堟悂骞冩禒瀣垫晬婵炴垶蓱鐠囩偤姊虹拠鈥虫灍闁荤噦濡囬幑銏犫攽鐎n亞鍊為梺闈浤涢崘銊ヮ洭濠电姷鏁告慨鐑藉极閹间礁纾规い鏍仜閻掑灚銇勯幒鎴濐仼缁炬儳顭烽弻鐔煎礈瑜忕敮娑㈡煟閹惧娲撮柟顔筋殜閺佹劖鎯旈垾鑼晼濠电姭鎷冮崘顏冪驳闂侀€涚┒閸斿秶鎹㈠┑瀣窛妞ゆ洖鎳嶉崫妤呮⒒娴e憡璐¢柟铏尵閳ь剚姘ㄦ晶妤佺┍婵犲洤绠瑰ù锝堝€介妸鈺傜叆闁哄啠鍋撻柛搴$-缁辩偤骞掑Δ浣叉嫽闂佺ǹ鏈悷銊╁礂瀹€鍕厵闁惧浚鍋呭畷宀€鈧娲滈弫璇差嚕娴犲鏁囬柣鎰問閸炵敻姊绘担鑺ョ《闁革綇绠撻獮蹇涙晸閿燂拷...

  DTGS-800模块是定位终端的主体,其内部集成有GPSOne器件,采用GPSOne解决方案定位;支持机卡分离RUIM,提供标准RS-232数据接口和标准的AT命令接口,为数据、语音、短消息和传真提供快速、可靠、安全的传输。该模块可采用外接电源或电池供电,电池供电电压为+4.0 V±10%,外接电源供电电压+4.5 V±10%,外接电源还能通过模块内部的电源管理器件为电池充电。

  

闂傚倸鍊搁崐鎼佸磹閹间礁纾归柟闂寸绾惧綊鏌熼梻瀵割槮缁惧墽鎳撻—鍐偓锝庝簼閹癸綁鏌i鐐搭棞闁靛棙甯掗~婵嬫晲閸涱剙顥氬┑掳鍊楁慨鐑藉磻濞戔懞鍥偨缁嬪灝鐎俊銈忕到閸燁偆绮诲☉妯忓綊鏁愰崨顔跨缂備礁顑勯懗鍓佹閹捐纾兼慨姗嗗厴閸嬫捇鎮滈懞銉モ偓鍧楁煥閺囨氨鍔嶉柟鍐茬焸濮婄粯鎷呴崨濠傛殘闂佽崵鍠嗛崕鎶藉箲閵忕媭娼ㄩ柍褜鍓欓锝嗙節濮橆厼浜滅紒鐐妞存悂寮查鍕拺闁圭ǹ娴风粻鎾寸箾鐠囇呭埌閺佸牊淇婇妶鍛櫤闁稿鍓濈换婵囩節閸屾稑娅e銈忕到閵堟悂骞冩禒瀣垫晬婵炴垶蓱鐠囩偤姊虹拠鈥虫灍闁荤噦濡囬幑銏犫攽鐎n亞鍊為梺闈浤涢崘銊ヮ洭濠电姷鏁告慨鐑藉极閹间礁纾规い鏍仜閻掑灚銇勯幒鎴濐仼缁炬儳顭烽弻鐔煎礈瑜忕敮娑㈡煟閹惧娲撮柟顔筋殜閺佹劖鎯旈垾鑼晼濠电姭鎷冮崘顏冪驳闂侀€涚┒閸斿秶鎹㈠┑瀣窛妞ゆ洖鎳嶉崫妤呮⒒娴e憡璐¢柟铏尵閳ь剚姘ㄦ晶妤佺┍婵犲洤绠瑰ù锝堝€介妸鈺傜叆闁哄啠鍋撻柛搴$-缁辩偤骞掑Δ浣叉嫽闂佺ǹ鏈悷銊╁礂瀹€鍕厵闁惧浚鍋呭畷宀€鈧娲滈弫璇差嚕娴犲鏁囬柣鎰問閸炵敻姊绘担鑺ョ《闁革綇绠撻獮蹇涙晸閿燂拷...

  DTGS-800模块的电路如图3所示。其中DCD、CTS、DTR、RI、RFR/RTS、TXD、RXD引脚连接MSP430F147的UART1,是DTGS-800与MSP430F147的通信通道;UIM_DATA、UIM_CLK、UIM_PWR_EN、UIM_RESET接UIM卡(图 4);Sgl_SMS、Sgl_IDEL、Sgl_GPS、Sgl_busy、Sgl_Power、Sgl_ch-arge是系统状态指示信号,分别连接 6个LED,用于指示新短信信号、CDMA网络信号、GPS信号、CDMA网络忙、系统上电和电池充电等状态;BatGauge接电池测试端,用于检测电池温度(图5)。

  UIM卡是CDMA手机的一种智能卡,其功能类似于GSM手机中的SIM卡。它支持专用的鉴权加密算法和0TA技术(0ver The Air),可以通过无线空中接口方式对卡上的数据进行更新和管理。UIM卡固定在卡座上,通过卡座的6个引脚与外部连接,如图4所示,其中 UIM_RESET和UIM_CLK需通过100 kΩ电阻下拉,UIM_DATA需通过10 kΩ电阻上拉。

  电源Battery和Charger模块如图5所示。DTGS-800模块的第88、90引脚是专用于电池供电的电源输入引脚。若需模块既可用外接电源又可用电池供电,可将外接电源接到第87和89引脚,电池接到第88、90引脚。此时,外接电源还能通过模块内部电源管理器件为电池充电。在模块只采用电池供电的情况下,需要给该模块一个power on信号;对该引脚进行第2次触发时,模块power off。

  2 系统软件设计

  该终端的软件设计有主程序、按键检测、电池检测、存储和串口通信5个模块。图6为主程序流程。

  

闂傚倸鍊搁崐鎼佸磹閹间礁纾归柟闂寸绾惧綊鏌熼梻瀵割槮缁惧墽鎳撻—鍐偓锝庝簼閹癸綁鏌i鐐搭棞闁靛棙甯掗~婵嬫晲閸涱剙顥氬┑掳鍊楁慨鐑藉磻濞戔懞鍥偨缁嬪灝鐎俊銈忕到閸燁偆绮诲☉妯忓綊鏁愰崨顔跨缂備礁顑勯懗鍓佹閹捐纾兼慨姗嗗厴閸嬫捇鎮滈懞銉モ偓鍧楁煥閺囨氨鍔嶉柟鍐茬焸濮婄粯鎷呴崨濠傛殘闂佽崵鍠嗛崕鎶藉箲閵忕媭娼ㄩ柍褜鍓欓锝嗙節濮橆厼浜滅紒鐐妞存悂寮查鍕拺闁圭ǹ娴风粻鎾寸箾鐠囇呭埌閺佸牊淇婇妶鍛櫤闁稿鍓濈换婵囩節閸屾稑娅e銈忕到閵堟悂骞冩禒瀣垫晬婵炴垶蓱鐠囩偤姊虹拠鈥虫灍闁荤噦濡囬幑銏犫攽鐎n亞鍊為梺闈浤涢崘銊ヮ洭濠电姷鏁告慨鐑藉极閹间礁纾规い鏍仜閻掑灚銇勯幒鎴濐仼缁炬儳顭烽弻鐔煎礈瑜忕敮娑㈡煟閹惧娲撮柟顔筋殜閺佹劖鎯旈垾鑼晼濠电姭鎷冮崘顏冪驳闂侀€涚┒閸斿秶鎹㈠┑瀣窛妞ゆ洖鎳嶉崫妤呮⒒娴e憡璐¢柟铏尵閳ь剚姘ㄦ晶妤佺┍婵犲洤绠瑰ù锝堝€介妸鈺傜叆闁哄啠鍋撻柛搴$-缁辩偤骞掑Δ浣叉嫽闂佺ǹ鏈悷銊╁礂瀹€鍕厵闁惧浚鍋呭畷宀€鈧娲滈弫璇差嚕娴犲鏁囬柣鎰問閸炵敻姊绘担鑺ョ《闁革綇绠撻獮蹇涙晸閿燂拷...

  主程序模块负责其他4个模块的初始化和数据处理与存储。该模块判断接收数据的正确性,从中提取位置和其他有用信息,实现数据的分离和有效数据在片上RAM 的临时存储,并将有用信息通过串口发送给DTGS8-800,DTGS-800再以短信的形式传给第三方。系统启动时,首先进行初始化,包括看门狗、定时器、电压检测模块(含MD转换器)、UART、按键检测模块和DTGS-800的初始化;系统初始化完成后,如果没有中断请求则进入低功耗模式,以节约电量。

  按键检测模块和电池检测模块都是以中断方式执行的。当有按键按下时,就会产生中断,通知控制器进行扫描,判断是哪个键按下,然后进行相应的处理;电池检测模块以一定时间间隔检测电池电量,如果电池电量不足则通知控制器开始计数,如果连续检测到电压过低状态超过一定次数后,则使相应的LED闪烁,提醒用户充电。

如果用户发送报警信息,即按下Help键,则产生中断请求,执行中断服务子程序,系统退出低功耗模式,进入“HELP”状态,发起定位请求,

灏勯涓撲笟鍩硅鏁欑▼鎺ㄨ崘

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top