аналоговые входы а4, а5

fatbad
Offline
Зарегистрирован: 18.01.2016

Добрый день.

Подскажите, пожалуйста, есть ли какие-нибудь нюансы настройки аналоговых входов а4, а5 arduino uno. Ситуация следующая: моделирую схему в Prpteus 8.3 sp2, первые 4 входа работают адекватно, при опросе в программе 4 и 5 входов  нет значений в эмуляторе Com и simulator log некоторое время выдается ошибки PC=0x0000. [AVR CPU] RETI address = 0x0000 [U1]; PC=0x0000. [AVR CPU] RET address = 0x0000 [U1]; PC=0x0000. [AVR CPU] RET address = 0x0000 [U1], а потом Logging stopped - check times specified in Configure Diagnostics dialogue form. Схемы собранные на всех аналоговых входах одинаковые.

Подскажите где копать? Или это глюки протеуса?

 
 
 
 
bwn
Offline
Зарегистрирован: 25.08.2014

Их отличие от других аналоговых, что туда выведен аппаратный I2C. Так что, возможно и протеус.

fatbad
Offline
Зарегистрирован: 18.01.2016

Каким либо образом необходимо настраивать в программе эти выходы, что бы i2c не мешал?

bwn
Offline
Зарегистрирован: 25.08.2014

В живом железе они работают как и затевалось. По протеусу не знаю.

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

fatbad, Вы I2C хоть каким-нибудь образом используете? (например, подключаете библиотеки)

Если "да", забудьте о них как об аналоговых входах. Если "нет", вероятно глюк Протеуса. В последнем случае рекомендую проверить на железе.

fatbad
Offline
Зарегистрирован: 18.01.2016

Сгорело железо вместе с usb и vga, жду китайцев, а пока протеус. I2C не использую.

fatbad
Offline
Зарегистрирован: 18.01.2016

Косяк вот в этих строчках:

For (int i=0; i <= 200; i=i+1){
    Serial.print(val_AN[i],DEC);
    Serial.print(" ");
    Serial.print(val_BN[i],DEC);
   Serial.print(" ");
   Serial.print(val_CN[i],DEC);
    Serial.print(" ");
   Serial.print(cur_A[i],DEC);
   Serial.print(" ");
    Serial.print(cur_B[i],DEC);
    Serial.print(" ");
    Serial.print(cur_C[i],DEC);     
    Serial.println("  ");
 };
 
Если выводишь все, то выдаёт ошибку, если только 4 массива, то работает. Не важно какие 4. Т.е. видимо какой-то буфер переполнен. Есть какие-нибудь идеи? 
Radjah
Offline
Зарегистрирован: 06.08.2014

6x201x2=2412 если 6 массивов integer.

Сколько там памяти в чипе?

fatbad
Offline
Зарегистрирован: 18.01.2016

EEPROM (Bytes):1024

 

Radjah
Offline
Зарегистрирован: 06.08.2014

Иди про типы памяти в атмеге читай.