基于PIC单片机的便携式测试记录仪设计
1.3.2采集
本记录仪有自动和手动两种采集方式。
休眠状态下,当按手动键时则进入手动采集过程。首先读识别片和字典片,以确立现场中实际安装的传感器数量、量程及数据片可写空间。若数据片未写满,则从组内0通道传感器开始,循环对现场中实际安装的所有传感器进行采集、处理、显示,直至当再按一次手动键时,方将传感器号、量程、最近一次采集值(注意?不是实时处理后结果,而是原始A/D转换码值)以及采集时刻的日历信息─年、月、日、时、分、秒等组成的记录写入记录指针指向的数据片中,接着对表头参数进行修改,进入休眠状态。
休眠状态下,当按自动键时则进入自动采集过程。首先开放定时中断,然后进入采集─保存─休眠─唤醒─再采集─再保存─再休眠─再唤醒的循环状态,直到数据片被写满或人工干预结束自动采集过程为止。上述唤醒由外部中断完成,其单片机从休眠状态到唤醒工作之间的时间间隔有等距和变距两种形式可供选择。所谓等距即每次采集的时间间隔相同。与其相反,变距则每次采集的时间间隔随采集次数的增多而变长或缩短,视实际应用需要而确定。本记录仪出厂设置为等距1小时,即每间隔1小时采集1次。
1.3.3通讯和打印
休眠状态下,当按通讯键时,进入和PC通讯过程。首先由PC端Win98下的专门处理软件完成串口1(若记录仪与PCCom1口相连)或串口2(若记录仪与PCCom2口相连)的自动配置,然后可根据工具条上的图文进行等距、变距、选择、数据下载、事后处理等操作。
休眠状态下,当按打印键后,则在TPμP_T微型打印机上打印出所有保存的记录。
1.3.4清零
休眠状态下,当按清零键时,则清除数据片中保存的所有记录,即使记录指针指向数据片首址。
2软件设计
本记录仪软件由实时处理程序和组
成记录仪诸功能部件的驱动程序组成。
2.1实时处理程序
实时处理程序调用相关驱动程序完成模拟量采集、数字滤波、插值运算、实时显示、记录合成及记录保存。本记录仪采用的记录格式从高至低依序为:传感器号,量程,采集值,年,月,日,时,分,秒。
2.2驱动程序设计
驱动程序设计的基本思想是:首先完成相关接口、寄存器的初始化,然后根据具体物理部件产生微操作时序,并对操作过程中遇到的异常事件进行容错处理。
2.2.1读/写E2PROM驱动程序
I2C总线由时钟线(SCL)和数据线(SDA)组成。根据I2C总线协议,将图1所采用的24LC65芯片的读/写操作按操作顺序分解为:使总线处于空闲状态(SCL、SDA均为高电平);发送读/写启动信号(SCL保持高电平,SDA从高变低产生下降沿);在数据线SDA上读或写数据位(SCL高电平时,SDA状态为有效的读或写数据位,SDA状态,即0或1的变化必须在SCL低电平期间完成);发送读/写结束信号(SCL保持高电平,SDA从低变高产生上升沿)。如果为写操作,每写完1字节数据后,24LC65在数据线SDA上回送握手应答信号,表示该字节数据已被可靠写入。以上微操作通过汇编语言编程实现。
本记录仪以记录方式读/写数据片。因此,对写来说,首先读字典片,以便用其中 《基于PIC单片机的便携式测试记录仪设计(第2页)》