资源预览内容
第1页 / 共14页
第2页 / 共14页
第3页 / 共14页
第4页 / 共14页
第5页 / 共14页
第6页 / 共14页
第7页 / 共14页
第8页 / 共14页
第9页 / 共14页
第10页 / 共14页
亲,该文档总共14页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
基于单片机的 IC 卡智能水表源代码作者:清华大学 杨家沛;*;本系统所用 CPU:PIC16F84;采用外接 RC 经济阻容振荡方式:R=100K C=100P; 时钟频率约 72KHz; 机器周期约 56us;*INCLUDE “PIC 84.H” ;PIC84 头文件;*;液晶显示命令字定义;*SYSDIS EQU B00000000 ;关闭液晶系统振荡和偏振命令字SYSEN EQU B00000001 ;打开液晶系统振荡LCD ON EQU B00000011 ;打开液晶偏振发生器BIAS 1 EQU B00100000 ;液晶显示方式命令字;*;PIC I/O 口线 输入输出方式定义字;*O RB EQU B01000110 ;RB 口输出状态定义字;输出状态:RB0,RB3,RB4,RB5,RB7 均为输出,RB1,RB2,RB6 为输入;I RB EQU B01100110 ;RB 口输入状态定义字;输入状态:RB0,RB3,RB4,RB7 为输出,RB1,RB2,RB5,RB6 为输入;0 RA EQU B11110000 ;RA 口定义字;RA4 为输入,低 4 位均为输出;*;各口线作用定义;*SWCH1 EQU RA2 ;开阀控制,低电平有效SWCH2 EQU RB0 ;关阀控制,低电平有效S VOLT EQU RB7 ;IC 卡电源地控制(即控制 IC 卡座电源) ,低电平有效SDA EQU RA4 ;IC 卡串行数据线(双向)SCL EQU RB4 ;IC 卡时钟线S T EQU RB6 ;IC 卡插卡检测线.=1 表明 IC 卡已插入SPK EQU RB3 ;蜂鸣器控制,高电平蜂鸣V_MONI EQU RB2 ;电池电压检测线.=1,说明电池电压正常,否则说明过低WR EQU RA1 ;液晶显示时钟输出,正跳变有效DATA EQU RA0 ;液晶串行数据输出,=1,为 0;=0,为 1CS EQU RA3 ;液晶片选控制,高电平有效(同时控制水脉冲,和 IC 卡)W IN EQU RB1 ;0.1m3 脉冲输入线(负跳变有效)F KEY EQU RB5 ;作为防拆表输入线;*;IC84 通用寄存器定义(共有 68 个):地址为 0CH4FH;*XDATA EQU 0CH ;通用数据暂存单元CON1 EQU 0DH ;循环条件暂存单元CON2 EQU 0EH ;循环条件暂存单元CON3 EQU 0FH ;循环条件暂存单元CON4 EQU 10H ;循环条件暂存单元FLAG EQU 11H ;通用标志字节(各位意义见后)DFLG EQU 12H ;液晶显示标志字节(各位意义见后)DA1 DSP EQU 13H ;液晶显示高 2 位(BCD 码)DA2 DSP EQU 14H ;液晶显示低 2 位(BCD 码)L CON EQU 15H ;循环控制,如果=10 则读卡SW DL EQU 16H ;关阀延时数T CON EQU 17H ;FUNCTION KEY TEST COUNT(NO USE)ST FLG EQU 18H ;W CRC EQU 18HS0 EQU 2FH ;十六进制-十进制(BCD)中十六进制数暂存S1 EQU 2EH ;R0 EQU 13H ;转换后的 BCD(4 位)暂存R1 EQU 14H XDATA1 EQU 1AH XDATA2 EQU 1BHCON5 EQU 19HXDAT EQU 1CHF ST1 EQU 35H ;机器开始标志单元(正确的开始标志值为 55HF ST2 EQU 36H ; 以及 0AAH)RANDHI EQU 4AH ;加密用随机数高字节RANDL0 EQU 4BH ;加密用随机数低字节;*;下列文件寄存器用来比较用户码及 M1 码;*F VAL EQU 37H ;电磁阀开关标志WQT H EQU 27H ;以下 3 单元为用水总量存储单元,此为高字节WQT M EQU 38H ;中字节WQT L EQU 39H ;低字节C RD EQU 3AH ;读卡条件W HI EQU 3BH ;以下 2 单元是剩水总量存储单元,此为高字节W LOW EQU 3CH ;低字节EFLG EQU 3DH ;写片内 EEPROM 剩水单元选择标志. 0 选 EEQ1,;否则选 EEQ2;*;读 IC 卡标志;*READ F EQU 3EH ;如不等于 0,则说明 IC 卡未被读过;*;下列各信息读自 IC 卡;*USER1 EQU 3FH ;用户码 3 字节, 高USER2 EQU 40H ; 中USER3 EQU 41H ; 低M1 H EQU 42H ;M1 码 3 字节 高M1 M EQU 43H ; 中M1 L EQU 44H ; 低C RD0 EQU 45H ;原读卡条件YEAR EQU 46H ;年MON EQU 47H ;月DAY EQU 48H ;日HOUR EQU 49H ;时M2 H EQU 4AH ;M2 码 3 字节M2 M EQU 4BH ;M2 L EQU 4CH ;WQ H EQU 4DH ;购水总量,高字节WQ L EQU 4EH ; 低字节R CRC EQU 4FH ;校验码;*;液晶显示标志字节(12H) ,各位定义如下;*F WQF EQU 0H ;传感脉冲处理否标志位. =1,说明已被处理;否则,未处理READED EQU 1H ;读卡标志位. =1,说明 IC 卡已读F T C EQU 2H ;是 工 厂 测 试 用 IC卡 否 标 志 位 .=1, 说 明 是 测 试 用 IC卡F S T EQU 3H ; 暂时未用AN KEY EQU 4H ; 暂时未用F OFF EQU 5H ; 暂时未用C LOW 2 EQU 6H ; 暂时未用S OPEN EQU 7H ; 显示开阀标志位.=1,说明开阀;=0,则显示关阀;*;标志字节(11H) ,各位定义如下;*F T EQU 0H ;小 数 点 闪 烁 标 志 位 .=1, 则 点 亮 小 数 点 ; =0 则 不 显 示CARD ON EQU 1H ;插卡标志位.=1,说明有 IC 卡F WQ EQU 2H ;干簧传感开关闭合标志位(即用水).=1,说明闭合F VL EQU 3H ;电池电压过低标志位.=1,说明过低SW OPEN EQU 4H ;阀门已开否标志.=1 说明阀已开 ;关C LOW EQU 5H ;剩水总量过低标志位
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号