①时钟源和时钟信号 CPU的基础时钟模块含3个时钟源:一个内部集成的DCO振荡器,一个低频/高频时钟源(LFXT )和一个高频时钟源( 。后两种时钟源需要外接晶振,在本设计中,外接一个低频晶振(32.768kHz)和一个高频晶振(5MHz)。基础时钟模块提供的3种时钟信号ACLK、MCLK、SMCLK可由软件选择不同的时钟源和不同的分频因子得到。 ②按键电路 利用一键多用、双键复用技术,依靠4个按键,结合LCD显示,可以完成用户参数、厂家参数设置;实时测量传感器输出电压;在线标定压力和差压传感器;并且可以在不同功能之间进行切换。 ③信号采样电路 温度、压力、差压信号通过模拟开关,由CPU控制在不同的时刻进行采样。根据天然气实际流动情况以及降低功耗的要求,每0.5s采样一次差压值,4s采样一次绝压和温度值。采样得到的信号经运放放大后输入到单片机自带的A/D转换器。为降低整机的运行功耗,运放的开断也受CPU的控制,与信号采样同步。 ④LCD显示及驱动 表头采用多段式液晶显示,选用动态的4时分割液晶驱动器。该驱动器具有50个输出端,可产生200段的驱动信号。 ⑤ 外围输出电路 瞬时流量值可以根据用户需要选择不同的方式输出:0~1000Hz的频率信号;每个脉冲代表一定量的脉冲数;也可以将转换成电压信号的流量值,通过V/I转换电路变为4~20mA的标准模拟信号。 ⑥在贮与接口电路 为防止掉电时数据丢失,选用32k×8位的EEP-ROM来存贮用户和厂家设置的参数以及流量累积值。通过485接口芯片实现串口通信。 4 软件设计 4.1 软件模块 ①初始化模块 当系统启动后,需要对时钟源进行分配;对输入输出端口进行定义;对定时器、异步通信模块、模数转换器的控制寄存器进行初始化;对内部RAM和外部的EEPROM进行清零;对一些中断允许寄存器和中断标志寄存器进行初始化;选择CPU的低功率模式。
|