Xdriver - ну что, как тебе нравится твой ученик? Обрати внимание, как он ободрился обещанием получить код и все больше наглеет. Понимаешь теперь, почему подобных персонажей посылают на всех форумах? И ведь даже если ты ему напишешь код - вряд ли это решит его проблему. Мало написать код - надо ведь суметь его использовать , собрать схему.... А в том что тс это сможет никакой уверенности нет.
да.., надо меньше напивАться, а то я становлюсь добрый и не разборчивый в связях.
Сейчас напишу для первой группы реле,затем для второй.
Кнопка 0 реле 2,3,12
Кнопка 1 реле 2,3,6,7
2 - 3,6,7,9,10
3 - 3,6,7,9,10,11
4 - 3,6,7,8,9,10,11
5 - 1,2,3,6,10
6 -1,2,6,8,9,10,11
7 - 1,4,5,6,8,9,11
И всё-таки: насколько необходима Мега? Ибо для первой группы нужно 38 диодов без всяких суперкомпьютеров. Для второй - не считал, но вряд ли намного больше.
Даже в чипедипе диоды идут по 2 рубля за штуку, а у братьев - 50 рублей за сотню (с доставкой).
Есть люди,которые могут понять и помочь,к счастью таких намного больше,чем таких как ты.
неужели заработало? :)
А тебе,что до этого??Ты что тоже код писал??Как говорил Жеглов "Твой номер 16"Тебе приятнее будет общаться с "Детсименом",которого тоже очень это мучило.
А тебе,что до этого??Ты что тоже код писал??Как говорил Жеглов "Твой номер 16"Тебе приятнее будет общаться с "Детсименом",которого тоже очень это мучило.
Есть люди,которые могут понять и помочь,к счастью таких намного больше,чем таких как ты.
неужели заработало? :)
А тебе,что до этого??Ты что тоже код писал??Как говорил Жеглов "Твой номер 16"Тебе приятнее будет общаться с "Детсименом",которого тоже очень это мучило.
Вношу предложение, создать специальный форум "Сегодня Пятница". И темы подобные этой, не очень сложные с точки зрения программирования размещать там. Участие принимают только те кто будет решать задачу. Будет развлекательно - познавательный форум. Где можно посоревноваться в острословии и программировании. Главное требование, за пятницу написать программу, ну а ТС стойко сносить все нападки и издевательства и быть объективным рефери на ринге. Ну и это может оживить форум.
А вот этот допускает одновременное нажатие 2х 3х итд .кнопок, он суммирует их воздействие но он для УНО хотя по аналогии можно написать и для меги
bool RELE_PIN[12] = {0,0,0,0,0,0,0,0,0,0,0,0}; bool f_viev=0; uint16_t f_button = 0; uint16_t f_b_temp = 0; void setup() { // Serial.begin(9600); for (uint8_t i = 2; i < 14; i++ ) { pinMode(i, OUTPUT); // пины реле на выход digitalWrite(i, 0); // выключить реле } pinMode(14, INPUT_PULLUP);//2-3- - - - - - - -11 pinMode(15, INPUT_PULLUP);//2-3- - -6-7- - - -11 pinMode(16, INPUT_PULLUP);// -3- - -6-7- -9-10-11 pinMode(17, INPUT_PULLUP);// -3- - -6-7- -9-10- -12 pinMode(18, INPUT_PULLUP);// -3- - -6-7-8-9-10- -12 pinMode(19, INPUT_PULLUP);//2-3- - -6- - - -10- - -13 pinMode(20, INPUT_PULLUP);//2- - - -6- -8- -10- -12-13 pinMode(A7, INPUT_PULLUP);// - -4-5-6- -8-9- - -12-13 } void loop() { if(f_b_temp != f_button) { f_b_temp = f_button; for(int i=0;i<12;i++) { RELE_PIN[i] = 0; } f_viev =1; } if (digitalRead(14) == 0) { f_button = f_button | (1<<0); RELE_PIN[0] = 1; RELE_PIN[1] = 1; RELE_PIN[9] = 1; } else f_button = f_button & ~(1<<0); if (digitalRead(15) == 0) { f_button = f_button | (1<<1); RELE_PIN[0] = 1; RELE_PIN[1] = 1; RELE_PIN[4] = 1; RELE_PIN[5] = 1; } else f_button = f_button & ~(1<<1); if (digitalRead(16) == 0) { f_button = f_button | (1<<2); RELE_PIN[1] = 1; RELE_PIN[4] = 1; RELE_PIN[5] = 1; RELE_PIN[7] = 1; RELE_PIN[8] = 1; } else f_button = f_button & ~(1<<2); if (digitalRead(17) == 0) { f_button = f_button | (1<<3); RELE_PIN[1] = 1; RELE_PIN[4] = 1; RELE_PIN[5] = 1; RELE_PIN[7] = 1; RELE_PIN[8] = 1; RELE_PIN[10] = 1; } else f_button = f_button & ~(1<<3); if (digitalRead(18) == 0) { f_button = f_button | (1<<4); RELE_PIN[1] = 1; RELE_PIN[4] = 1; RELE_PIN[5] = 1; RELE_PIN[6] = 1; RELE_PIN[7] = 1; RELE_PIN[8] = 1; RELE_PIN[10] = 1; } else f_button = f_button & ~(1<<4); if (digitalRead(19) == 0) { f_button = f_button | (1<<5); RELE_PIN[0] = 1; RELE_PIN[1] = 1; RELE_PIN[4] = 1; RELE_PIN[8] = 1; RELE_PIN[11] = 1; } else f_button = f_button & ~(1<<5); if(f_viev) { f_viev = 0; uint8_t z = 0; for(int i=2;i<14;i++) { digitalWrite(i,RELE_PIN[z]); z++; } } //delay(200); }да.., надо меньше напивАться, а то я становлюсь добрый и не разборчивый в связях.
пы.сы. пойду дерну, за твои светлые мысли...
Никаво этот пенсионер не напоминает?
и каво?
Никаво этот пенсионер не напоминает?
и каво?
алигер наверное?
Сейчас напишу для первой группы реле,затем для второй.
Кнопка 0 реле 2,3,12
Кнопка 1 реле 2,3,6,7
2 - 3,6,7,9,10
3 - 3,6,7,9,10,11
4 - 3,6,7,8,9,10,11
5 - 1,2,3,6,10
6 -1,2,6,8,9,10,11
7 - 1,4,5,6,8,9,11
Даже в чипедипе диоды идут по 2 рубля за штуку, а у братьев - 50 рублей за сотню (с доставкой).
не считал, но на шесть меньще (как минимум)
uint8_t RELE1_PIN[12] = { 1, // Пин для реле 1 2, // Пин для реле 2 и т.д 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 }; uint8_t KNOPKA1_PIN[8] = { A0, // Пин для кнопки 1 A1, // Пин для кнопки 2 и т.д. A2, A3, A4, A5, A6, A7 }; uint8_t RELE2_PIN[12] = { 13,14,15,16,17,18,19,20,21,22,23,24 }; uint8_t KNOPKA2_PIN[8] = { A8, A9, A10, A11, A12, A13, A14, A15, }; void setup() { for (uint8_t i=0; i<sizeof(RELE1_PIN); i++ ){ digitalWrite(RELE1_PIN[i], LOW); pinMode(RELE1_PIN[i],OUTPUT); } for (uint8_t i=0; i<sizeof(RELE2_PIN); i++ ){ digitalWrite(RELE2_PIN[i], LOW); pinMode(RELE2_PIN[i],OUTPUT); } for (uint8_t i=0; i<sizeof(KNOPKA1_PIN); i++ ){ pinMode(KNOPKA1_PIN[i],INPUT_PULLUP); } for (uint8_t i=0; i<sizeof(KNOPKA2_PIN); i++ ){ pinMode(KNOPKA2_PIN[i],INPUT_PULLUP); } } void loop() { byte KNOPKA1_STATE[sizeof(KNOPKA1_PIN)]; byte KNOPKA2_STATE[sizeof(KNOPKA2_PIN)]; for (uint8_t i=0; i<sizeof(KNOPKA1_PIN); i++ ){ digitalRead(KNOPKA1_STATE[i]); } for (uint8_t i=0; i<sizeof(KNOPKA2_PIN); i++ ){ digitalRead(KNOPKA2_STATE[i]); } //первый блок реле digitalWrite(RELE1_PIN[0],!(KNOPKA1_STATE[5]|KNOPKA1_STATE[6]|KNOPKA1_STATE[7])); digitalWrite(RELE1_PIN[1],!(KNOPKA1_STATE[0]|KNOPKA1_STATE[1]|KNOPKA1_STATE[5]|KNOPKA1_STATE[6])); digitalWrite(RELE1_PIN[2],!(KNOPKA1_STATE[0]|KNOPKA1_STATE[1]|KNOPKA1_STATE[2]|KNOPKA1_STATE[3]|KNOPKA1_STATE[4])); digitalWrite(RELE1_PIN[3],!(KNOPKA1_STATE[7])); digitalWrite(RELE1_PIN[4],!(KNOPKA1_STATE[7])); digitalWrite(RELE1_PIN[5],!(KNOPKA1_STATE[1]|KNOPKA1_STATE[2]|KNOPKA1_STATE[3]|KNOPKA1_STATE[4]|KNOPKA1_STATE[5]|KNOPKA1_STATE[6]|KNOPKA1_STATE[7])); digitalWrite(RELE1_PIN[6],!(KNOPKA1_STATE[1]|KNOPKA1_STATE[2]|KNOPKA1_STATE[3]|KNOPKA1_STATE[4])); digitalWrite(RELE1_PIN[7],!(KNOPKA1_STATE[4]|KNOPKA1_STATE[6]|KNOPKA1_STATE[7])); digitalWrite(RELE1_PIN[8],!(KNOPKA1_STATE[2]|KNOPKA1_STATE[3]|KNOPKA1_STATE[4]|KNOPKA1_STATE[6]|KNOPKA1_STATE[7])); digitalWrite(RELE1_PIN[9],!(KNOPKA1_STATE[2]|KNOPKA1_STATE[3]|KNOPKA1_STATE[4]|KNOPKA1_STATE[5]|KNOPKA1_STATE[6])); digitalWrite(RELE1_PIN[10],!(KNOPKA1_STATE[3]|KNOPKA1_STATE[4]|KNOPKA1_STATE[6]|KNOPKA1_STATE[7])); digitalWrite(RELE1_PIN[11],!(KNOPKA1_STATE[0])); //второй блок реле digitalWrite(RELE1_PIN[0],!(KNOPKA1_STATE[5]|KNOPKA1_STATE[6]|KNOPKA1_STATE[7])); digitalWrite(RELE1_PIN[1],!(KNOPKA1_STATE[0]|KNOPKA1_STATE[1]|KNOPKA1_STATE[5]|KNOPKA1_STATE[6])); digitalWrite(RELE1_PIN[2],!(KNOPKA1_STATE[0]|KNOPKA1_STATE[1]|KNOPKA1_STATE[2]|KNOPKA1_STATE[3]|KNOPKA1_STATE[4])); digitalWrite(RELE1_PIN[3],!(KNOPKA1_STATE[7])); digitalWrite(RELE1_PIN[4],!(KNOPKA1_STATE[7])); digitalWrite(RELE1_PIN[5],!(KNOPKA1_STATE[1]|KNOPKA1_STATE[2]|KNOPKA1_STATE[3]|KNOPKA1_STATE[4]|KNOPKA1_STATE[5]|KNOPKA1_STATE[6]|KNOPKA1_STATE[7])); digitalWrite(RELE1_PIN[6],!(KNOPKA1_STATE[1]|KNOPKA1_STATE[2]|KNOPKA1_STATE[3]|KNOPKA1_STATE[4])); digitalWrite(RELE1_PIN[7],!(KNOPKA1_STATE[4]|KNOPKA1_STATE[6]|KNOPKA1_STATE[7])); digitalWrite(RELE1_PIN[8],!(KNOPKA1_STATE[2]|KNOPKA1_STATE[3]|KNOPKA1_STATE[4]|KNOPKA1_STATE[6]|KNOPKA1_STATE[7])); digitalWrite(RELE1_PIN[9],!(KNOPKA1_STATE[2]|KNOPKA1_STATE[3]|KNOPKA1_STATE[4]|KNOPKA1_STATE[5]|KNOPKA1_STATE[6])); digitalWrite(RELE1_PIN[10],!(KNOPKA1_STATE[3]|KNOPKA1_STATE[4]|KNOPKA1_STATE[6]|KNOPKA1_STATE[7])); digitalWrite(RELE1_PIN[11],!(KNOPKA1_STATE[0])); }Спасибо всем,кто помог с кодом,несмотря ни на что!!!
Наклянчил таки.
Наклянчил таки.
Есть люди,которые могут понять и помочь,к счастью таких намного больше,чем таких как ты.
Есть люди,которые могут понять и помочь,к счастью таких намного больше,чем таких как ты.
неужели заработало? :)
Есть люди,которые могут понять и помочь,к счастью таких намного больше,чем таких как ты.
неужели заработало? :)
А тебе,что до этого??Ты что тоже код писал??Как говорил Жеглов "Твой номер 16"Тебе приятнее будет общаться с "Детсименом",которого тоже очень это мучило.
А тебе,что до этого??Ты что тоже код писал??Как говорил Жеглов "Твой номер 16"Тебе приятнее будет общаться с "Детсименом",которого тоже очень это мучило.
значит не заработало
Есть люди,которые могут понять и помочь,к счастью таких намного больше,чем таких как ты.
неужели заработало? :)
А тебе,что до этого??Ты что тоже код писал??Как говорил Жеглов "Твой номер 16"Тебе приятнее будет общаться с "Детсименом",которого тоже очень это мучило.
Вношу предложение, создать специальный форум "Сегодня Пятница". И темы подобные этой, не очень сложные с точки зрения программирования размещать там. Участие принимают только те кто будет решать задачу. Будет развлекательно - познавательный форум. Где можно посоревноваться в острословии и программировании. Главное требование, за пятницу написать программу, ну а ТС стойко сносить все нападки и издевательства и быть объективным рефери на ринге. Ну и это может оживить форум.