а я нашел программу клевую для связи с ком портом. Просто стандратный сериал монитор у ардуино ide корявый. Программа называется Terminal 1.9 . Просто хотел напрямую байты с терминала отправлять (по умолчанию при отправлении переводиться в символ по таблице Asсii), не понял как сделать в других терммналах. В этом например хотим отправить байт BF нужно написать $BF - удобный термнал. Если на дуине reset на массу посадить, то можно с эбу через этот терминал разговаривать. В этом терминале можно сообщения настраивать и все задержки.
МакsVV еще вопросик . как прописать чтобы если не произошла комуникация с первого раза, то запустится сново инит из сетупа? хочу прописать на всякий случай, да и щас пытаюсь соеденить скетч меню и обд. глаяну что получится. надо глянуть этот терминал, имеешь ссыльку на скачку?
набрал в яндексе "терминал байты" - первая ссылка. В сетапе всё что после fastinit(); сделай в отдельную функцию или же в этот fastinit() и запихать, а потом вызывать её когда надо.
за прослушку спасибо. за инит спасибо, думаю задержку для ответа можно уменьшить с 1000 до 50 или 100, везде хватает 50 м/с для ответа. да и ожидание ответова пидов тоже думаю можно урезать с 500 до 50 или 100. для того чтобы этот скетч был идеальным, не хватает одной вещи, если вдруг во время сеанса оборвалась связь и он начал получать порожняк , то он должен вернутся сново на fastinit();. тогда будет все в идеале и можно считать со скетчем покончино. останется выкинуть все на экран и выложить готовый проэкт.
а зачем тебе ты же уже знаешь адрес 10, у меня в ней нашло только 28 и 31 это блоки АБС и вроде коробки. а 11 мой не находил, прога испльзует fast init а у меня fast init 5boud. в моем посте 12 есть скетч для проверки всех возможных адросов но он только для fast init. если не найдет твой 10 , значит у тебя тоже 5boud. в сериале будет видно по правильному ответу на какие блоки подцепился
Я уже забил, не находит ничего на 10, я склоняюсь что у меня 5бод, ты писал что сообщение о коммуникации нужно будет сделать в простой блок сообщения. Не подскажешь как?
этот из 174 работат. но если закрыть монитор и снова открыть идут сплошные нули на запрос инита, снова перезапускаешь и все сново работает. думаю потому что ссесия не закрыта а даешь снова запрос на инит, при втором перезапуске по ходу ебу ссесию закрывает и все снова работает.....
Надо последний гвоздь в скет забить это если ссесия оборвется во время работы и чтобы он прыгнул на fastinit();
вот скетч меню я там правда нагородил. есть проблем тач медленно реагирует. по ходу пока все функции пройдет.... надо чтобы тач как то отдельно обновлялся по заданному времени а не после всего
этот из 174 работат. но если закрыть монитор и снова открыть идут сплошные нули на запрос инита, снова перезапускаешь и все сново работает. думаю потому что ссесия не закрыта а даешь снова запрос на инит, при втором перезапуске по ходу ебу ссесию закрывает и все снова работает.....
Надо последний гвоздь в скет забить это если ссесия оборвется во время работы и чтобы он прыгнул на fastinit();
т.е. кроме запроса инициализвации ещё и fastinit() перед этим всё время делать? Тут есть один момент. Если сессия уже открыта и сделать fastinit() я так понял блок перейлёт на следующий режим, т.к. fastinit() не только открывает сессию но и устанавливает режим 1 , т.е. считываение диагностических параметров (пиды текущих параметров), а если опять сделать fastinit() при открытой сессии, то будет уже режим 2 и т.д. что кстати и происходит когда сериал монитор закрываешь и сразу отвкрываешь, он переходит на режим 2, где не принимает эти пиды
Он шлет FF-ки и нули. Посмот не правильно ответ, прописать что в случае такого ответа перейти на fastidia():. Ладно не будем на этом зацикливатся. Это мелочь. Скетч меню видел выше?
Убирал её совсем, она там по идее не нужно. Но без неё двоеточие часов моргает бешано. Хотя ч пробовал без трех датчиков а оно глючит. Подключаешь и глюки исчезают. Надо будет попробывать
да без задержки все работает норм. только кнопку надо держать 2 секунды и тогда она реагирует. иногда быстрее иногда сразу. видать в каком месте всего цикла находится ближе или дальше
ниче так симпатично, меня интересует частота вызова функции drawHomeScreen(), я так понял она вызвается один раз в сетап и потом только! после нажатия на сенсор
Спасибо за приложение для андроид
незачто. очень удобное и HEX DEC BIN. долго им пользуюсь, доволен, да и окна в компе не нужно сворачивать и разворачивать
а я нашел программу клевую для связи с ком портом. Просто стандратный сериал монитор у ардуино ide корявый. Программа называется Terminal 1.9 . Просто хотел напрямую байты с терминала отправлять (по умолчанию при отправлении переводиться в символ по таблице Asсii), не понял как сделать в других терммналах. В этом например хотим отправить байт BF нужно написать $BF - удобный термнал. Если на дуине reset на массу посадить, то можно с эбу через этот терминал разговаривать. В этом терминале можно сообщения настраивать и все задержки.
МакsVV еще вопросик . как прописать чтобы если не произошла комуникация с первого раза, то запустится сново инит из сетупа? хочу прописать на всякий случай, да и щас пытаюсь соеденить скетч меню и обд. глаяну что получится. надо глянуть этот терминал, имеешь ссыльку на скачку?
набрал в яндексе "терминал байты" - первая ссылка. В сетапе всё что после fastinit(); сделай в отдельную функцию или же в этот fastinit() и запихать, а потом вызывать её когда надо.
понял. сенкс. блин не очень получается склеить два сектча. синий уже ошибки и ошибки и ошибки......
вот скетч, запрос инита будет слаться до тех пор пока блок не ответит правильным сообщением, если ответил таким сообщением - начинают слаться пиды
вот более правильный скетч прослушки
за прослушку спасибо. за инит спасибо, думаю задержку для ответа можно уменьшить с 1000 до 50 или 100, везде хватает 50 м/с для ответа. да и ожидание ответова пидов тоже думаю можно урезать с 500 до 50 или 100. для того чтобы этот скетч был идеальным, не хватает одной вещи, если вдруг во время сеанса оборвалась связь и он начал получать порожняк , то он должен вернутся сново на fastinit();. тогда будет все в идеале и можно считать со скетчем покончино. останется выкинуть все на экран и выложить готовый проэкт.
вот более правильный скетч прослушки
С этим скетчем у меня пусто в мониторе порта,загрузил предыдущий,работает.
значит пользуйся предылущим. ведь он тебе показывает мясо в сериале. а большего и не нужно.
Ради интереса решил найти эбу через findECU, пока не находит
а зачем тебе ты же уже знаешь адрес 10, у меня в ней нашло только 28 и 31 это блоки АБС и вроде коробки. а 11 мой не находил, прога испльзует fast init а у меня fast init 5boud. в моем посте 12 есть скетч для проверки всех возможных адросов но он только для fast init. если не найдет твой 10 , значит у тебя тоже 5boud. в сериале будет видно по правильному ответу на какие блоки подцепился
Я уже забил, не находит ничего на 10, я склоняюсь что у меня 5бод, ты писал что сообщение о коммуникации нужно будет сделать в простой блок сообщения. Не подскажешь как?
Хотя не заморачивайся,щас сам додумаю,спасибо
если у тебя 5боуд, то это мой случай и мой(MaksVV) скетч. а если просто fast init то разница вот в чем......
fast init это отправка на комуникацию блоком тоесть
byte messageInit[5] = {0x81,0x11,0xF1,0x81,0x04}; // запрос инициализации
а если fast init 5boud то
byte message1[1] = {0x81};
byte message2[1] = {0x11};
byte message3[1] = {0xF1};
byte message4[1] = {0x81};
byte message5[1] = {0x04};
и при отправке каждый байт отправляется отдельно с задержкой в 5-10м/с
вот скетч просто комуникации 5 боуд
попробуй сначало только комуникацию. только замени адрес на 10 и перещитай сумму. щас начеркаю на fast init
вот уже под твой 10 адрес просто fast init
да еще, бывает что милисекунда играет роль. попробуй в fastinit(); поиграть с секундами например варианты
24 25 или 24 26 или 25 24 или 26 24 ........ но в общей сложности должно быть 50 м/с. и поиграйся с задержками между байтами от 5 до 10 м/с
Спасибо, попробую!
С этим скетчем у меня пусто в мониторе порта,загрузил предыдущий,работает.
потому что надо так
Здорово. viki13viki, скетч из #157 не пробовал ?
ПРИВЕТ. сейчас спущусь и попробую и отпишусь. я целый день скрещиваю слона с носорогом, типа скетч меню и скетч обд. щас отпишусь
значит так. он дает запрос инит получает ответ но к пидам не переходит , запрос инит ответ инит и так до бесконечности
скинь что отвечает, я сделал такую проверку по байтам входящего сообщения
if
(MessageRx[3]==0x83 && MessageRx[4]==0xF1 && MessageRx[5]==0x11 && MessageRx[6]==0xC1 && MessageRx[7]==0x6B && MessageRx[8]==0x8F)
а вижу косяк, щас
вот
starting comunication (fastinit)
да всё, я думал во входящем сначала три раза FF а тут два. Исправил см выше #174
скидывай потом сюда скетч своего меню-бортовика
этот из 174 работат. но если закрыть монитор и снова открыть идут сплошные нули на запрос инита, снова перезапускаешь и все сново работает. думаю потому что ссесия не закрыта а даешь снова запрос на инит, при втором перезапуске по ходу ебу ссесию закрывает и все снова работает.....
Надо последний гвоздь в скет забить это если ссесия оборвется во время работы и чтобы он прыгнул на fastinit();
вот скетч меню я там правда нагородил. есть проблем тач медленно реагирует. по ходу пока все функции пройдет.... надо чтобы тач как то отдельно обновлялся по заданному времени а не после всего
скетч из 147 поста у тебя есть :)
этот из 174 работат. но если закрыть монитор и снова открыть идут сплошные нули на запрос инита, снова перезапускаешь и все сново работает. думаю потому что ссесия не закрыта а даешь снова запрос на инит, при втором перезапуске по ходу ебу ссесию закрывает и все снова работает.....
Надо последний гвоздь в скет забить это если ссесия оборвется во время работы и чтобы он прыгнул на fastinit();
т.е. кроме запроса инициализвации ещё и fastinit() перед этим всё время делать? Тут есть один момент. Если сессия уже открыта и сделать fastinit() я так понял блок перейлёт на следующий режим, т.к. fastinit() не только открывает сессию но и устанавливает режим 1 , т.е. считываение диагностических параметров (пиды текущих параметров), а если опять сделать fastinit() при открытой сессии, то будет уже режим 2 и т.д. что кстати и происходит когда сериал монитор закрываешь и сразу отвкрываешь, он переходит на режим 2, где не принимает эти пиды
вопрос в том, как узнать оборвалась ли сессия, то бишь открыта она в данный момент времени или закрыта
Он шлет FF-ки и нули. Посмот не правильно ответ, прописать что в случае такого ответа перейти на fastidia():. Ладно не будем на этом зацикливатся. Это мелочь. Скетч меню видел выше?
задержку делай 1000 убери или меньше сделай, из за неё тормозит
Убирал её совсем, она там по идее не нужно. Но без неё двоеточие часов моргает бешано. Хотя ч пробовал без трех датчиков а оно глючит. Подключаешь и глюки исчезают. Надо будет попробывать
что подключаешь, задержку ? и исчезают глюки?
вот так попробуй, ну двоеточае конечно мигать не будет, но его отдельно можно сделать
да без задержки все работает норм. только кнопку надо держать 2 секунды и тогда она реагирует. иногда быстрее иногда сразу. видать в каком месте всего цикла находится ближе или дальше
а кнопка сенсор? ну всмысле нарисованная на экране?
да
ну тут видать корявость библы либо скетча по меню и кнопкам
опиши логику скетча, что в начале на экране, как меняется от чего и т.д.
да . как в песне , я тебя слепила из того что было, а потом что было то и полюбила. вот фото моей будуще красотульки
давно лепил, щас попробую разложить что к чему.
ниче так симпатично, меня интересует частота вызова функции drawHomeScreen(), я так понял она вызвается один раз в сетап и потом только! после нажатия на сенсор
Да. Она погружается в сетапе, а в лупе уже крутятся время дата температура влажность и функции тач кнопок.
напиши координату написания символа данных после двоеточия , 250 норм будет? на фото у тебя там число 29 (температура)
а не для первого столбца где то 120 а второго где 365
это датчики два но они не правильно прописаны, они отображаются на всех экран. а надо только на этом
myGLCD.setColor(255, 255, 255);
myGLCD.printNumI(t, 395, 145); /////395, 145
sensors.requestTemperatures();
myGLCD.setColor(255, 255, 255);
myGLCD.printNumI(sensors.getTempCByIndex(0), 395, 110); ///////395, 110
я еще не дошел до прописки что куда
395, 40
395, 75
395, 110
395, 145
395, 180
395, 210 вроде так
хз, скомпилиться или нет, у меня библиотек нет на экран , может ещё на что
щас закину на обменник 3.95-2560-9488.rar и будешь из него компилить. он не компилится у меня.
понятно что правильно появление параметров двс на экране надо допиливать, но хотя бы так заработало бы