Вложений: 3
Re: Бортовой компьютер мотоцикла
Дело сдвинулось с мёртвой точки, сегодня подключил к блоку ардуино, разобрался с библиотекой Dallas temperature, подключил два датчика, дисплей, кнопку сброса...
Вложение 18665
С дисплеем все было не так гладко, по испытаниям не один дисплей не читается на солнечном свете... Светодиодные в их числе, про цветные и говорить нечего. Поэтому закажу дисплей фирмы Sharp 1602, днем ему подсветка вообще не нужна.
Вложение 18666
Как видно из видео один датчик будет показывать температуру за бортом а другой двигателя (исходя из их данных и алгоритма будет включаться вентилятор охлаждения через реле, что бы держать двигатель в оптимальном диапазоне те не доводить до 105 градусов)
https://youtu.be/ZcSB60kGFRY
Ниже бегающие цифры это АЦП аналогового входа, по нему будет измеряется напряжение, подключён через делитель с защитой, как видно по цифрам запас у него большой схема подключена к 19 вольтам.
Больше ничего не успел, но поскольку дело сдвинулось будет проще.
Без записок сумасшедшего не обошлось :rolleyes:
Вложение 18667
Re: Бортовой компьютер мотоцикла
Сообщение подчистил - проблема с тормозами в меню решилась, убрал из Setup{ } строчку ds.begin(); не знаю откуда она взялась, наверно из примера взял так и осталась
Re: Бортовой компьютер мотоцикла
Вот что получилось https://yadi.sk/i/Ty3lyKITiuZfe - в темноте неудобно снимать ничего не видно :) еле попал в переменный резистор на плате ...
Re: Бортовой компьютер мотоцикла
Подскажите как передать в ардуину в последовательный порт строку (в мониторе порта через компьютер) - например "time" ?
Ну или тыкните носом где почитать, нашёл только двух сторонний обмен данными с маркерами, а меня интересует тупой односторонний.
Подозреваю нужно из символов собрать строку, только символы имеют цифровое представление ...
Re: Бортовой компьютер мотоцикла
В arduinoIDE открываешь окно "сериал монитра" и в верхней строке пишешь все что тебе нужно отправитть
Re: Бортовой компьютер мотоцикла
это я знаю. не так сформулировал вопрос. Мне нужно отправить строку и сравнить ее с той которая записана в переменную.
Пробовал так:
PHP код:
if (Serial.available()) {
while (Serial.available() > 0) {
if (Serial.read() == 49) RTC.adjust(DateTime(__DATE__, __TIME__));
}
Что бы сработало нужно отправить в порт 1111 =) , как сделать что бы сработало по строке "time" ?
Re: Бортовой компьютер мотоцикла
if (Serial.read() == 49)
В данном случаи идет сравнение принятого в буфер одного быйта
Соответственно для того что бы условие выполнилось, нужно отправить из сериал монитора цифру 1
Re: Бортовой компьютер мотоцикла
Если отправить 1,2,3 ... в моём варианте получим -1 в порте, всё же я не получил ответ на мой вопрос
Re: Бортовой компьютер мотоцикла
здесь рабочие примеры приема строки
Re: Бортовой компьютер мотоцикла
В результате вот что получилось
https://youtu.be/eouo2xgPcqA