联系方式
地 址:深圳市龙岗区南湾街道平吉大道1号建昇大厦B栋1605号(李朗软件园对面)
联系人:周工
电 话:0755-88820678
传 真:
信 箱:498187676@qq.com
P87LPC761单片机控制的时间控制器系统
1.系统简介

  该时间控制器是以P87LPC761单片机为核心,扩展一片74HCl64组成的小系统,控制一路继电器,可以设定一天中的时间,设定继电器的开启时间和关闭时间,一共可以设定6组定时,可以消除不需要的定时,能够紧急启动;所有的设定均通过键盘实现,按键具有连击功能,每个状态都有指示灯。该时间控制器采用外部100kHz晶振,同时采用交流电供电,配以充电电池,在交流电去掉以后,进入休闲模式,时钟继续运行。

  2 硬件电路设计与分析

  系统功能框图如图1所示。本系统设计的难点不在硬而在低频晶振下的软件设计。

                      

    整个硬件电路可分为3部分:电源、键盘显示和CPU部分,分别分析如下。

  2.1 电源部分

  把交流电转换成单片机所需的直流电。这是一个很常见的电源电路。为了确保去掉交流电之后,时钟能继续运行,配以充电电池,在电源部分加上了充电电路。在有交流电的时候,直接利用外部电源,同时给充电电池充电,去掉交流电以后,利用充电电池做电源,进入休闲模式。

  2.2 键盘和显示电路

                        点击在新窗口中浏览产品

    为了节省元件,采用动态扫描的方式来显示时钟,在这部分扩展了一片74HCl64。单片机通过串行口向74HCl64发送数据,在七段数码管上显示,每个数码管公共端都加上了三极管,是作扫描信号的电流放大以驱动各数码管。

  2.3 CPU部分

  CPU部分是时间继电器的核心。这主要由P87LPC761来控制。作为Philips小型封装系列中的一员,P87LPC761是20脚封装的单片机,适合于许多要求高集成度、低成本的场合,可以满足许多方面的性能要求。P87LPC761提供高速和低速的晶振以及RC振荡方式,可编程选择,具有较宽的操作电压范围,可编程I/O口线输出模式选择,可选择施密特触发输入,LED驱动输出,有内部看门狗定时器。P87LPC761采用80C51加速处理器,结构指令执行速度是标隘80C51 MCU的2倍。CPU部分电路原理图如图3所示。

                         点击在新窗口中浏览产品

    3 软件设计
  
  P87LPC761单片机每个机器周期为6个时钟周期,采用100kHz晶振,每个机器周期为60/Is。根据实验,为了保证LED看起来不闪烁,点亮数码管的时间间隔不能大于24ms,一共有4个数码管,则每两个数码管点亮的时间间隔不能大于6ms。程序设计应注意这一点,在每两次中断之间一共有100个机器周期,很有限,据此在编程时应遵循以下原则:

  (1)程序尽量简洁主程序尽量短。

  (2)中断程序尽量短,把尽可能多的时间给其他程序。

  (3)分支程序尽量多尽量短不做无用功。

  鉴于篇幅,这里只介绍程序整体流程图,如图4所示。相关问题处理

                          点击在新窗口中浏览产品

    
    点击在新窗口中浏览产品
    点击在新窗口中浏览产品

    4.1 计时补偿

  定时器。工作在方式1,而方式1的计数受到软件的影响。为了减少计时误差,在给定时器1恢复初值(3CBOH)的时候,要把软件所占用的时间补回来。在中断中重新赋初值采取如下方式:

    点击在新窗口中浏览产品

    通过软件补偿后,在晶振准确的情况下,能够给计时带来误差的就仅仅只有中断的响应时间了。

  4.2 低功耗处理

  低功耗是这个设计所必须处理好的问题。通过交流电检测电路检测交流电的存在与否。在程序中是这样处理的:查询P1.3口的电平,当P1.3口是高电平时,就进入正常状态即显示、键盘、所有中断、串行口都正常工作,一旦P1.3口为低电平,则关掉显示、键盘、串行口以及T1中断,即只开放刷新时钟的TO中断(这是为了保证在休闲模式下,时钟仍能运行,数据不丢失)进人体闲模式。为了降低系统功耗,还需要关闭掉电检测、比较器等,这部分工作在初始化部分完成。

  4.3 状态指示灯

  为了充分利用系统硬件资源.利用七段数码管的小数点来做状态指示灯。因为在时钟显示里面没有小数。我们在程序中是这样控制小数点的,在七段代码表里面把有小数点的代码放在无小数点代码的后面,相同的数字有无小数点的代码位置相距10,在需要小数点的时候,把取代码的指针加上10就可以了。安排了2个指示灯,D10(绿)是开启时间指示灯,D11(黄)是关闭时间指示灯。若绿黄两灯都亮,则表示当前这组定时已经被禁止了。

    

返回顶部