74HC595 выходы не работают параллельно
- Войдите на сайт для отправки комментариев
Сб, 05/12/2015 - 21:01
Всем привет, пытаюсь запитать все свтодиоды одновременно с помощью регистра 74HC595. Почему-то получается какое-то мигание, светодиоды не горят постоянно, видео бага:
https://www.youtube.com/watch?v=RhkEZ0ccisQ
Код:
int DS_pin = 8;
int STCP_pin = 9;
int SHCP_pin = 10;
int flag = 0;
int leds = 7;
void setup()
{
pinMode(DS_pin,OUTPUT);
pinMode(STCP_pin,OUTPUT);
pinMode(SHCP_pin,OUTPUT);
pinMode(leds,OUTPUT);
writereg();
}
boolean registers[8];
void writereg()
{
analogWrite(leds,130);
digitalWrite(STCP_pin, LOW);
for (int i = 7; i>=0; i--)
{
digitalWrite(SHCP_pin, LOW);
digitalWrite(DS_pin, registers[i] );
digitalWrite(SHCP_pin, HIGH);
}
digitalWrite(STCP_pin, HIGH);
}
void loop()
{
if(flag ==0){
for(int i = 0; i<8; i++) {
registers[i] = HIGH;
analogWrite(6,100);
delay(100);
writereg();
}
flag = 1;
}
}
Сетодиоды с рабочим напряженим 5-6 В, поэтому не ставил резистр, я думаю, что это не принципиально , потому что выходы регистра подают напряжение последовательно на ПАРАЛЛЕЛЬНЫЕ ВЫХОДЫ.
Схема:

Строчки 25 и 27 закоментируй или удали и будет тебе счастье.