• 易迪拓培训,专注于微波、射频、天线设计工程师的培养
首页 > 无线通信 > 技术文章 > 基于AVR单片机的智能信息记录仪设计

基于AVR单片机的智能信息记录仪设计

录入:edatop.com     点击:

2 系统软件设计

系统软件的主要任务是USB的读写、液晶的显示、时钟和键盘的编程。PB375A和单片机之间使用串行通信。其中,单片机首先将命令码和参数信息发送给PB375A,由PB375A根据命令信息执行完相应操作,再以中断方式返回操作状态码给单片机。通信格式包括起始码(0x3A)、操作码、数据长度和数据包。其主要的操作码如下:

Ox71:检测U盘是否连接,连接时返回0;

0x64:打开已有的文件,如果文件不存在,则返回Ox42:

0x65:新建文件;

Ox7A:确定读写字节的地址;

0x7B:以字节为单位返回读取的数据。

图5所示是本系统的程序流程框图。

2.1 文件新建与数据写入

利用命令CMD_FileCreat可新建文件,文件名应为8+3格式,且必须为大写字母或者数字。

写入数据可通过命令CMD_ByteWrite来实现。

通过CMD_FileClose命令可关闭文件。关闭文件将自动更新文件长度。另外应特别注意只有关闭了文件;才默认生成文件,否则没有文件生成,也就无法进行下面的操作(例如新建文件后没有关闭文件就开始读数据,则该操作无效)。

2.2 向已有文件追加数据

向已有文件追加数据时的一般命令如下:

CMD_FileOpen:打开文件;

CMD_ByteLocate:移动文件指针到末尾(0xFFFFFFFF);

CMD_ByteWrite:写入数据;

CMD_FileClose:关闭文件。

2.3 写数据操作

写数据时,首先读取实时时钟DSl302的值,以判断当前时间是不是每月的1号,如果是,就新建一个vv-mm.TXT文件,用来保存一个月中每天的开机次数,然后再新建yy—mm—dd.TXT文件来保存每次具体的开关机时间。假如现在是09年11月1日,则先新建09-11.TXT并写入31个0,然后把它第一个数读取出来,是0则新建09-11-01.TXT,写入开机时间后,再把开机次数的标志位加1,然后再写入文件09-11.TXT。第二次开机时,时间就直接追加到该文件里。

在新建文件09-11-01.TXT时,要把此刻的日期时间保存起来。这样,当关机时,就会把关机时间追加到该文件里。

2.4 日期时间的查询与显示

显示要查询的日期时间时,首先打开输入要求的日期文件,然后读取数据并存入显示缓存。为了能在电脑上清晰阅读,写入具体时间时,应使用空格、回车、换行等特殊字符,所以,必须对单片机读到的数据做特殊处理后再送去显示。

3 结束语

本文所介绍的信息记录系统方案设计合理,使用方便,具有友好的人机界面和较大的数据存储能力,可以很好地实现时间信息的智能记录。使用本方案设计的智能信息记录仪能够满足多种工业场合的使用要求,具有很好的推广价值。

作者:马 飞,马彦青,骆 育,罗 伟 西安电子科技大学 来源:电子元器件应用

上一篇:迈入100G传输时代
下一篇:基于TS201的多DSP系统设计与实现

手机天线设计培训教程详情>>

手机天线设计培训教程 国内最全面、系统、专业的手机天线设计培训课程,没有之一;是您学习手机天线设计的最佳选择...【More..

射频和天线工程师培训课程详情>>

  网站地图