Не отправляет данные по USB на комп.

ddr2
Offline
Зарегистрирован: 27.12.2020

Китайский клон arduino uno работал нормально но в какой-то момент перестал отправлять данные через usb.

В коде делаю: printf("text\n");

пытается читать "cat /dev/ttyUSB0"  но так и висит в попытке прочитать. (baud'ы все перебрал)

на прерывания светодиод реагирует, скетчи avrdude нормально заливает.

На том же кабеле arduino uno с дип-чипом работает нормально. Что случилось с китайским клоном и можно ли оживить?  

 

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

ХЗ какой код, с ХЗ каким библиотеками, на ХЗ какой ардуине, в ХЗ какой конфигурации, ХЗ почему не работает

ddr2 пишет:

можно ли оживить?  

ХЗ!

ddr2
Offline
Зарегистрирован: 27.12.2020

Сейчас залил простой скетч: 

void setup() {
  // put your setup code here, to run once:
  pinMode(13, OUTPUT);  
}

int count = 0;
void loop() {
  // put your main code here, to run repeatedly:
  digitalWrite(13, HIGH);   // зажигаем светодиод
  delay(1000);              // ждем секунду
  digitalWrite(13, LOW);    // выключаем светодиод
  delay(1000);              // ждем секунду

  count++;
  Serial.print("count: ");
  Serial.println(count);
}

Скетч залился нормально.

 
avrdude: verifying ...
avrdude: 2134 bytes of flash verified

avrdude done.  Thank you.

 

Светодиодом мигает, но на экран ничего не пишет. Пробовал и Ком1 и Ком3(через который залил). 

Это уже в Виндоус. 

sadman41
Offline
Зарегистрирован: 19.10.2016

Serial.begin() АСПушкин будет вызывать?

ddr2
Offline
Зарегистрирован: 27.12.2020

sadman41, спасибо !  

заработало !

Rumata
Rumata аватар
Offline
Зарегистрирован: 29.03.2019

sadman41 пишет:

Serial.begin() АСПушкин будет вызывать?

:D

Понравилась идея, да? ))

sadman41
Offline
Зарегистрирован: 19.10.2016

Что тут может понравиться?

ddr2
Offline
Зарегистрирован: 27.12.2020

случайно удалил, инициализацию UART, такие дела. 

ASPushkin - да почти в тему )

Rumata
Rumata аватар
Offline
Зарегистрирован: 29.03.2019

ddr2 пишет:

ASPushkin - да почти в тему )

Главное, правильную библиотеку подключить ))

ddr2
Offline
Зарегистрирован: 27.12.2020

думал Arduino-IDE по умолчанию UART инициализирует. 

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

ddr2 пишет:

думал Arduino-IDE по умолчанию UART инициализирует. 

Как-то думать у Вас плохо получается. Вот Вы сами бы стали делать инициализацию устройства, которая сразу отжирает 10% оперативной памяти, если нет никакой уверенности, что оно понадобится.

ddr2
Offline
Зарегистрирован: 27.12.2020

а почему бы и нет, ведь ардуино платформа для школьников поиграться, тем более IDE должна упрощать процесс игры в ардуину, тем более что 10% не так и много. Ведь крутится в ардуине некий бутлоудер и никого не волнует что он там отъедает.  

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

Бутлоудер от ОЗУ ничего не отъедает.

Почему бы сразу не грузить SPI, Wire, SD, Servo, EEPROM, LiquidCrystall - а вдруг понадобится?

ddr2
Offline
Зарегистрирован: 27.12.2020

andriano пишет:

Бутлоудер от ОЗУ ничего не отъедает.

Это почему же?

sadman41
Offline
Зарегистрирован: 19.10.2016

А зачем ему это?

b707
Offline
Зарегистрирован: 26.05.2017

ddr2 пишет:

andriano пишет:

Бутлоудер от ОЗУ ничего не отъедает.

Это почему же?

потому что после запуска вашего скетча бутлоадера в оперативке уже нет

А вообще разговор ни о чем. В ардуине и так мало ресурсов, поэтому лучше иметь возможность загружать в память только то, что нужно. А разные школьники и студенты не помрут от того, что им пришлось добавить в код одну лишнюю строчку. Пусть учатся делать все сами, а не ждать, что дядя сделает за них :)

ddr2
Offline
Зарегистрирован: 27.12.2020

b707 пишет:

ddr2 пишет:

andriano пишет:

Бутлоудер от ОЗУ ничего не отъедает.

Это почему же?

потому что после запуска вашего скетча бутлоадера в оперативке уже нет

По прерываниям с юсб или через ресет, загрузчик вываливается в память из энергонезависимой, а после какого-то секунд, МК перезаписывает эту область загруженным скетчем и передаёт ему управление? 

b707
Offline
Зарегистрирован: 26.05.2017

ddr2 пишет:

По прерываниям с юсб или через ресет, загрузчик вываливается в память из энергонезависимой, а после какого-то секунд, МК перезаписывает эту область загруженным скетчем и передаёт ему управление? 

вы оперативную память и флеш между собой не путаете?

ddr2
Offline
Зарегистрирован: 27.12.2020

b707 пишет:

вы оперативную память и флеш между собой не путаете?

нет не путаю. 

DetSimen
DetSimen аватар
Offline
Зарегистрирован: 25.01.2017

ddr2 пишет:

думал Arduino-IDE по умолчанию UART инициализирует. 

Надо чонить умное почитать на сон грядущий. 

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

ddr2 пишет:

По прерываниям с юсб или через ресет, загрузчик вываливается в память из энергонезависимой, а после какого-то секунд, МК перезаписывает эту область загруженным скетчем и передаёт ему управление? 

МК (по крайней мере, наиболее распространенные AVR) имеют Гарвардскую архитектуру. Соответственно, ни о каком переписывании скетча в ОЗУ и передаче ему управления даже речи быть не может.