基于PIC16F946的IC卡燃气表的设计
IC卡燃气表是一个小型的智能控制系统,具有体积小、价格低,功耗低,可靠性高,精度高和抗干扰能力强的特点。本文介绍了以Microchip公司单片机PIC16F946为核心的智能化IC卡燃气表的设计。
1 燃气表的整体设计
当用户购买一定数量燃气后,供气公司即把所购买的气量存储在IC卡上。把IC卡插入气表的卡座,液晶屏幕立即显示购气的数量。如果原来的气表中尚有上次剩余的燃气,则新购的气将叠加在原来的数据上并且在屏幕显示。每消耗0.1立方,屏幕小数点后数值将减少。为减小功耗,一般情况下液晶屏幕不一直显示读数,在用户需要知道用气情况时,只要插入IC卡或打开电池盒再推入电池盒即可知道。
IC卡燃气表组成框图见图1。下部是一般的气表(基表),上部是IC卡预付费控制系统。在整体设计中,控制系统与基表有三处相连接:进出气口、及采样口。进出气口为燃气通道,采样接口从气表的读数部分取得信号,经过处理后作为控制系统的计数脉冲。
2 硬件电路设计
2.1 MCU芯片
考虑到产品体积小和高性价比的要求,经过仔细的比较,核心器件最终采用了Microchip公司的8位CMOS单片机PIC16F946芯片,睡眠电流<100nA@2.0V,工作电流8.5μA@32KHz.2.0V,采用64引脚的TQFP封装。芯片内含14KB FLASH存储器、256B的EEPROM、168段LCD驱动、可编程低电压检测和8通道10位AD转换器。其外围可直接连接LCD、报警、IC卡、防拆装置和碱性电池。
2.2 外围组件
对外围可采用PCF8563日历时钟模块,采用事件中断机制,即通常不上电,休眠状态维持在250nA左右,当发生插卡中断触发或者预定的定时事件时,控制电路自行上电,处理结束后自行断电。
因为PIC16F946含有14KB+256B的存储器,所以不需要在外扩展。当个别城市在执行阶梯燃气价格时,导致软件占用的空间变大,可以扩展合适的存储器芯片,对于其他硬件电路不需要修改。
在电机启动阀门的瞬间,启动电流是工作电流的4到7倍,导致电压跳跃下降,此脉冲干扰对控制系统有相当的干扰,尤其在电池电量不足时。对电源方面,要采用控制系统和阀门各使用一组电池,这样虽然增加了气表的成本,但降低了故障率,使维护成本得到下降,总体满意度得以提高。
3 软件设计
3.1 软件流程图
因为整个系统不是很复杂,综合考虑采用汇编语言编制相关的程序可以将整个软件量控制在4KB以内,占用资源少。利用C语言编写,需要提供C编译器,软件量将超过8KB ,容易产生堆栈溢出,但可读性好,缩短了软件编程的时间。软件流程图见图2。
相关文章
- 2024-07-31铁路客车提速轴承外圈非基准端面挡边平行度测量仪的研制
- 2024-02-26实现同一分析周期内两流路并行分析的技术改造
- 2023-03-02智能化色谱分析软件的研究与应用探讨
- 2024-07-09多CCD拼接相机中图像传感器不均匀性校正
- 2022-04-27监控摄像机日夜及彩色黑白转换两用简析



请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。