spfanlost 发表于 2013-7-25 22:01:09

74hc138+74hc164控数码管如何实现像点阵一样的移位效果?

本帖最后由 spfanlost 于 2013-7-25 21:58 编辑

我是一个Beginner,谢谢各位。
做了一个数码管的万年历,74hc138控8位数码管位选,74hc164控其段选:显示的数据有,月,日,星期,时,分,秒,温度在这8位上显示,显示部分写了三个显示界面的:月日周;时分秒;温度。显示的时候三个界面显示函数轮流显示。
以前的每一位显示是这样写的
if ( led_site == 1 ) //第一位数码管显示
   {
    en_=0; //138的使能端,为了消除残影
    sendbyte( tab[ 1 ] ); //发送164段码
    a_ = 0; b_ = 0; c_ = 0; //第一位显示
    en_=1;
   }
调时的时候显示界面是利用“月日周”和“时分秒”的显示界面各位的显示数据的闪动来显示的。显示效果如http://player.youku.com/player.php/sid/XNTA4NTgxOTcy/v.swf
现在想升级这个程序,调时的时候想实现滑动显示效果,但是实现移位效果的话需要改变a_,b_,c_的值,我想到用如下的宏定义的方法做,由于自学的c功底差,往下就没思路了。。。希望大家指导下,感激不尽。。。
#define         SMG_1         a_ = 0; b_ = 0; c_ = 0 //138的输入脚,全0选择第一位数码管。
#define        SMG_2         a_ = 0; b_ = 0; c_ = 1 //138的输入脚,001选择第二位数码管。

页: [1]
查看完整版本: 74hc138+74hc164控数码管如何实现像点阵一样的移位效果?