原创 GSM远程抄表开发

2007-11-9 15:33 2723 3 3 分类: MCU/ 嵌入式

单片机选用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条评论)

登录后参与讨论
EE直播间
更多
我要评论
0
3
关闭 站长推荐上一条 /4 下一条