中国IEEE
关于我们 | 会员登陆 | 收藏本站 | 留 言 薄
 

 | 网站首页 | 电子知识 | 单片机知识 | 电路设计 | 微电子技术 | SCADA系统 | 资源下载 | 给我留言 | 谷歌商城 | 视频教程 | ieee | 
热门搜索关键字: 单片机教程 | 三极管 | 二极管 |  C语言汇编语言SCADA元器件模拟电子 |
cnieee.com baidu
栏目导航  
栏目更新推荐  
·PIC单片机程序设计基础
·AD7416+PIC16F84+PC机构建的测温系…
·PIC系列单片机数据存储器的特点和功…
·Microchpip带128K闪存的单片机
·PIC16C55控制多用电子钟的工作原理
·PIC系列单片机数据存储器的功能介绍
·什么是PIC
·PIC8位8脚单片机12C5××和12CE5×…
点击TOP(10)  
  • 此栏目下没有热点文章
  • 图片文章  

    PIC单片机程序设计基…

    AD7416+PIC16F84+PC…

    PIC系列单片机数据存…

    PIC系列单片机在消毒…
     
    您现在的位置: 中国IEEE中国电气电子工程师网 >> 单片机知识 >> 硬件知识 >> pic单片机 >> 正文

    PIC16C55控制多用电子钟的工作原理
    文章来源:不详 点击数: 更新时间:2008-4-15 【字体:
    (欢迎光临中国IEEE,希望本文能对您有所帮助http://www.cnieee.com)


    相关文章:

    IC卡燃气表的设计方案及主要器件的选用
    PIC系列单片机简介
    通过打印口读写IC卡
    多功能LED译码显示驱动ICPS7219

  • 上一个文章:

  • 下一个文章:
  • 发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
     
    关于〖PIC16C55控制多用电子钟的工作原理〗的最新评论:
    本机用四位LED数码管扫描式显示,还有消隐(省电)工作方式,使用起来非常灵活、方便。
      一、工作原理
      电子钟电路见图1。

     



      RB7口是定时指示端,在定时开期间输出高电平,驱动V1发光,该口也可经缓冲作定时输出口;RB6是双限触发控制的定时输出口,其工作方式是:在RB7高电平期间,若RB1为高电平,则RB6输出高电平;若RB0为高电平,RB6输出低电平;若RB1、RB0同为低电平,RB6保持原态;同为高电平时,RB6输出低电平。RB5、RB4用于驱动脉冲继电器,RB6上升沿触发RB5输出高电平开脉冲;在RB6下降沿触发RB4时,RB4端输出高电平关脉冲,开/关脉冲的持续时间均为125ms。
      RB3是消隐控制器,接高电平(即SK1闭合)时,显示屏及秒闪正常;否则,显示消隐。显示消隐时,时钟及各控制逻辑都正常运行,如忽略RB4至RB7各口的驱动电流,则在3V供电时,整机电流不足20μA,即两节5号电池可用数月!RB2选择数码管极性,RB2为低电平,使用共阴LED;RB2为高电平,则用共阳LED。数码管的极性是在上电初始化时,根据RB2口状态确定的,工作过程中改变RB2的电平则不起作用。
      本机设S1~S4四个按键,S1是功能选择键,S2是小时增量调整,S3是分钟增量,S4用于分钟减量调节,其使用方法为:
      上电时,RB5至RB7均为低电平,RB4端送出一个关脉冲,使SK1闭合,整机正常显示、工作,RC7口送出秒闪脉冲,RC6~RC0送字段码。RA3~RA0分别为10时、时、10分、分位的位码输出。这时,按一下S2或S3(时增量/分增量键),可使RB7端置位或复位。
      在正常走时期间,秒闪正常;在校对或设置定时时,秒停闪。例如:在正常走时期间,按一下S1键,秒闪停止,屏幕显示J-,表示可以校对时间。这时再按S2~S4中任一键,屏幕显示现在时间,但秒不闪,此刻可按S2~S4校对时钟。再次按S1,屏幕显示1∪,表示可以设定第一次开时间,此时按S2~S4对时间进行查看及设置。继续按S1,系统显示1∩,表示可设置第一次关时间……依次进行。设置好系统及3次开关时间后,整机回到正常显示状态,秒闪恢复。
      如欲取消某次开/关定时,只需把该次的开与关时间设置成相同值即可。
      笔者曾把该时钟用于定时定压供水控制系统,RB6端用于驱动继电器(也可用RB5与RB4两端驱动脉冲继电器),RB1端接水压(水位)的低限输入,RB0端接高限输入,设置好定时,一个简易的定时定压自动供水系统即告完成。
      二、编程技巧
      PIC16C55程序存储器只有512字节,加上采用外接32768Hz晶体振荡方式,时钟速度较低,因此,统筹好系统的工作时序与人机界面之间的关系是软件设计成败的关键。本机编程采用如下方案:
      软件工作流程见附图2。

     



      PIC16C55的一个机器周期是4个时钟周期,不难算出,本系统中每秒有8192个机器周期。在编制软件时,先设定单片机内部定时计数器F1的计数方式为机器周期的64分频。这样,每当F1溢出时,系统递加2秒。平时,系统每128个机器周期内用RC口与RA口驱动扫描一次显示屏,可保证每秒内扫描64次显示屏,基本上无闪烁感。而128个机器周期正是F1的第0位(为便于叙述以下简记为F10)每次下降沿的间隔时间,我们可以编一段程序,当F10的下降沿到来时,扫描一次显示屏,每当F1的低4位为全0时(125ms一次)使系统检测一次RB口与按键状态,并进行相关处理,部分相关程序如下:
    WAIT  BTFSC 1,0  ;等待F10的下降沿,编程时
        GOTO WAIT ;要保证每次下降沿前到此
        MOVFW 1
        SKPNZ
        GOTO CLOCK ;F1=0,满2秒,转时钟处理
        ANDLW 0FH ;屏蔽F1高4位
        SKPZ
        GOTO DISPLAY;F1低4位不为0,转显示
        MOVLW 0C0H ;满125mS,使RB口脉冲复位
        ANDWF 6,1
        MOVLW 0FH ;检测按键
        TRIS 7
        MOVFW 7
        ANDLW 0FH ;保留按键数据
        SKPZ
        GOTO AN  ;有键值,转按键处理
    DISPLAY ……     ;显示扫描,定时管理RB口
    CLOCK ……     ;时钟,定时处理程序
    AN   ……     ;按键管理程序
    | 设为首页 | 加入收藏 | 联系站长 | 友情链接 | 版权申明网站地图 | 名站导航 | 管理登录 | 
    本站资源部分来自互联网,如侵犯您的权利,我们将予以删除  鲁ICP备08006092号
    本站欢迎同类网站做友情链接,QQ留言
    中国IEEE 中国电气电子工程师网 版权所有