Программирование Arduino Due Core

andriano
andriano аватар
Offline
Зарегистрирован: 20.06.2015

Как следует программировать сабж? https://ru.aliexpress.com/item/Due-Core-SAM3X8E-32-bit-ARM-Cortex-M3-Mini-Module-For-Arduino-Compatible-IoT-MCU-512K/32846081913.html

Можно ли использовать такой переходнник? https://ru.aliexpress.com/item/CP2102-USB-2-0-to-TTL-UART-Module-6Pin-Serial-Converter-STC-Replace-FT232-Module/32534146426.html

Если "да", то как подключать? На переходнике, вроде, есть выводы 5 и 3.3 В, но не вижу стабилизатора и не вижу, как переключить DX/RX на 3.3В. 

Выводы переходника: DTR, RXD, TXD, +5V, GND, 3.3

дополнительные (не распаянные отверстия): DCD, DSR, RTS, CTS, RST, RI, _SUS, SUS

Выводы Due Core: DTR, TX, RX, VBL'S, GND, EXT ERS

Если "нет", то какой подойдет? 

 

И второй вопрос: судя по всему, Serial - это именно программный порт, по крайней мере, при подключении через родной порт запрограммировать кристалл можно, но сообщения Serial не идут. Можно ли вывести Serial? на родной порт?

alex_r61
Offline
Зарегистрирован: 20.06.2012

Надо с переходником брать

https://ru.aliexpress.com/store/product/Due-Core-SAM3X8E-32-bit-ARM-Cort...

andriano
andriano аватар
Offline
Зарегистрирован: 20.06.2015

Я тоже хотел с переходником. Но на тот момент, когда заказывал, с переходником закончились - остались только эти.

alex_r61
Offline
Зарегистрирован: 20.06.2012

По моей ссылке, внизу, всё расписано. И у них на сайте документация есть.

andriano
andriano аватар
Offline
Зарегистрирован: 20.06.2015

То есть можно безбоязненно подавать 5В на VBL'S и подавать 5-вольтовые сигналы на RX/DX?

alex_r61
Offline
Зарегистрирован: 20.06.2012

Сейчас глянул свой переходник, питание там 5В, а вот уровни 3.3Вольт.

andriano
andriano аватар
Offline
Зарегистрирован: 20.06.2015

Вот так: век живи, век учись.

Посмотрел - на моем (ссылка в теме) логика тоже 3.3 В. А я еще репу чешу...

Спасибо.

andriano
andriano аватар
Offline
Зарегистрирован: 20.06.2015

Что-то не получается: пишет port not found.

alex_r61
Offline
Зарегистрирован: 20.06.2012

Arduino Due (Native USB Port) нормально прошивается. Подключить через MicroUSB.

andriano
andriano аватар
Offline
Зарегистрирован: 20.06.2015

Да, прошивается. Но никак не могу получить вывод в какой-нибудь Serial. В том числе в SerialUSB.

Сейчас сравнил с обычным Due - там тоже работает только Serial из программного порта.

Еще в Due Core как-то изменяется номре порта: у меня - между 18 и 19. Такое впечатление, что для прошивки нужен 19. Обычно виден 18. Когда пытаешься в него прошить - возникает ошибка - исчезает 18 порт и вместо него появленятся 19. Через 19 прошивается, после чего пишет, что теперь не может найти уже 19, а в списке доступных появляется и 18 и 19. После стирания кнопкой видны оба - и 18 и 19.

На обычной Due, вроде, как-то прошилось через 18 (програмнный, через который прошивал раньше - 12). Но вот выдачи текста в Serial или в SrerialUSB добиться не удается. 

alex_r61
Offline
Зарегистрирован: 20.06.2012

У меня чистая видится на 12 порту, после прошивки появляется 13 порт и определилось как Arduino Due (Native USB Port). Потом определилось на 14. Передёрнул шнурок и снова на 13 как "Устройство с последовательным интерфейсом(COM13)".

andriano
andriano аватар
Offline
Зарегистрирован: 20.06.2015

Ну, то есть чехарда с номерами - это нормально.

Собственно, пока основная задача - получить возможность прошивки и обмена отладочной информацией по любому порту.

Пока от программного вообще не удается добиться реакции. Т.е. ч компьютера виден как порт 5, но соединиться с ним не получается. 

От родного - удается прошить, но не удается заставить работать SerialUSB.

alex_r61
Offline
Зарегистрирован: 20.06.2012

Я залил пример SdFat SdInfo в порт выводит инфу.

andriano
andriano аватар
Offline
Зарегистрирован: 20.06.2015

Странно.

У меня на 3-й строке зависает:

void setup() {
  SerialUSB.begin(9600);
  while(!SerialUSB);

 

alex_r61
Offline
Зарегистрирован: 20.06.2012

Да, тоже было и сброс не помогал, тишина в порту. Перезалил и пошло.

andriano
andriano аватар
Offline
Зарегистрирован: 20.06.2015

Да я уже несколько десятков раз перезаливал в разных комбинациях...

Что интересно: SewrialUSB.available() работает, т.е. при поступлении байта снаружи - индицирует его. И эта индикация сбрасывается посредством SerialUSB.read(). Т.е. на ввод порт, вроде, работает. А если пытаться выводить в тот же порт, - зависает. Такое впечатление, что останавлтвается на функции write().

Где-то на форумах натыкался на сообщение, мол, SerialUSB вообще не доделан, и чтобы пользоваться им, реализацию надо писать самому.

 

Ладно, зайдем с другой стороны.

По приведенной Вами ссылке подключение программного порта:

1-й контакт JP1 соединен с землей. На моем переходнике USB-UART этот контакт подписан 3v3. И, по документации, чип 2102 включает в себя стабилизатор на 3.3В.

А сомнения возникли в связи с тем, что у меня сложилось впечатление, что сигнал с программного порта на комп не проходит, хотя на пепеходник поступает (судя по помигиванию светодиода на переходнике).

 

alex_r61
Offline
Зарегистрирован: 20.06.2012

О каком переходнике речь? Я у них брал платы с их адаптером, на нём и проверял. Сейчас взял другой адаптер на 2104, разводка не совпадает, поэтому подключил шнурком. В порт выводится и обратную посылку принимает.

andriano
andriano аватар
Offline
Зарегистрирован: 20.06.2015

Ссылка на переходник - в 0-м сообщении темы. Я им обычно Про Мини прошиваю.

Т.е. общение происходит как с родным переходником, так и с посторонним.

Спасибо за информацию.

 

PS. Заодно и представится случай повозиться с логическим анализатором.