Господа, А задокументировано ли где-то поведение цифровых выходов при включении питания? Притягиваются ли они к нулю, или к едиице? Или считать, что "неопределено"?
Насколько поведение пинов критично, что подключаться будет? Я нигде описание не встречал. Надо ковырять исходники загрузчика и даташит на контроллер Если никто до вечера не сообразит, могу "с тела" снять измерения.
В даташите в разделе Register Description под табличкой каждого регистра обозначено, работает ли регистр на вход/на выход/в обе стороны, а еще ниже значение каждого бита при инициализации контроллера. Регистры PORTx и DDRx инициализируются нулями. Стало быть, работают на вход, без подтяжки (я смотрел в таблицу 13.2.2 документа 8161D-AVR-10/09).
Спасибо, капитальное исследование )) Правда, не могу развидеть масштаб графиков - кажется, до логической единицы уровня TTL всплески не дотягивают? Впрочем, импульсы неважны, важно конечное состояние. Подключаю некие экзотические ОЕМ-модемы, с их линиями управления CTS-RTS-/RESET Правда, пока как-то грустно подключается: по SoftwareSerial среди передаваемой информации периодически прилетают лишние нулевые байты, и кто глючит пока неясно - то ли модемы, то-ли SoftwareSerial.
Картинки кликабельны. На первой вольт, на второй половина. Может взять 2560 и ну его, этот SoftwareSerial?
2560 дооо, я б взял, и на них еще дисплеи бы повесил. Но заявлен бюджет проекта, а пацан сказал - пацан сделал. Разобрался вроде, эти модемы сделаны людьми с альтернативным мышлением, а документация, естественно, сделана ими же. Интересно, как работать будут в полевых условиях - но это не моя проблема. Вообще-то, на будущее, надо будет сразу 2560 в бюджет закладывать, а ставить Uno - все строители всегда типа так и делают, на этом и живут
Вот так? Я всегда начинаю с пересчета ресурсов и таблички с пинами. От фразы Software serial коробит Лучше китайский 2560 c ebay, чем Уно с костылями
Уууу, можете меня поздравить... Библиотек SoftwareSerial несовместима с библиотекой Servo, вот такие вот грабли. Будем переходить на Мегу.
Просили только передавать, но, если бы я так сделал, то неинтересно, и себя бы не уважал. 1. Контроль радиоканала - пинг-ответ 2. Подтверждение получения команды 3. Контроль напряжения питания на исполнителе 4. Это отложил на потом, но, обратной связи в сервах нет - по хорошему, контроль перемещения исполнительного органа надо бы делать, и, скорее всего, не серву надо было брать, а шаговый двигатель, как привод, и энкодер для обратной связи - вот это нормальная и правильная система. Не, задача втиснуть всё это в Uno, конечно, решабельна - я уже нашел, как SoftwareSerial c Servo подружить. Или свою библиотеку слепить, из готовых исходников-то несложно - будет SowtwareSerialServoUno имени меня. Но не хочу сейчас этим заниматься. К тому же, и заказчик теперь еще контроль на той стороне хочет - значит точно есть тема перейти на Мегу.