Arduino UnoR3 + LEDs + shift registers

Обсуждаем Arduino, Raspberry Pi и другие электронные компоненты и проекты DIY
Natvorila
Сообщения: 14
Зарегистрирован: 13 фев 2013, 11:23

Re: Arduino UnoR3 + LEDs + shift registers НЕ РАБОТАЕТ КАК О

Сообщение Natvorila »

да. проблема решилась :) можно я уточню: == это точное значение "равно", а = это обратное, т.е. "не равно"? да и еще: сейчас я подключила latch И clock выходы регистров не последовательно между собой, а всех к первому. код Ваш последний. сейчас синхронятся 1й и 3й и 2 и 4й регистры.
Аватара пользователя
Mr.Kubikus
Сотрудник ПАКПАК
Сообщения: 1020
Зарегистрирован: 22 окт 2010, 23:57

Re: Arduino UnoR3 + LEDs + shift registers НЕ РАБОТАЕТ КАК О

Сообщение Mr.Kubikus »

Отлично.

По поводу == и =:

= используется при присвоении значений переменным. Например var1 = 10 - означает, что вы присваиваете значение 1- переменной var1.
== используется при сравнении значений в конструкциях типа if, while, for. Например, в конструкции if (var1 == 1) {func();} func() будет выполняться только когда значение переменной var1 равно 1.


Теперь перейдем к вашему последнему вопросу по поводу четырех последовательно включенных регистров.

Ваш код не работает потому, что в переменной leds, в которой хранится значение для отображения на светодиодах, можно хранить только 16 бит, а для управления четырьмя регистрами требуется 32 бита данных. Размер памяти для переменной указывается при объявлении переменной:
int - 16 бит со знаком
unsigned long - 32 бита без знака.

Чтобы все заработало используйте для объявления переменной leds следующее выражение:

Код: Выделить всё

unsigned long leds = 0;
Рекомендую прочитать на сайте arduino.cc раздел про переменные - http://arduino.cc/en/Reference/VariableDeclaration.
С уважением, Григорий
GitHub FB ВК
Natvorila
Сообщения: 14
Зарегистрирован: 13 фев 2013, 11:23

Re: Arduino UnoR3 + LEDs + shift registers НЕ РАБОТАЕТ КАК О

Сообщение Natvorila »

Григорий, теперь все работает. И звук и последовательность. Еще я думаю, что нужно бы кнопку приделать, чтобы отключать лампу, когда она не нужна. Но надеюсь, что смогу сделать это сама. Еще раз спасибо Вам большое. Как доделаю лампу - выложу :)
Аватара пользователя
Mr.Kubikus
Сотрудник ПАКПАК
Сообщения: 1020
Зарегистрирован: 22 окт 2010, 23:57

Re: Arduino UnoR3 + LEDs + shift registers НЕ РАБОТАЕТ КАК О

Сообщение Mr.Kubikus »

Пожалуйста.

Думаю у вас все получится. Ждем фото вашего изделия и описание.
С уважением, Григорий
GitHub FB ВК
Natvorila
Сообщения: 14
Зарегистрирован: 13 фев 2013, 11:23

Re: Arduino UnoR3 + LEDs + shift registers НЕ РАБОТАЕТ КАК О

Сообщение Natvorila »

Григорий, у меня теперь вопрос по технической части. Для него нужно заводить новую тему или можно здесь? Вопрос вот в чем: в моей лампе применяется Ambient Light Sensor. Есть ли какая-то возможность вынести с этой платки фоторезистор (отнести на расстояние от самой платки сенсора)? Возможно для него есть еще дополнительные неиспользованные разъемы на плате самого сенсора? Я подумываю о том, чтобы выпаять стоящий там фоторезистор и заменить его на обычный фоторезистор, но на более длинных ножках, чтобы он располагался не вплотную к плате. Возможно есть другой более простой способ. Подскажите, пожалуйста, если это так. Заранее спасибо.
Аватара пользователя
Mr.Kubikus
Сотрудник ПАКПАК
Сообщения: 1020
Зарегистрирован: 22 окт 2010, 23:57

Re: Arduino UnoR3 + LEDs + shift registers НЕ РАБОТАЕТ КАК О

Сообщение Mr.Kubikus »

Конечно вы можете выпаять фоторезистор из платы и подсоединить его к ней проводами нужной длины. Просто подпаяете провода к тем контактным площадкам, где был фоторезистор.
С уважением, Григорий
GitHub FB ВК
Natvorila
Сообщения: 14
Зарегистрирован: 13 фев 2013, 11:23

Re: Arduino UnoR3 + LEDs + shift registers НЕ РАБОТАЕТ КАК О

Сообщение Natvorila »

Спасибо! :)))
Ответить