新闻中心

EEPW首页>测试测量>设计应用> ATmega16A低成本的GPS接收系统设计

ATmega16A低成本的GPS接收系统设计

作者: 时间:2011-08-19 来源:网络 收藏

g.jpg


K9F1208U0M的接口控制方法:K9F1208U0M在应用时必须通过外部A来控制其内容的读写。K9F1208U0M的数据总线与A的数据口PA口相连,用A的地址高位引脚PB6作为K9F1208U0M的片选信号(CS);PB5接K9F1208U0M的命令数据选择端(CME)/DATA),而PB4接K9F1208U0M的地址锁存允许端(ALE)。
读写操作流程:进行写操作时先要写入命令字80H,通知K9F1208U0M要进行写操作,然后顺序写入目的地地址和待写入的数据。应该注意的是,地址只需写入一次,便可以连续写入多个字节数据。地址指针的调整是由K9F1208U0M内部逻辑控制的,不用外部干预。写入操作是以页为单位(1~528字节)进行的,即每次连续写入能超过528个字节。这是由K9F1208U0M的工作方式决定的:写入的数据先保存至Flash内部的页寄存器(528字节)中,然后再写入存储单元。数据写完之后还要给K9F1208U0M发出1个写操作指令10H,通知其将页寄存器中的数据写入存储单元,随后就应该对状态引脚进行查询。如果该引脚为低,表明此次写操作结束。最后的步骤是数据校验,如果采用了ECC校验模式,则此步骤可以省略。
使用ATmega16A控制器完成Flash驱动函数主要包括:读ID;块擦除;写入一页数据;坏块检测;读取一页数据。
另外,注意事项有:在以K9F1208U0M为数据存储介质的系统设计中,需要注意无效块的问题。无效块即包含一个和多个无效数据位的块。由于结构方面的原因,一块(32页)中有一个无效位也会导致整个块无效。因此,系统必须在写入数据时避开无效块。出厂时,每片K9F12 08U0M的无效块信息均保存在一个无效块信息表中,可以根据该表中的原始无效块信息识别无效块的位置。在K9F1208U0M的使用过程中,应随时对无效块情况进行检查和更新,以保证无效块表内容的准确性。

3 微控器软件程序设计
该ATmega16A软件程序流程如图8所示。

h.jpg



4 实验结果
为检验该接收系统的系统性能,选择一空旷地域组织了若干次实验,实验内容是固定地点接收卫星信号。图9是接收系统实物图和Flash数据读取图。

i.jpg


图9中左边是接收系统的实物图,右边是通过该GPS接收系统采集回来的数据,然后经过Flash读取而得到的信息。GPS卫星接收系统采集到的坐标是世界大地坐标系(WGS-84)坐标。输出的数据格式为:“时间+维度+经度+星数+高度”,接收回来的数据充分显示系统稳定度很高。

结语
本文设计了一种基于ATmega16A的GPS接收系统。该系统具有数据存储、无线传输、定位精度高等特点。实验数据显示系统稳定度很高,易于推广普及,可用于普通民用地理定位领域,具有较高的实用价值。


上一页 1 2 3 下一页

关键词:ATmega16AGPS16

评论


相关推荐

技术专区

关闭