预览加载中,请您耐心等待几秒...
1/8
2/8
3/8
4/8
5/8
6/8
7/8
8/8

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

学院电子信息工程专业“专业课程设计”报告题目名称:基于ARM嵌入式的GPS定位设计班级:同组人:指导教师:1设计任务本次设计主要是实现在GPS的定位信息提取,其中包括经度、纬度、时间、日期等,采用意法半导体的CORTEX—M3内核的STM32F103RBT6为核心板,液晶采用采用Nokia5510.总体来说实现了耗电少,功能齐全,简单易用的特点。2设计背景及方案GPS全球定位系统最早是由美国军方建立用以进行军事活动的侦查的,能够在全球范围内,提供实时、连续、全天候的导航定位及授时服务,共分为三个部分,空间部分,地面部分,和接收终端部分.GPS系统共由24颗卫星组成,分布在6个轨道上面,每个轨道上有4颗,轨道倾角为55度,不论在什么地方,只要能够收到4颗以上的卫星,就可以实现实时定位.3系统硬件简述(1)最小核心系统最小系统是由STM32F103RBT6微处理器构成,核心是由32位的ARM—CORTEX—M3,最高时钟可以达到72MHZ,有单周期的乘法和除法运算,内部有128k的Flash,20k的SRAM,2。0V/3。6V的IO供电,上电、断电复位,可编程电压监测,内嵌8M的RC振荡晶振,内部40K振荡器,内嵌PLL的CPU时钟,内嵌使用32K晶振的RTC振荡器。具有低功耗的睡眠、待机、停机模式,VBT为后备寄存器提供电源.具有串行SWD和JTAG调试模式.7个DMA通道支持定时器、ADC、SPI、I^C、USART。一个12位的模数转换器,(16通道)转换范围为0~.3.6V,温度传感器。51个丰富的IO端口,兼容5V电平,所有的IO口可以映射到16个外部中断。6个定时器,(3个16位的定时器,每个定时器具有4个输入输出捕捉/PWM脉冲调制/脉冲计数的通道,2个看门狗定时器,1个24位的系统定时器,自动递减功能)。2个I^C,2个SPI,3个USART通信接口。(2LCD液晶Nokia5510是Philips产的单芯片LCD驱动控制低功耗的显示液晶,其显示为RAM48*84串行最高4Mbits/S,COMS电平兼容,逻辑电平为3.0~3.3V低功耗适用于电池供电,使用温度范围为—25度到70度。其中引脚如下:Pin1;VCCPin2:GNDPin3:ENPin4:RESPin5:GNDPin6:SDINPin7:SCLKPin8:LED背光图6为水平写入的地址表,用以往RAM中写入字符。(3)C3—370GPS终端接受模块C3-370c是韩国产的全自动GPS接受模块,具有SIR第三代的结构组成,其内核是有ARM7TDIMCPU,4M的Flash内存,自带有微型天线,20通道,C\A码,L1的频率.定位精度〈10M3DRMS,;冷启动约为60s,热启动少于10s,协议时NMEA0813,9600的波特率。NMEA的输出格式有六种GGA、GLL、GSA、GSV、RMC、VGT,其中我们解析的一种是RMC格式的。一条$GPRMC包含13个字段,语句标识符,世间时间,定位状态,纬度,纬度方位,经度,经度方位,地面速度,地面航向,日期,磁偏角,校检,结束标记,具体格式如下:$GPRMC,050458。000,A,2459。8991,N,10242.8698,E,0。37,130。03,190808,,,A*66〈1>UTC时间,hhmmss(时分秒)格式〈2>定位状态,A=有效定位,V=无效定位〈3>纬度ddmm.mmmm(度分)格式(前面的0也将被传输)<4〉纬度半球N(北半球)或S(南半球)<5〉经度dddmm。mmmm(度分)格式(前面的0也将被传输)〈6〉经度半球E(东经)或W(西经)<7>地面速率(000。0~999。9节,前面的0也将被传输)<8〉地面航向(000.0~359。9度,以真北为参考基准,前面的0也将被传输)〈9〉UTC日期,ddmmyy(日月年)格式〈10〉磁偏角(000。0~180.0度,前面的0也将被传输)〈11〉磁偏角方向,E(东)或W(西)上图为C3-370引脚图,具体我们只用到了VCC,TX,RX,GND,BOOT,3硬件整体连接图硬件流程图由于GPS和MCU的电平兼容,所以在硬件连接中,GPS接受终端的TX接MCU的RX,RX接TX,另外通过RS232电平转换后可以直接进行上位机软件的接受工作,最后把解析的数据显示在Nokia5510上面.4软件流程图及程序(1)流程图软件流程图(2)程序u8GPS_parse(char*buf){intd,m,mm;u8i;char*word,*left=buf+1;staticu8msgcount=0,msgid=0,satcount=0;//解析GSV用到的变量//各通道采用的卫星编号u8usedsatcount=0;if(buf[0]!='$')retu