25.04.2018, 15:46 | #51 |
Местный
Регистрация: 08.07.2015
Адрес: МО
Сообщений: 2,865
Сказал(а) 'не согласен(а)'!: 0
Сказали 'не согласен'! 3 раз(а) в 2 сообщениях
Сказал(а) спасибо: 4,665
Поблагодарили 3,280 раз(а) в 1,176 сообщениях
:
0 за это сообщение 1 Всего Репутация: репутация неоспорима (3291)
|
Эх, к сожалению, это будет неполным решением. Реле все равно может сработать, пока ардуина загружается.
|
|
25.04.2018, 15:59 | #52 |
Новичок
Регистрация: 22.07.2017
Адрес: Россия
Сообщений: 35
Сказал(а) 'не согласен(а)'!: 0
Сказали 'не согласен'! 0 раз(а) в 0 сообщениях
Сказал(а) спасибо: 11
Поблагодарили 5 раз(а) в 4 сообщениях
:
0 за это сообщение 0 Всего Репутация: пока неопределено (5)
|
Домой приду, буду пробовать.
|
|
25.04.2018, 16:02 | #53 | |
Местный
Регистрация: 29.06.2010
Адрес: Москва
Сообщений: 2,838
Сказал(а) 'не согласен(а)'!: 6
Сказали 'не согласен'! 2 раз(а) в 2 сообщениях
Сказал(а) спасибо: 974
Поблагодарили 2,653 раз(а) в 1,570 сообщениях
:
0 за это сообщение 1 Всего Репутация: репутация неоспорима (2679)
|
Цитата:
Т.к. уже выяснили какие реле используются. Там оптрон на входе. И его можно не подтягивать. Вот если бы там была база транзистора или вход микросхемы - вот тогда другое дело. |
|
|
25.04.2018, 16:45 | #54 |
Местный
Регистрация: 06.03.2009
Адрес: Питер
Сообщений: 3,693
Сказал(а) 'не согласен(а)'!: 10
Сказали 'не согласен'! 0 раз(а) в 0 сообщениях
Сказал(а) спасибо: 6,942
Поблагодарили 4,844 раз(а) в 1,822 сообщениях
:
0 за это сообщение 0 Всего Репутация: репутация неоспорима (5127)
|
Как вариант, этим числом можно сразу передать номер того порта, который нужно включить и присвоить его переменной, саму переменную прописать уже в коде, типа:
Код:
int port; port=Serial.read(); digitalWrite(port, LOW); // "включаем" реле 1-1 путь delay(500) ; // ждем 500 mс digitalWrite(port, HIGH); // "выключаем" реле
__________________
HO, цифра, OpenDCC, S-88N, OpenCar, BiDiB С приветом из подземки!!! |
|
25.04.2018, 16:55 | #55 |
Местный
Регистрация: 29.06.2010
Адрес: Москва
Сообщений: 2,838
Сказал(а) 'не согласен(а)'!: 6
Сказали 'не согласен'! 2 раз(а) в 2 сообщениях
Сказал(а) спасибо: 974
Поблагодарили 2,653 раз(а) в 1,570 сообщениях
:
0 за это сообщение 1 Всего Репутация: репутация неоспорима (2679)
|
|
|
25.04.2018, 18:01 | #56 |
Новичок
Регистрация: 22.07.2017
Адрес: Россия
Сообщений: 35
Сказал(а) 'не согласен(а)'!: 0
Сказали 'не согласен'! 0 раз(а) в 0 сообщениях
Сказал(а) спасибо: 11
Поблагодарили 5 раз(а) в 4 сообщениях
:
0 за это сообщение 0 Всего Репутация: пока неопределено (5)
|
Добавил строку: for (int i = 8; i <= 13; i++) digitalWrite(i, HIGH);.
При включении ардуины, выходы все равно с начало в низкий уровень. Только после нажатия кнопки, переходит в высокий уровень. |
|
25.04.2018, 19:01 | #57 | |
Местный
Регистрация: 06.03.2009
Адрес: Питер
Сообщений: 3,693
Сказал(а) 'не согласен(а)'!: 10
Сказали 'не согласен'! 0 раз(а) в 0 сообщениях
Сказал(а) спасибо: 6,942
Поблагодарили 4,844 раз(а) в 1,822 сообщениях
:
0 за это сообщение 0 Всего Репутация: репутация неоспорима (5127)
|
Цитата:
ИМХОЗначит у Вас в loop что-то сразу переводит их в низкий уровень или в setup установка уровня HIGH не проходит. Попробуйте без цикла выставить все выходы в HIGH: Код:
digitalWrite(8, HIGH); digitalWrite(9, HIGH); digitalWrite(10, HIGH); digitalWrite(11, HIGH); digitalWrite(12, HIGH); digitalWrite(13, HIGH);
__________________
HO, цифра, OpenDCC, S-88N, OpenCar, BiDiB С приветом из подземки!!! |
|
|
2 пользователя(ей) сказали cпасибо: |
25.04.2018, 19:36 | #58 |
Новичок
Регистрация: 22.07.2017
Адрес: Россия
Сообщений: 35
Сказал(а) 'не согласен(а)'!: 0
Сказали 'не согласен'! 0 раз(а) в 0 сообщениях
Сказал(а) спасибо: 11
Поблагодарили 5 раз(а) в 4 сообщениях
:
0 за это сообщение 0 Всего Репутация: пока неопределено (5)
|
|
|
25.04.2018, 20:06 | #59 |
Местный
Регистрация: 29.06.2010
Адрес: Москва
Сообщений: 2,838
Сказал(а) 'не согласен(а)'!: 6
Сказали 'не согласен'! 2 раз(а) в 2 сообщениях
Сказал(а) спасибо: 974
Поблагодарили 2,653 раз(а) в 1,570 сообщениях
:
0 за это сообщение 1 Всего Репутация: репутация неоспорима (2679)
|
|
|
Пользователь сказал cпасибо: |
25.04.2018, 20:19 | #60 |
Новичок
Регистрация: 22.07.2017
Адрес: Россия
Сообщений: 35
Сказал(а) 'не согласен(а)'!: 0
Сказали 'не согласен'! 0 раз(а) в 0 сообщениях
Сказал(а) спасибо: 11
Поблагодарили 5 раз(а) в 4 сообщениях
:
0 за это сообщение 0 Всего Репутация: пока неопределено (5)
|
Большое спасибо. Все получилось.
|
|
26.04.2018, 00:16 | #61 |
Местный
Регистрация: 06.03.2009
Адрес: Питер
Сообщений: 3,693
Сказал(а) 'не согласен(а)'!: 10
Сказали 'не согласен'! 0 раз(а) в 0 сообщениях
Сказал(а) спасибо: 6,942
Поблагодарили 4,844 раз(а) в 1,822 сообщениях
:
0 за это сообщение 0 Всего Репутация: репутация неоспорима (5127)
|
Тогда может в том же цикле делать, где определяются порты?
Код:
// назначаем цифровые выходы for (int i = 8; i <= 13; i++) { pinMode(i, OUTPUT); digitalWrite(i, HIGH); }
__________________
HO, цифра, OpenDCC, S-88N, OpenCar, BiDiB С приветом из подземки!!! |
|
26.04.2018, 17:12 | #62 |
Местный
Регистрация: 29.06.2010
Адрес: Москва
Сообщений: 2,838
Сказал(а) 'не согласен(а)'!: 6
Сказали 'не согласен'! 2 раз(а) в 2 сообщениях
Сказал(а) спасибо: 974
Поблагодарили 2,653 раз(а) в 1,570 сообщениях
:
0 за это сообщение 1 Всего Репутация: репутация неоспорима (2679)
|
|
|
26.04.2018, 19:44 | #63 | ||
Новичок
Регистрация: 22.07.2017
Адрес: Россия
Сообщений: 35
Сказал(а) 'не согласен(а)'!: 0
Сказали 'не согласен'! 0 раз(а) в 0 сообщениях
Сказал(а) спасибо: 11
Поблагодарили 5 раз(а) в 4 сообщениях
:
0 за это сообщение 0 Всего Репутация: пока неопределено (5)
|
С выходами разобрался с вашей помощью, все работает на мастере как надо.
С передачей на слейв пока ни как не получается. Вопрос для смеха, может я не правильно соединяю? На мастере TX0, на слейве RX0. Код мастера: Arduino код:
|
||
|
26.04.2018, 19:47 | #64 | ||
Новичок
Регистрация: 22.07.2017
Адрес: Россия
Сообщений: 35
Сказал(а) 'не согласен(а)'!: 0
Сказали 'не согласен'! 0 раз(а) в 0 сообщениях
Сказал(а) спасибо: 11
Поблагодарили 5 раз(а) в 4 сообщениях
:
0 за это сообщение 0 Всего Репутация: пока неопределено (5)
|
Код слейва:
Arduino код:
|
||
|
26.04.2018, 19:52 | #65 | |
Местный
Регистрация: 29.06.2010
Адрес: Москва
Сообщений: 2,838
Сказал(а) 'не согласен(а)'!: 6
Сказали 'не согласен'! 2 раз(а) в 2 сообщениях
Сказал(а) спасибо: 974
Поблагодарили 2,653 раз(а) в 1,570 сообщениях
:
0 за это сообщение 1 Всего Репутация: репутация неоспорима (2679)
|
Цитата:
В коде же написано Serial1.println('2');, соответственно это TX1 - 18 пин. В слейве char key = (char)Serial1.read();, соответственно это RX1 - 19 пин. А TX0 и RX0 это то, что на USB разъём идёт. |
|
|
Пользователь сказал cпасибо: |
26.04.2018, 20:05 | #66 |
Новичок
Регистрация: 22.07.2017
Адрес: Россия
Сообщений: 35
Сказал(а) 'не согласен(а)'!: 0
Сказали 'не согласен'! 0 раз(а) в 0 сообщениях
Сказал(а) спасибо: 11
Поблагодарили 5 раз(а) в 4 сообщениях
:
0 за это сообщение 0 Всего Репутация: пока неопределено (5)
|
Ура, вроде заработало. Спасибо.
|
|
Опции темы | |
Опции просмотра | |
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Аксессуарный пульт | Alexmit | Arduino | 55 | 18.05.2021 00:04 |
Новый пульт от Lenz | Saddam | Электрика и DCC | 0 | 17.11.2016 14:36 |
FB1-как стрелочный пульт. Возможно? | lohmach | Цифровая аппаратура Modelldepo | 1 | 10.11.2010 13:49 |
Стрелочный пульт к DCC Roco ? | Yuriy | Электрика и DCC | 57 | 18.09.2010 16:24 |
Пульт управления макетом. | Doctor_MB | Электрика и DCC | 39 | 06.03.2010 22:38 |