当前位置:首页 > 单片机 > 单片机
[导读]PIC16C5X系列单片机具有可靠性高、功耗低、实用、低价、易学等特点,尤其是OTP产品有与掩模型产口几乎相同的性能和价格,因此被广泛用于工业和民用产品。在应用系统设计中,对于多位数码管(LED)的显示驱动,传统的驱

PIC16C5X系列单片机具有可靠性高、功耗低、实用、低价、易学等特点,尤其是OTP产品有与掩模型产口几乎相同的性能和价格,因此被广泛用于工业和民用产品。在应用系统设计中,对于多位数码管(LED)的显示驱动,传统的驱动方式有两种:一是每个LED单独译码驱动,这需要大量的I/O线;二是段驱动,即采用公共数据线进行位驱动单独扫描,这种方法在软件上需定时扫描,否则显示就会混乱。为了既用很少I/O线,又减少软件设计的工作量,采用串行数据译码驱动电路不失为最佳选择。MC14499是比较理想的器件,但价格昂贵,目前已停产。TEC9607为国产电路,售价低,很适合在各种电子产品上使用。本文介绍了TEC9607的工作时序及与PIC系列单片机的接口电路,并给出了程序清单,软件不作任何改动即可直接应用到PIC系列单片机中。

1. TEC9607功能描述

TEC9607是天潼公司生产的串行共阳极CMOS 5×8段LED数码管显示驱动电路,为全定制专用集成芯片,它由开机自清电路、振荡电路、位扫描驱动电路、5×8位移位寄存器电路、5×8位数据锁存器电路、多路选择器、共阳极段驱动电路组成。可以与各种型号的微控制器(计算机)串行口或并行口连接,专供驱动5位十进制八段(每段至多串联3个LED)共阳极LED数码管或共阴极5×8点阵LED使用。TEC9607的管脚排列如图1所示,各引脚说明如下:

SI(5脚):串行数据输入脚,数据的输入由微控制器(计算机)程序给出。

SCP(6脚):串行移位时钟,用于驱动串行数据的输入。

CS(4脚):片选信号,高电平有效。CS=1,允许SI、SCP把数据移到5×8位移位寄存器;否则移位禁止。内部有上拉电阻到电源。CS在用于一个微处理器带多片TEC9607时做片选使用。

SO(14脚):5×8位串行移位寄存器数据输出。一个微处理器带多片TEC9607时,除了用CS方法扩展外,也可用SO串出的方法扩展。

LCP(3脚):把5×8位移位寄存器中的数据存到5×8位段数据锁存器的脉冲,高电平有效。加入数据锁存器的目的是上一个数据的显示和下一个数据的准备(移位)可同时进行,且能防止数据移位过程中显示数据的闪烁,内部已有上拉电阻到源,平时悬空时为高电平1,表示5×8位串行移位寄存器的数据总是送 5×8位数据锁存器。

OEN(13脚):段输出允许信号,高电平有效。OEN=1时,允许段输出显示;OEN=0,段输出为高阻态。内部已有上拉电阻到电源,悬空时为高电平1。

OSC1、OSC2(2、1脚):振荡电路输入和输出端。OSC1为输入,OSC2为输出。微控制器产生的移位脉冲与显示扫描信号S1~S5是异步工作的。OSC1、OSC2外接电容C可使OSC2输出约2kHz,因此作为该器件的位扫描频率,电容推荐值为1000pF。

A、B…DP(22~15脚):段输出信号,为开路门输出,接LED负载。

S1~S5(11~7脚):位扫描驱动,S1为第一位(个位),S5为第五位(万位)。

R(23脚):开机自清信号引脚,低电平有效。外接电容C到地,可增大开机自清的时间。

TEC9607的工作时序如图2所示,按图2的工作时序传递数据时,先将SCP拉成低电平,随后把第一位数据放在SI线上,在SCP的上升沿, TEC9607将数据采集进去,其它位传送过程是相同的。在5×8位数据传送后,就完成了显示控制过程。40位数据的串行顺序如图3所示。

2.TEC9607与单片机的接口电路

图4是TEC9607与PIC16C5X系列单片机的接口电路。设计时,首先构成单片机最小系统,包括PIC16C5X系列单片机、外复位电路和振荡电路。该接口电路采用PIC16C57RC,它内含 2k×12位 OTP型程序存储器、内置式硬件看门狗电路(WDT)、33条精简单字节指令,并具有二极堆栈,工作频率为0~20MHz,有四种振荡方式可选。 PIC16C5X系列单片机具有片内上电电路(POR)可将VDD与MCLR相连,即可使用POR,但要求VDD的上升速度不低于0.05V/ms,并且 VDD要从0V开始上升,否则不能正确复位。为了可靠,应外接RC复位电路。

当多片TEC9607扩展使用时,可用片选CS进行选择,亦可用第一片TEC9607的SO输出接第二片TEC9607的SI,依次串联的方法。且应考虑SCP的驱动能力。

3.显示程序设计

TEC9607可驱动任意位LED数码管显示。少于5位 (比如2位)时,第一种方法是5×8位串行移位寄存器的低2×8位移入要显示的段码,而高3×8 位全移入“0”,此时只接两位数码管。SI驱动个位,S2驱动十位,S3~S5悬空即可。第二种方法是5×8位串行移位寄存器的高2×8位移入要显示的段码,低3×8位不管它,此时只接两位数码管。S4驱动个位,S5驱动十位,S3~S1悬空。

软件设计中,应使RA口工作在输出状态。下面以四位LED数码管显示为例描述该电路的软件设计,其显示驱动程序如下:TRBUF EQV OAH  ;数据暂存器和循环次数寄存器


    SI  EQU 1   ;RA1为串行数据输入端
    SCP EQU 2   ;RA2为时钟端
    BUFF EQU 10H  ;数据缓存
    MBUF EQU 13H  ;13H,14H,15H,16H四个寄存器为显示缓存
           ;13H最低位显示段码
           ;14H次低位显示段码
           ;15H次高位显示段码
           ;16H最高位显示段码
           ;17H为任意数
  DISBUF EQU OEH  ;OEH,OFH为压缩式显示数据
           ;OEH高两位显示数据
           ;OFH低两位显示数据
   BIT  EQU  9 ;每字节位数(8)
    FSR EQU  4  ;文件选择寄存器
   RA  EQU  5   ;I/O端口A
     CONVERT  MOVWF  2  ;PC=W
  TABLE  RETLW   0FCH   ;“ 0 "
       RETLW 60H  ;“1”
       RETLW  0DAH ; “2”
      RETLW  0F2H  ;“3 " 
           RETLW  66H ; “4”
      RETLW  0B6H  ; “5"
       RETLW  0BEH  ;“6"
      RETLW  0E4H  ;“7"
      RETLW  0FEH   ;“8"
      RETLW  0F6H  ;“9"
      RETLW  00H   ;“ "
      ETLW  7CH   ; “U"
      RETLW  9EH  ;“E"
      RETLW  00H   ;“ "
      RETLW  00H   ;“ "
      RETLW  00H   ;“ "
          DIS  MOVLW MBUF ;将显示段码寄存器    首址(f13)送f4
       MOVWF  FSR
       MOVLW  TABLE ;把段码表起始地址     送BUFF
         MOVWF  BUFF
         MOVF 0FH,0 ;取出最低位待显数据
       ANDLW  0FH
      ADDWF BUFF,0 ;BUFF+W→W         取得段码表中的偏移地址
         CALL CONVERT ;转段码查询子程序
    MOVWF  0      ;段码值送W
    INCF    FSR    ;W?F13
                           ;以下依次完成高三位数据?段码值的转换
    MOVLW  TABLE
    MOVWF  BUFF
    MOVF   0FH,0
    MOVWF  TRBUF
    SWAPF   TRBUF,0
    ANDLW   0FH
    ADDWF   BUFF,0
    CALL    CONVERT
    MOVWF  0
    INCF    FSR
    MOVLW TABLE
    MOVWF BUFF
    MOVF   OEH,0
    ANDLW  0FH
    ADDWF  BUFF,0
    CALL   CONVERT
    MOVWF 0
    INCF FSR
    MOVLW TABLE
    MOVWF BUFF
    MOVF   0EH,0
    MOVWF TRBUF
    SWAPF TRBUF,0
    ANDLW 0FH
    ADDWF BUFF,0
    CALL   CONVERT
    MOVWF  0
    MOVLW  30H  ;使RA1,RA2为输出状态
    TRIS    RA
    BCF RA,  SI
    BCF    RA,  SCP
    MOVLW  MBUF
     MOVWF  FSR
    MOVLW  5      ;传送5字节数据
    MOVWF  TRBUF
       DIS1 MOVF 0,0 ;码段值?W
    MOVWF  BUFF ;W?送数据暂存器BUFF
    INCF    FSR
    MOVLW 8
    MONWF  BIT     ;一字节有8位
       DIS2 BSF RA, CLK   ;CLK端拉成高电平 BTFSC BUFF,7
   BSF RA,SDA  ;数据暂存器D7位送data线
   BTFSS BUFF,7
   BCF RA,SDA
   RLF BUFF  ;数据暂存器左移一位
   BCF RA,CLK ;CLK端被拉成低电平,在其下降沿把data线上的数据采集进去
   DECFSZ BIT
   GOTO DIS2 ;一字节未送完,返回
   DECFSZ TRBUF
   GOTO DIS1  ;三字节未送完,返回
   BSF RA,CL  ;器件操作结束
   BSF RA,EN
   RETLW 0
 

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭
关闭