74hc595级联双色点阵消影问题,请高手帮忙.以下是程序: 30

#include<reg52.H>#include<intrins.H>#defineucharunsignedchar#defineuintunsignedintsbi... #include <reg52.H>#include <intrins.H>#define uchar unsigned char#define uint unsigned intsbit stcp=P1^0;sbit shcp=P1^1;sbit ds=P1^2;sbit stcp_vcc=P0^0;sbit shcp_vcc=P0^1;sbit ds_vcc=P0^2;
void sh595vcc(uchar l){ uchar k,num; num=l; for(k=0;k<8;k++) { shcp_vcc=0; ds_vcc=num&0x80; num<<=1; shcp_vcc=1; } stcp_vcc=0; _nop_(); _nop_(); stcp_vcc=1;}
void sh595(uchar h){ uchar k,num; num=h; for(k=0;k<8;k++) { shcp=0; ds=num&0x80; num<<=1; shcp=1; }}
void out595(){ stcp=0; //_nop_(); //_nop_(); stcp=1;}void send2byte(uchar dat1,uchar dat2){ sh595(dat1); sh595(dat2); }
void delayms(uint i)//延时函数{ unsigned int j; for(;i>0;i--) for(j=100;j>0;j--);}
void main(){ uchar i; while(1) { for(i=0;i<8;i++) { sh595vcc(0x08); send2byte(~0x08,0xff);out595(); delayms(10); send2byte(0xff,0xff);out595(); delayms(10); } }}

运行结果如上图
如果不要 send2byte(0xff,0xff);out595();这句的运行结果如下图

请高手帮忙解决一下这是什么问题;
以下是电路图
展开
 我来答
joy200699
2015-01-14 · TA获得超过2278个赞
知道小有建树答主
回答量:516
采纳率:14%
帮助的人:120万
展开全部
可能是太亮了,适当串接电阻,限制流过LED的电流。或者类似跑马灯轮询方式控制,
不要一直停留在同一点上。
追问
我试过点亮4个角也是一样的.动态扫描就会出现,静态就不会出现这种情况..
东莞搏信智能
2024-10-16 广告
作为东莞市搏信智能控制技术有限公司的一员,TA142张力信号放大器是我们公司的一款杰出产品。它采用先进的全彩显示屏,能直观显示左、右张力及合力,便于操作。TA142具备RS485-RTU和CAN通信功能,可与PLC等设备无缝对接,实现远程通... 点击进入详情页
本回答由东莞搏信智能提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式