首 页文档资料下载资料维修视频包年699元
请登录  |  免费注册
当前位置:精通维修下载 > 文档资料 > 家电技术 > 维修教程知识 > 电子制作
用AT89C205l单片机实现七彩动感发光字功能
来源:本站整理  作者:佚名  2011-01-27 10:12:14



  将颜色数据和显示时间(速度)相组合就可方便地实现七彩跳变、渐变、追逐等花样效果,变化方式可达百种以上。例如将单种颜色顺序从左到右或从右到左依次点亮或熄灭、从两边到中间或从中间到两边依次点亮或熄灭,或将两种或两种以上颜色作为一个变化单位也可获得多种变化效果。

  除此以外,也可以依据人眼视觉的特殊性,将以上变化方式结合快慢变化又可以获得多种多样的显示效果。

  编程时将各种花样效果的颜色数据和显示时间保存在数据存储区,控制时读取颜色和时间数据后输出到相应的输出锁存器,在LED发光单元上就可体现出丰富多彩的变化效果。实现较为简单的七彩跳变效果的程序流程图如图所示。

  下文给出以“灯”字为例实现较为简单变化效果的程序。该字有75个发光点共225颗LED,划分为25个发光单元。

  以下为灭LED后用七色逐个发光单元延时点亮LED,表现为“书写”效果

   Start:

    mov r2,#25;控制25个发光单元
  mov r0,#OOh ;从灭LED开始
  Led_on_Step:
  mov a,r0;送颜色数据
  acall write595—3bit;颜色数据移三位
    djnz r2,Led_on_Step
    clr rcIk
    Setb rclk;上升沿时颜色在LED上显示
    acall delay_1s;延时1s再 
点亮下一个发光单元
  Inc r0;更换颜色
  CJne r0,#08,Led_on_Step;
是否已显示七种颜色
    ;以下为实现七色轮流闪烁显示
    mov r2,#25
    Led_on_Flash:
    mov a,#00h;灭LED
    acall write595_3bit
    djnz r2,Led_on,Flash
    clr rclk
    Setb rcik
    acall delay_ls;LED关闭1s
    mov r2,#25
    mov r0,#O1h;从蓝色开始
    Led_on_Flash1:
    mov a,r0   
    acall write595_3bit
    djnz r2,Led_on_Flashl
    cir rclk
    Setb rclk
    acall delay_is; LED壳1s
    Inc r0;更换颜色
    Cjne r0,#08,Led_on_Step;是否已显示七种颜色
    ;以下为用两种颜色显示“灯”字
    mov r2,#12;“火”用红色显示(含12个发光单元)
    Color_Red:
    mov a,#01h
    acall write595_3bit
    djnz r2,Colorl
    mov r2,.#13;“丁”用蓝色显示(含13个发光单元)
  Color_Blue:
  mov a,#06h
  acall write595_3bit
  djnz r2,Color2
  cir rclk
  Setb rclk
  acall delay_10s;延时10s
  Sjmp Start

上一页  [1] [2] [3] 

关键词:

文章评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分)
Copyright © 2007-2017 down.gzweix.Com. All Rights Reserved .
页面执行时间:123,054.70000 毫秒