Pull to refresh

Comments 17

UFO just landed and posted this here
если у Вас Pro Mini и если у Вас usb to com с DTR(сброс) — то проблем не будет, к примеру у парня как и многих других при прошивке не всегда получается:

А можете написать скетч и схему?
UFO just landed and posted this here
Я выводил DTR вместо питания 3.3В. Правда простым перерезанием дорожки не ограничилось. Оказалось, напряжение 3.3В берётся с чипа, но
этот вывод соединён конденсатором на землю (это есть и в типовой схеме включения). Если оставить вывод без конденсатора, микросхема работает нестабильно.
Ещё нюанс — часто в такие дешёвые переходники ставят чипы PL2303HXA, которые официально не поддерживаются в Windows 8 и 8.1. Нужно ставить старую версию драйвера (тут вместе с инструкцией по установке).
У меня уже вошло в привычку все среды разработки крутить на виртуальных машинах — на работе так делаю. К слову, ардуино просто летает в виртуалке на WinXP :) А в XP с этим никаких проблем.
На FT232 драйвера есть на всё, начиная от ХР, заканчивая win10. Начиная с Windows 7 находит драйвер самостоятельно. На Linux работает «с коробки», как /dev/tty*
Более того, заканчивая андроидом.
UFO just landed and posted this here
Китайцы любят шалить, они еще и на релейных блоках печатают не правильно(NO NC), и жилы не по цветам паяют(USB кабеля)… и т.д. Все надо проверять ;-)
Интересно. У меня пачка из 5 таких Arduino и 5 переходников. Тоже моддил (на моих переходниках вообще вывод чипа никуда не идёт) медной проволочкой, но всё равно не работало. И с дёрганьем Reset вручную — тоже. Пробовал и RX/TX менять местами, но, возможно, тогда, когда полагался на reset с переходника. Надо ещё раз всё перепробовать. А то так и лежит 5 потенциальных трупов.
Я ещё некоторое время тупил — «промазал» при выборе типа платы в настройках IDE (Pro Mini аж 4штуки в меню). Как я понял, у разных плат разная скорость COM-порта, и при неверно выбранной плате загрузка не шла.
Обычно у них старт одинаковый по скорости, у них в загрузчиках разная калибровка — и при записи ide видит что не та версия(мои наблюдения).
Как то прислали мне Китайцы 4шт Pro Mini, не мог прошить, думал брак… взял старую версию IDE все прошилось… потом залил в нее загрузчик из новой IDE и теперь без проблем заливается с новых версий IDE.
Очень приятная модификация, давно делаю на этих чипах ее по вашему гайду, аккуратно припаивая в торец PL'ки прямого папу с 6-ым пином. Даже корпуса приноровился им делать. (прекрасно гнуться из плоских кусков ПЕТ бутылок) — самое оно, для того что бы заманивать начинающих разработчиков.

Но сегодня я вспомнил про этот мод из за темы посерьезнее. Как известно ардуина (для которой этот переходник чаще всего и используется) однозадачна. И это означает что Serial генерирует прерывания. Любой проект на стоковой проше с наличием Serial.begin перестает быть системой реального времени. И это судя по гуглежу довольно часто встречающаяся проблема, когда люди хотят опрашивать периферию (датчиков по I2C например или SPI)

Я пока захотел сделать конвертор USB to I2C (может и других шин) и проблему предвосхитил сразу же. Стал думать.
А. Можно отрубать порт перед началом работы с время зависимой периферией
— но тогда управление с ПК может потеряться
Б. Можно впаять каскад и управлять отрыванием RX
— но пайку не хотелось вешать на МК плату (многие ее юзают исключительно с макеткой)
В. Можно положить SLAVE протокол, который сделает из ПК терминал засылающий команды только по готовности
— но это требует драйвера нестандартного протокола и все еще можно поломать если ПК начнет засылать именно тогда когда МК соберется послать что теперь он занят. Городить огород синхронизации и пинга не але.

И тут я вспоминаю вашу статью. А ведь на PL'ке есть еще и рабочий CTS пин (Clear to Send)
— который гласит что ПК обязан остановить передачу до тех пор пока там не настанет 1
— и это Стандартизированное решение!
— пора припаивать к ней 7й пин!

P.S. (Если очень повезет, возможно PL'ка даже берет буферизацию на себя)
— ушел тестировать
Sign up to leave a comment.

Articles