Здрасте всем.
Щас в отпуске, но меня не отпускает мысль о решении загадки, которая возникла за день до отъезда.
Далее по тексту "Arduino" читать как "плата Arduino".
Ни какой арду-зависимости тут нет. Прошики написаны на ассемблере.
Значит, имею полетный контроллер, на базе меги_2560.
В полетнике есть несколько UART.
назовем их условно uart1, uart2 и тп..
Имеется устройство на базе платы arduino mini (это, та у которой нет на борту USB) в связке с платой преобразователем на базе rs232, и второй вариант на базе arduino nano (эта с USB ch 340)
Прошивка написана мной собственноручно на ассемлере.
Задача контроллера читать поток данных с полетного контроллера и перекодировать его в собственный формат.
(Обе арду-платы прошиты одинаковой прошивкой)
Сперва работал с первым вариантом ( тот что без usb )
и проблем не возникало, но ради удобства перешел на ардуино_нано ( который с usb ) и оказалось, что этот вариант не читает uart1 с полетного контроллера, но при этом нормально читает uart2
( и uart3 )
Хотя uart1 полетника не отличается от uart2!
Даже осциллографом глянул, чтоб на всякий случай убедится.. Амплитуда одинаковая - 5 Вольт.
Записал семплы с обоих портов - они идиентичны!
Ну и самое смешное: первый вариант ( arduino mini без usb ) читает нормально все порты на полетнике!
Ну, думаю, "значит" проблема в arduino nano... ( это которая с usb )...
Смотрю на плату, а там на tx-rx светодиодики есть... Отпаял их - ничего не изменилось..
Думаю, может проблема в TTL конверторе ch340, установленном на arduino nano.. Подключился к tx-rx на arduino nano ( которая с usb ) преобразователем rs232 из первого варианта, не отпаивая родной TTL конвертор ch340. Все равно не читает.
Еще раз подчерну, родной (ch340) TTL не отпаивал...
Загадка заключается в том, что uart2 полетника arduino nano читает без проблем. А uart1 не отличается от uart2.
Как такое возможно?
П.С. предположу, что uart1 на плате полетника разведен не совсем корректо, но замечу, что первый вариант ( arduino mini ) работает нормально со всеми портами.
еще под подозрением TTLконвертор на плате arduino nano ch340 - ведь я его не отпаивал. Хотя с uart2 оно работает.
П.П.С. отличие в прошивках все же есть: это наличие ватчдога и залоченная прошивка на arduino nano