楼主的程序好像有点问题:驱动程序增加消隐代码,for循环要与数组成员对应,修改如下。手上无条件验证,你试试。 void red_send()//发送红色点阵数据 { uint index; greenOE=1;//绿色595输出不使能 // for(index=1;index<17;index++) for(index=0;index<16;index++)//与数组成员对应 { redOE=1;//红色595输出不使能 Init_red595(0xff,0xff);//添加消隐代码 shuaxin(index);//138译码器刷新 Init_red595(display[index+16],display[index]);//带入红色点阵要发送的数据 redOE=0;//红色595输出使能 delay(500); } } |
从两条发亮的位置来看(第8列和第16列),这是你在传送1字节数据(8位)后去读取另一字节进行下一次传送的时间加长了最后一列的扫描时间,可根据这一现象修改最后1位的时间即可 |