Ошибки загрузки скетча

Vadim_123
Offline
Зарегистрирован: 08.01.2021

Недавно купил сыну Arduino Uno.

Сперва учусь программировать сам.

В комплекте есть плата расширения Arduino Aensor Ahield v5.0. Без нее все работает прекрасно. Как только ее втыкаю в плату Arduino Uno при загрузки скетча выдается ошибка:

avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x30
avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0x20
avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0x30
avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0x20
avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0x30
avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0x20
avrdude: stk500_getsync() attempt 7 of 10: not in sync: resp=0x30
Произошла ошибка при загрузке скетча
avrdude: stk500_getsync() attempt 8 of 10: not in sync: resp=0x20
avrdude: stk500_getsync() attempt 9 of 10: not in sync: resp=0x30
avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0x20
 
Кто подскажет, это можно побороть, или нужно смираться?
Rumata
Rumata аватар
Offline
Зарегистрирован: 29.03.2019

Без него же работает все? Ну и на кой он вам нужен? На работу он никак положительно не влияет.

Изучайте С++ и сына приобщайте. 

nik182
Offline
Зарегистрирован: 04.05.2015

Вы ничего не описали. Как Вам помочь? Например. На шильде должен загореться диод. Горит? Напряжения в контрольных точках  присутствует? Замыканий дорожек или паек гребёнок контактов нет? Ресет на шильде не замкнут на массу? Голый шильд может повлиять на плату если он неисправен.

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

nik182 пишет:

Вы ничего не описали. Как Вам помочь? Например. На шильде должен загореться диод. Горит? Напряжения в контрольных точках  присутствует? Замыканий дорожек или паек гребёнок контактов нет? Ресет на шильде не замкнут на массу? Голый шильд может повлиять на плату если он неисправен.

Нах он в принципе нужен, этот "шильд"?  Работает все без него у человека, ну и отлично. Неужели сложно с распиновкой Уно разобраться один раз?

А если попрет в разработке, то забъет через пару месяцев и на УНО в пользу Нано, а то и не побоюсь этого слова ESP

Vadim_123
Offline
Зарегистрирован: 08.01.2021

Спасибо за оперативный ответ! С С++ проблем нет. Купил набор https://www.youtube.com/watch?v=p4YM-gAUM1c&ab_channel=%D0%A0%D0%B0%D0%B4%D0%B8%D0%BE%D0%BB%D1%8E%D0%B1%D0%B8%D1%82%D0%B5%D0%BB%D1%8CTV.

Плата Arduino Aensor Ahield v5.0 находиться сверху Arduino Uno в собранном состоянии робота. К ней присоединяются платы всех датчиков. Так, что без нее не обойтись. 

Проблему мне все-таки нужно как-то решить.

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

сначала залейте код на ардуину без шилда, а после устанавливайте шилд и включайте.

Vadim_123
Offline
Зарегистрирован: 08.01.2021

На плате Arduino Aensor Ahield v5.0 все работает в штатном режиме, только скетч с ПК не грузится. Правда я запитываю плату Arduino Uno только от USB ПК. Может для платы Arduino Aensor Ahield v5.0 просто не хватает мощности питания?

Vadim_123
Offline
Зарегистрирован: 08.01.2021

Когда машинка в сборе не удобно разбирать и собирать конструкцию. Наверное, должно быть другое решение. 

kalapanga
Offline
Зарегистрирован: 23.10.2016

Сенсор-шилд - это тупо кучка разъёмов. Скорее всего и влияет шилд как-то по-простому. Проверьте все контакты и соединения. Помнится, на каких-то шилдах происходило замыкание через металлический корпус усб разъёма на уно (шилд своими контактами на него ложился)

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

Vadim_123, не имея схемы "шилда" сделать какое-либо вразумительное заключение не представляется возможным.

Начать следует с проверки, куда подключены пины 0 и 1 Ардуино. Может там банально КЗ. Или через сам шилд к этим контактам подключено что-то лишнее.

В общем, без схемы это обсуждать бесполезно.

pit1
Offline
Зарегистрирован: 08.01.2020

ДОБРОГО ДНЯ НАРОД. можно я свой пятак сюда.

Классика жанра, обычные часы с кнопками. 

#include <Wire.h>
// 7сигментный индикатор
#define CLK 6
#define DIO 7
#define brightness 6 // яркость, от 0 до 7
// кнопки
#define keyHor 5
#define keyMin 4
#define keyPL 3
//TM1637 tm1637(CLK,DIO);
#define DS3231_I2C_ADDRESS 0x68
 
volatile boolean flag;
///// часы ..
byte decToBcd(byte val){
return ( (val/10*16) + (val%10) );
}
byte bcdToDec(byte val){
return ( (val/16*10) + (val%16) );
}
void setDateDs3231(byte second, // 0-59
byte minute, // 0-59
byte hour, // 1-23
byte dayOfWeek, // 1-7
byte dayOfMonth, // 1-28/29/30/31
byte month, // 1-12
byte year) // 0-99
{
Wire.beginTransmission(DS3231_I2C_ADDRESS);
Wire.write(0);
Wire.write(decToBcd(second));
Wire.write(decToBcd(minute));
Wire.write(decToBcd(hour));
Wire.write(decToBcd(dayOfWeek));
Wire.write(decToBcd(dayOfMonth));
Wire.write(decToBcd(month));
Wire.write(decToBcd(year));
Wire.endTransmission();
}
void getDateDs3231(byte *second,
byte *minute,
byte *hour,
byte *dayOfWeek,
byte *dayOfMonth,
byte *month,
byte *year)
{
Wire.beginTransmission(DS3231_I2C_ADDRESS);
Wire.write(0);
Wire.endTransmission();
Wire.requestFrom(DS3231_I2C_ADDRESS, 7);
*second = bcdToDec(Wire.read() & 0x7f);
*minute = bcdToDec(Wire.read());
*hour = bcdToDec(Wire.read() & 0x3f);
*dayOfWeek = bcdToDec(Wire.read());
*dayOfMonth = bcdToDec(Wire.read());
*month = bcdToDec(Wire.read());
*year = bcdToDec(Wire.read());
}
void setINT(){ //включает выход SQW, который вроде выключен по умолчанию
Wire.beginTransmission(DS3231_I2C_ADDRESS);
Wire.write(0x0E);
Wire.write(0x80);
Wire.endTransmission();
}
void blink() {
digitalWrite(13, !digitalRead(13));
flag = !flag;
tm1637.point(flag);
}
void setup() {
// Serial.begin(9600);
Wire.begin();
pinMode(13, OUTPUT);
pinMode(keyHor, INPUT_PULLUP);
pinMode(keyMin, INPUT_PULLUP);
pinMode(keyPL, INPUT_PULLUP);
tm1637.init();
tm1637.set(brightness);
 
setINT();
attachInterrupt(0, blink, CHANGE);
}
void loop(){
// читаем время из модуля
byte second, minute, hour, dayOfWeek, dayOfMonth, month, year;
getDateDs3231(&second, &minute, &hour, &dayOfWeek, &dayOfMonth, &month, &year);
// забиваем массив значениями для отпарвки на экран
int8_t TimeDisp[4];
 
TimeDisp[0] = hour / 10;
TimeDisp[1] = hour % 10;
TimeDisp[2] = minute / 10;
TimeDisp[3] = minute % 10;
// обработка кнопок
if (!digitalRead(keyHor) && !digitalRead(keyPL)){ // часы
second = 0; // сбрасываем секунды
hour++; // пребавляем единицу к часам
if (hour > 23) hour = 0; // если вылезли за границы присваеваем 0
setDateDs3231(second, minute, hour, dayOfWeek, dayOfMonth, month, year); // пишим в модуль
delay(200);
}
if (!digitalRead(keyMin) && !digitalRead(keyPL)){ // минуты
second = 0;
minute++;
if (minute > 59) minute = 0;
setDateDs3231(second, minute, hour, dayOfWeek, dayOfMonth, month, year);
delay(200);
}
// отправляем массив на экран
tm1637.display(TimeDisp);
}
 
 
exit status 1
'tm1637' was not declared in this scope
 Высвечивается последняя строка.
Пожалуйста пните носом , подскажите что за хрень. С ув. Петр
 
DetSimen
DetSimen аватар
Offline
Зарегистрирован: 25.01.2017

pit1 пишет:

Пожалуйста пните носом , подскажите что за хрень. С ув. Петр

Пока код праильно не вставишь, ответов не жди

negavoid2
negavoid2 аватар
Offline
Зарегистрирован: 06.05.2020

Ну дык

//TM1637 tm1637(CLK,DIO);

А ругается не только на последнюю строку, там и выше наверное на предыдущие тоже ругается.