Технический форум по робототехнике.
andrys » 13 авг 2017, 20:47
ребята подскажите как в кубе 5х5 зажечь только один светодиод... весь мозг уже сломал...
вот начало скетча:
- Код: Выделить всё • Развернуть
#include <LedCube.h>
#define SIZE 5
#define COLS (SIZE*SIZE)
byte levelPins[SIZE] = {A0, A1, A2, A3, A4};
byte colPins[COLS] = {2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34};
LedCube cube(SIZE, levelPins, colPins);
void setup ()
{
}
void loop ()
{
нужно зажечь к примеру 25 светодиод на А4...
много вариантов пробовал - загорается столбец и все...
с digitalWrite указываю 25 и А4 все равно столбец горит...
когда отдельную схемку собирал из диодов относительно GND все ез проблем было, а тут в тупик зашел
Dmitry__ » 14 авг 2017, 01:36
Мда, а код-то где?
Главный телепат стоит в аэропорту с билетами в Крым и сдавать их не собирается
andrys » 14 авг 2017, 06:34
- Код: Выделить всё • Развернуть
#include <LedCube.h>
#define SIZE 5
#define COLS (SIZE*SIZE)
byte levelPins[SIZE] = {A0, A1, A2, A3, A4};
byte colPins[COLS] = {2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34};
LedCube cube(SIZE, levelPins, colPins);
void setup ()
{
}
void loop ()
{
digitalWrite(colPins[24], 1);
digitalWrite(levelPins[A4], 0);
}
вот полностью код от которого я хотел зажечь только один светодиод в кубе...
вообще реально в нем зажечь один светодиод??? сколько скетчей не смотрел нигде не видел, что бы кто то так делал...
Dmitry__ » 14 авг 2017, 14:06
Где же это полный код?
Где настройка пинов на выход? "pinMode". Пустой "void setup" - совсем не умно.
Приведи код к минимальному стандарту ардуины:
http://wiki.amperka.ru/%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5:%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D0%B0-%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D1%8B-%D0%B4%D0%BB%D1%8F-arduinoЗачем отходить от стандарта? У функции digitalWrite надо пользовать "LOW","HIGH".
Про грабли с аналоговыми обозначениями пинов "A0, A1" и.т.д. можно почитать на этом форуме:
http://roboforum.ru/forum86/topic9069.htmlandrys писал(а):вообще реально в нем зажечь один светодиод??? сколько скетчей не смотрел нигде не видел, что бы кто то так делал...
Абсолютно реально, только надо схему показать, может у тебя в схеме как в коде
А вот для зажигания в матрице разных светодиодов, да чтоб было незаметно глазу мелькание, надо постараться написать код динамической индикации. Но опять же все гуглится: "arduino динамическая индикация"
andrys » 14 авг 2017, 22:14
спасибо за подсказку, нашел примеры буду изучать...
куб спаян правильно - А0...А4 ряды минус, плюсовые вертикальные столбцы... каждый ряд проверял последовательность светодиодов подавая питание на минус А и плюсовой светодиодов... все правильно как положено поочередно загорались...
Madf » 15 авг 2017, 12:12
Примечаешь глазом нужный светодиод для зажигания, смотришь куда подключены его выводы, отслеживаешь проводник до МК (какие ноги/порты), дальше один порт выставляешь еденицу (+), другой в 0 (-). Если реализация идет через схему управления (сторонние чипы, ключи), то там скорее всего управляешь единицами (но могут быть и нули, в зависимости от реализации).
Если нет опыта работы с МК, почитай примерами как "мигать светодиодом".
andrys » 19 авг 2017, 06:17
у меня без микросхем... не стал заумное делать, просто подключил к меге...
как вы сказали + к определенному пину, - на gnd... все правильно зажигается...
про мигающие светодиоды читал и делал... в данном случае здесь не помогает...
как советовали выше читаю про динамическую индикацию...
dimamichev » 19 авг 2017, 11:19
Дорогой автор темы, вы используете в программе библиотеку <LedCube.h>. А где вы читали о её функциях и применении? Я кубы программирую с помощью библиотеки Led Control, про неё и её работу всё подробно описано в интернете.
Angel71 » 19 авг 2017, 12:16
исходники изучить религия не позволяет? ни гитхабе ещё есть пример использования и ссылка на instructables, где собирает кубик 3*3*3.
dimamichev » 19 авг 2017, 12:49
Да, Ангел, вчитался, но зачем вообще библиотека, если я без библиотеки моргал кубиком 333?
А у вас, автор, наверное по умолчанию низкие уровни подаются на все А...Если бы я писал массивы, написал бы int tabl[5]={14,15,16,17,18};.А что, слои без транзисторов подключены?
Angel71 » 19 авг 2017, 12:55
ёпрст
https://github.com/gzip/arduino-ledcube. открываешь, смотришь как сделано и решаешь, взять всю библиотеку, кусок кода или там вообще ничего полезного нет для своей поделки.
dimamichev » 19 авг 2017, 13:17
Angel71 писал(а):ёпрст
https://github.com/gzip/arduino-ledcube. открываешь, смотришь как сделано и решаешь, взять всю библиотеку, кусок кода или там вообще ничего полезного нет для своей поделки.
Не,..без описания функций библиотеки, смысла аргументов, простых примеров работы - я не потяну,на таких примерах. Просто думал библиотека ходовая...
Angel71 » 19 авг 2017, 14:04
это всё отмазки. пока вот такие простенькие библиотеки, так самое время не описания искать, а изучать их код до тех пор, пока не поймёшь его. для тренировки другие библиотеки изучаешь, особенно что используешь. дошло, что туго с си, ну так всё в сторону и изучать сначала его.
andrys » 27 окт 2017, 02:14
всем привет. извиняюсь, что пропал надолго... куб отдал брату пускай мозг поломает или на другое пустит...
решил собрать 8х8х8 на 74нс595... на матрице 8х8 уже практиковался, так что с программированием легче будет.
вертикальные столбцы подключаю к входам микросхемы, а на слои, что лучше пустить мосфеты или npn???
Angel71 » 27 окт 2017, 04:28
феты в общем лучше, но для небольшого куба единообразно. что в наличии есть, то и использовать. или подбирать, что подходит по цене, доставабельности, что паять будет удобней, как плату удобней сделать, каких она размеров будет. с нуля придумывать схему и код не обязательно, поищите, допустим по "74hc595 led cube 8x8x8", может чего и приглянётся. анимация важней, с ней и возиться.