单片机选用w77e58,速度快,关键是1kb的内存,有两个串口,一个以485的方式访问电表,一个负责连接tc35i手机模块。
;///与电表通讯:
;//发送时数据项要加上33h,接收时相应的要减去33h,否则数据错误.
;//电表1200波特率,模块自适应,可用9600默认值
;//内存分为3部分,一部分存放超表所的数据,一部分存放接收到的短信息,剩下一部分存放系统信息(电话号码,电表地址,抄表间隔等)
;//为减轻服务器压力,避免数据丢失,终端采用在相同的时刻抄表,在不同的时刻发送,发送延迟时间取决于电表地址
;//为延长sim卡寿命,串口采用中断方式,收到的短信直接进入mcu内存,然后置标志等待处理
;//所用的系统参数在开机时从sim卡中读取,如果卡中没有则启用默认值,在运行过程中可随时通过短信息改变各项参数
;//为保证时钟准确性,在程序中加入GSM网络时间同步功能.
;//系统开机发送第一次抄表述据,以后到设定的时间发送
;//短信息不经过sim卡直接送给mcu,mcu用中断方式接收短信。
;//加入sim卡故障自动检测与恢复
;//加入与电表通信故障与恢复
;//加入预付费电表接口
;//加入gprs通信功能
;//接入传感器,实现有人靠近报警功能
;//加入电力故障报警功能,包括:停电、漏电、合闸、低压故障、延时分匹送电、开计量箱、
;//关计量箱、缺相、故障自动停电、超压、失压等功能,其它功能可根据用户作调整。
;//加入报警内容存档功能,可存储1600条报警信息
;//加入GPS定位功能。
star:
clr fengming
mov a,27h
cjne a,#0dh,sta
lcall star1
clr p0.2 ;打开液晶显示器灯光
ljmp e13
sta:
mov 27h,#0dh
mov a,#00h ;00h打开看门狗,30h关闭看门狗
lcall wrsr ;写看门狗状态寄存器
lcall xhch ;初始化液晶显示器
clr p0.2 ;开灯光
mov dps,#00h
mov dptr,#table1 ;液晶显示
lcall xh3
mov dptr,#table2
lcall xh33
lcall star1 ;初始化寄存器
clr p3.3 ;模块开始点火
lcall delay1
setb p3.3 ;模块点火结束
lcall delay1
clr p3.6
clr p3.7
mov r7,#14h
wait2:
lcall delay1
djnz r7,wait2
mov dptr,#table16 ;///系统初始化
lcall xh3
lcall star1
clr p1.1 ;///75176接收
mov r7,#12h
wait3:
lcall delay1
djnz r7,wait3
lcall dog
lcall sw
mov r7,#12h
wait4:
lcall delay1
djnz r7,wait4
lcall se
lcall sh
;;;;;;;;;;;;;;;;;;;;;///以下为测试
mov dptr,#table3 ;///开始抄表
lcall xh33
lcall chaobiao
mov dptr,#table14 ;发送抄表数据
lcall xh33
lcall delay1
lcall delay1
lcall sg ;///////发送抄表短信
mov dptr,#table2
lcall xh33
e13:
lcall sf ;查询抄表时间是否到来
clr p3.6
clr p3.7
sjmp e13
文章评论(0条评论)
登录后参与讨论