基于单片机AT89C51的无线多路灯具控制系统

更新时间:2023-11-02 19:54:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

基于单片机AT89C51的无线多路灯具控制系统

[摘要]介绍一种基于单片机AT89C51和无线传输模块LZ713i GPRS DTU构成的多路灯具控制系统。论述其工作原理和软硬件设计方法。

[关键词]单片机AT89C51 无线传输模块LZ713i RS-485接口 看门狗

中图分类号:TP271+.4文献标识码:A 文章编号:1671-7597(2008)1010021-02

一、引言

数据传输方式分为有线方式和无线方式传输。有线方式布线比较复杂,在某些不适合布线的场所需要采用无线方式。现有的一些简易无线发射接收模块传输距离近,速率低,可靠性差,不适合用于产品的设计。本文介绍的LZ713i GPRS DTU无线传输模块,具有传输距离远,速率高,数据可靠的优点,和单片机结合可用于许多场合。

二、系统简介

本系统由一个控制台、多个灯具控制器组成。微处理器采用AT89C51,该芯片内含4k可编程程序存储器,可擦写1000次。复位电路采用具有看门狗功能的MAX813L。通讯接口电路采用MAX1487E[1];无线传输模块采用厦门蓝斯通讯有限公司的LZ713I GPRS DTU ,内部集成了高速嵌入式处理系统,提供TCP/IP协议栈,适用于自身不带,但具有RS232/485/TTL接口通讯能力的设备,为用户提供高速、永远在线、透明数据传输的通道[2]。

(一)控制台

1〃硬件设计。原理图见图1。控制台由键盘、液晶显示器、复位电路和通讯部分组成,完成选号及动作控制。

2〃软件设计。程序由按键处理、显示、通讯和喂狗四部分构成。按键处理部分的功能:判别是否有键按下,无键按下时,返回;有键按下时,首先扫描键盘,得到按键的列值和行值,然后延时12ms去抖动,再判断是否有键按下,若有,根据按键的行值和列值计算键值,并保存键值,之后转入键值解释部分进行处理。显示部分功能:显示输入的设备编号和动作编号。通讯部分的功能:以一定的时间间隔向下位机发送信息。

按键子程序:

KEYSUB:

MOV A,P0 CPLA JZK1

MOV R5,#0FFH

MOV R4,#00H ;第一列值

MOV P2,#0FFH

CLR P2.0

LCALL LIE

MOV R4,#01H ;第二列值

MOV P2,#0FFH

CLR P2.1

LCALLLIE

MOV R4,#02H ;第三列值

MOV P2,#0FFH

CLR P2.2

LCALL LIE

MOV R4,#03H ;第四列值

MOV P2,#0FFH

CLR P2.3

LCALL LIE

K1:RET

LIE: MOV R2,#00H ;第一行值

MOV A,P0

ANL A,#01H

JZ KEY

MOV R2,#01H;第二行值

MOV A,P0

ANL A,#02H

JZ KEY

MOV R2,#02H;第三行值

MOV A,P0 ANL A,#04H JZ KEY

MOV R2,#03H;第四行值 MOV A,P0 ANL A,#08H JZ KEY

MOV R2,#04H;第五行值 MOV A,P0 ANL A,#10H JZ KEY RET

KEY: LCALL DELAY12ms

MOV A,P0

CPLA

JZJ1

MOV A,R2 ;计算键值

RL A

RL A

ADD A,R4;键值=列值(R4)+行值(R2)×4

MOV R5,A;键值保存于R5

J1:RET

显示子程序:

LCDDISP:

MOV R2,#04H ;要显示数据个数

MOV R0,#ADDR;要显示数据地址

L1: MOV A,@R0

LCALL LCD1

DEC R0

DJNZ R2,L1

RET

本文来源:https://www.bwwdw.com/article/5h52.html

Top