FM20L08FRAM与一般的SRAM在使用过程中有所差别。FM20L08在 为低电平CE2为高电平时被选中,每一次访问都必须确保 的由高向低的跃变。由于铁电存储器使用的技术比较特殊,在操作过程中有预充电过程。预充电操作是为新访问记忆体的一个内部条件,所有记忆体周期包括记忆体访问和预充电,预充电是由 引脚为高电平开始,它必须保持高电平至少为一特定的最小时间。

4、 温度记录仪系统软件设计

程序分为主程序、数据采集程序、USB通讯程序[3]。工作过程为: 记录仪首先加电压, 通过外部信号进行中断, 使单片机进入数据采集的子程序并循环,达到定时时间后, 停止采集,退出子程序, 进入主循环, 等待串口信号外部触发, 从而进入数据传输子程序, 将数据通过串口送入PC 机,图3为温度记录仪程序流程图。

基于铁电存储器的温度记录仪系统的软硬件设计

图3 温度记录仪程序流程图[page]

5、抗干扰措施

5.1 硬件抗干扰

为防止记录仪在回收并重新上电以后, AD的误操作将存储器中的数据冲掉,应考虑从硬件设计上排除这种可能性, 最根本的方法是从硬件上断开与采集模块的连接。

5.2 软件抗干扰

单片机受干扰信号作用时, 将使系统失控, 最典型的就是PC 的状态值。它的修改将导致两种主要的软件非正常工作形式:“程序跑飞”和“死循环”, 为此在设计上采用了三种抗干扰方法:(1) 指令冗余技术。指令由操作码和操作数组成,操作

码指明CPU要完成什么样的操作,而操作数是操作码的对象。单字节指令只有操作码,隐含操作数;双字节指令,第一个字节是操作码,第二个字节是操作数;三字节指令第一个字节是操作码,后二个字节是操作数。CPU在取指令的时候是先取操作码再取操作数,如何判断是操作码还是操作数就是通过取指令的顺序。而取指令的顺序完全由指令计数器PC来控制,因此,一旦PC受干扰出现错误程序便会脱离正常轨道,出现“乱飞”,这样就会出现把操作数当作操作码,或者把操作码当作操作数的情况。但只要PC指针落在单字节指令上程序就可纳入正轨,所以为了快速将程序纳入正轨,应该多用单字节指令,并在关键的地方人为插入一些单字节指令NOP,或将有效的单字节指令重写,这就称之为指令冗余。常用的方法就是在一些双字节、三字节指令后面插入两个单字节指令NOP,或在一些对程序的流向起决定作用的指令前面插入两条NOP指令。还可对一些重要的指令进行重复放置。但采用指令冗余技术将程序纳入正轨的条件是:乱飞的PC必须指向程序运行区。 (2) 看门狗技术[4]。 专用硬件看门狗是指一些集成化的或集成在单片机内的专用看门狗电路,实际上它是一个特殊的定时器,当定时时间到时发出溢出脉冲。从实现角度上看,该方式是一种软件与外部专用电路相结合的技术,硬件电路连接好以后,在程序中适当地插入一些看门狗复位指令,保证程序正常运行时看门狗不溢出;而当程序运行异常时,看门狗超时发出溢出脉冲,并通过单片机的RESET引脚使单片机复位。 (3) 软件陷阱技术。当乱飞的程序进入非程序区的时候,就可设定软件陷阱对乱飞的程序进行拦截从而将程序引向一个固定的位置。这样就可将捕获的程序重新纳入正轨。软件陷阱主要就是把程序重新引入它的复位入口处,也就是说在适当的地方设置这样的指令: