社区
单片机/工控
帖子详情
74HC595控制132个led出现问题,跪求高手赐教!!!
hennessey
2012-10-16 10:06:17
本人新手,在用3个595和6个三极管控制点亮132个led时,偶尔会出现亮几个的情况,正常情况是每次只亮一个,我现在怀疑是不是595没锁存好,数据没更新导致的,请高手帮帮忙,这个问题解决不了,我就要卷铺盖走人了,,,,泪奔中!!!
...全文
463
5
打赏
收藏
74HC595控制132个led出现问题,跪求高手赐教!!!
本人新手,在用3个595和6个三极管控制点亮132个led时,偶尔会出现亮几个的情况,正常情况是每次只亮一个,我现在怀疑是不是595没锁存好,数据没更新导致的,请高手帮帮忙,这个问题解决不了,我就要卷铺盖走人了,,,,泪奔中!!!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
cyymycc
2012-10-23
打赏
举报
回复
74HC595是串行入并行出芯片
unsigned char bdata ii1; /* 位变量缓存 */
unsigned char HC595[16]; /* HC595数据缓冲区 */
sbit ii27=ii2^7;
HC595_serial(i) //向HC595写一个8位字
char i;
{
unsigned char i1;
ii2=i;
for(i1=8;i1!=0;i1--)
{
HC595_D=ii27;
ii2*=2;
HC595_CLK=0;
HC595_CLK=1;
}
}
woshi_ziyu
2012-10-19
打赏
举报
回复
只要满足595的动作时序就可以
74ls595 (8位输出锁存移位寄存器)的使用方法 .
hennessey
2012-10-17
打赏
举报
回复
图不在我这里,p2.0-p2.5接6个三极管,每个三极管横向连接一路led,有24个吧,,然后每个595的并行输出端,纵向接一路,这样三个595就接了24条纵向电路,导通横向和纵向的交叉就可以点亮交叉点的那个led了,部分程序在上面
hennessey
2012-10-17
打赏
举报
回复
我觉得是这段代码有问题,
uchar xdata sendLightBox[18]={0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF};
void Out595(void)
{
HC595RCK = 0;
_nop_();
_nop_();
HC595RCK = 1;
_nop_();
_nop_();
HC595RCK = 0;
}
//***************************************************************************************
void sendLightBoxNumTo595(void)
{
uchar n,m,sendByteNum;
WDT_CONTR = WDTTIME;
sendByteNum = 17;
for(m=6; m>0; m--)
{
for(n=3; n>0; n--)
{
SendByte(0xFF);
}
Out595();
switch(m)
{
case 1:
{
P2 = 0xFE;
break;
}
case 2:
{
P2 = 0xFD;
break;
}
case 3:
{
P2 = 0xFB;
break;
}
case 4:
{
P2 = 0xF7;
break;
}
case 5:
{
P2 = 0xEF;
break;
}
case 6:
{
P2 = 0xDF;
break;
}
default:
{
break;
}
}
for(n=3; n>0; n--)
{
SendByte(sendLightBox[sendByteNum]); // sendLightBox[18] = {0xff};
sendByteNum--;
}
Out595();
Delay(10);
}
void SendByte(uchar dat) //单片机向74hc595发送数据
{
uchar i;
for(i=0; i<8; i++)
{
if(dat&0x80)
HC595SI = 1;
else
HC595SI = 0;
HC595SCK = 0;
_nop_();
_nop_();
HC595SCK = 1;
dat <<= 1;
_nop_();
HC595SCK = 0;
}
}
dsoyy
2012-10-17
打赏
举报
回复
你没有原理图,看不到硬件连接,没办法回答你的问题。
首先你不要着急,理清楚控制思路。
1、检测三极管受控与否;
2,检测595部分正常部。
必须缩小范围,不能臆断,猜测,要实事求是。
arduino UNO利用
74hc595
控制
8个
LED
状态(方式一)
arduino UNO利用
74hc595
控制
8个
LED
状态(方式一) 先上proteus仿真图: 程序: int ST = 8;//ST CP of
74HC595
int SH = 12;//SH CP of
74HC595
int DS = 11; //DS of
74HC595
void setup () { pinMode(ST, ...
esp32通过
74HC595
控制
16个
LED
灯
74HC595
是一个8位串行输入、并行输出的位移缓存器:并行输出为三态输出。在SCK 的上升沿,串行数据由数据脚(A)输入到内部的8位位移缓存器,并由Q7’输出,而并行输出则是在LCK的上升沿将在8位位移缓存器的数据存入...
基于STM32F103ZET6单片机驱动两个
74HC595
控制
16个
LED
灯系统设计
精英版 通过两个
74HC595
控制
16个
LED
灯。3.代码(都是通过实验的程序)
arduino
74hc595
控制
8位
LED
这里我就不多说了,关于
74hc595
的资料网上有很多,一看就能明白。 2、准备好实验需要的器件
led
8个 230Ω电阻 8个(我没有使用) arduino nuo 导线若干
74hc595
的接线: vcc 5v GND WR 5V HS_CP 12 ST_CP 8 DS 11 ...
74HC595
驱动
LED
点阵或数码管的正确用法
这几天有些时间想做
LED
点阵玩玩,所以需要学习
74HC595
芯片,上网找了几个例程和关于
74HC595
的几篇应用,照猫画虎实际操作一下,哪知根本不可行,教程都是错误的。 于是自己潜心研究了 4天,现在已经可以对
74HC595
...
单片机/工控
27,373
社区成员
28,771
社区内容
发帖
与我相关
我的任务
单片机/工控
硬件/嵌入开发 单片机/工控
复制链接
扫一扫
分享
社区描述
硬件/嵌入开发 单片机/工控
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章