RCHeliClub.ru
Для новичков => Вопросы новичка => Тема начата: avi@tor от 28 Апрель, 2015, 12:01:59 pm
-
Уважаемые коллеги по хобби.
Возникла у меня необходимость подключиться к устройству USART с 6-ю пинами.
Четыре из них стандартные: Земля, +5В, RX, TX, а вот два дополнительных - контроль потока: DTR и CTS.
Проблема в том, что стандартные адаптеры дают только 4 провода, а заказывать ещё железку с "на_еБэя" не хочется ибо долго и "абыдна, да".
В общем надо как-то сколхозить контроль потока.
Есть:
1. Китайский адаптер (UART/i2c+SPI) с непонятными обозначениями:
(http://img04.taobaocdn.com/bao/uploaded/i4/37238385/T2ZGWsXDRXXXXXXXXX_!!37238385.jpg)
В данном случае не понятны обозначения DD и DC ибо в описании стандарта я DC вообще не нашёл.
Можно-ли, нельзя-ли таким подцепиться к USART с контролем чётности я так и не понял. Эксперименты продолжаются.
2. Есть вот такая вот "метла" (ИЧХ отечественного производства!).
(http://www.freeduino.ru/arduino/images/FreeduinoNano_4_big.jpg)
Поскольку DTR и CTS являются инструментами контроля потока (как я понял, сначала мы шлём "модему" DTR и ждём от "модема" СTS, далее льём фрейм данных и так каждый раз) мне почему-то кажется, что наверное можно написать небольшой скетч на ардуине который сможет управлять передачей данных таким образом.
Вопрос к бывалым: Как это сделать и возможно есть изъяны в логике?
-
Жуть какая... на микросхему смотреть надо, а не на надписи на плате... на мкросхеме, как правило, выведено всё... + подтянуть что надо к чему надо...
А на фото - обычная ардуина, которой RTS нужен для пересброса в режиме прошивке, не более того.
-
Поколхозить можно, но если нужно мороковать с реальным устройством - я бы посоветовал глянуть на девайс Moxa UPort 110 (готовое решение). Если же принципиален колхоз - на праздниках с удовольствием ковырну ардуинку ;)
-
Андрей, я могу и микросхемку показать, вот она (minimosd в редакции MultirotorMania):
(http://multirotormania.com/2072-thickbox_default/mrm-minimosd-.jpg)
(http://static.rcgroups.net/forums/attachments/2/2/5/6/4/ai17444948-17-thumb-main.jpg)
Но это вряд ли что-то изменит, тут ведь реально что-то сделать надо, а не сказки рассказывать.
Илюх, буду признателен если что-то выйдет. Я сам тоже постараюсь разобраться, но для меня пока эта ардуина лес густой. Теоретически примерно понимаю чего там надо, но в коде как реализовать пока не разобрался.
По-хорошему пока план такой:
Берём UART через USB, пишем в буфер, а затем потихоньку засылаем эти данные через другие ножки контроллера в прошиваемый девайс не забывая при этом сначала слать DTR и получать CTS перед каждым пакетом данных.
Как-то так.
-
http://www.pjrc.com/teensy/td_libs_AltSoftSerial.html (http://www.pjrc.com/teensy/td_libs_AltSoftSerial.html) раз
http://www.arduino.cc/en/Reference/SoftwareSerial (http://www.arduino.cc/en/Reference/SoftwareSerial) - причем ее пользовал в каких-то проектах, косая шо ппц, но жить можно
-
Смотри, какой еще колхоз на cp21x есть
http://dmstudios.net/misc/CP2102_USB_UART_mod-001_small.jpg (http://dmstudios.net/misc/CP2102_USB_UART_mod-001_small.jpg)
Боюсь играть в кэпа, но.
По существу - линии квитирования (RTS/CTS) тебе нафик не нужны, конкретно для данной железки, забудь про них (ты все равно CTS с адаптера пригонишь на землю, будешь там иметь усегда логическую единичку, как и положено, что в целом-то пофиг).
Колхоз, если нет UART/USB адаптера, описан с конкретно твоей железкой описан здесь http://www.rcgroups.com/forums/showpost.php?p=28145350&postcount=75 (http://www.rcgroups.com/forums/showpost.php?p=28145350&postcount=75)
Линия DTR тебе нужна только для того, чтобы добраться до bootloader'a этой самой железки, ТОЧНО такой же функционал (без линии DTR) можно изобразить, мастерски-вовремя нажимая кноповку RESET на плате (если возился с arduino nano - тебе такое уже знакомо, при прошивке скетчей).
-
Аха! Вон они какие, сеРверные олени!
Это очень-очень ценная информация. Была такая фигня на ранних прошивках PX4, там надо было в бутлоадер выставить плату, чтобы прошивку залить. Какраз резетом делалось.
Сейчас поэкспериментирую.
-
Илюх, огромное тебе человеческое спасибо :)
Перешил ОСД-шку методом "прецензионного ресета".
Пока ещё в воздухе не тестировал, но все данные записались, а большего от неё пока не требуется.
-
Та не за шо :) Хороших полетов :)
-
вот она
не эта, а на которой USB компорт... Это то понятно, 328ая атмега обычная, шьется методом Ильи (мне было лень, я на 3 доллара купил несколько правильно разведенных UARTов)
-
Она ничего не даст, обычный чип с программируемой логикой. Там как и в ардуине все самое интересное внутри происходит.