AVR-Duino/R3 program feltöltési hiba, megoldás után futófény

Processing/Wiring (illetve C) nyelvű programozási fogások, tippek. (AVR-Duino, Arduino, EthDuino, Diecimila, Severino, Nano, LilyPad)
Válasz küldése
Avatar
FBalazs
DrótVégénSzéndarab
Hozzászólások: 23
Csatlakozott: 2012. december 24. hétfő, 7:00

AVR-Duino/R3 program feltöltési hiba, megoldás után futófény

Hozzászólás Szerző: FBalazs »

Sziasztok!

Már több programot feltöltöttem az utóbbi időkben az AVR-Duino/R3-ra, de most egyszerűen nem megy.
Az Arduino környezet megáll az Uploading.../Feltöltés... folyamatnál és nem csinál semmit és a mikrokontrolleren az előzőleg feltöltött program fut továbbra is.
Több programmal is próbálkoztam köztük példa programokkal is.
Az alappanel menüben az előzőleg ajánlt Arduino Duelmilanove w/ATmega328 van kiválasztva.
Az utolsó sikeres program feltöltés óta csak annyi változott, hogy bekötöttem több LEDet és egy gombot, mind ezt egy kapcsolási rajz alapján. Mindezt kihúzva is megpróbáltam... úgy se ment :S
Amennyiben kihúzom az usb-t az Arduino felület hibát ír ki, jelezve hogy nem találja a COM9 soros portot.

Előre is köszönöm segítségeteket!
A hozzászólást 1 alkalommal szerkesztették, utoljára Robert 2013. január 4. péntek, 18:47-kor.
Ok: Címmódosítás (admin)
Avatar
Robert
Elektronbűvölő
Hozzászólások: 10213
Csatlakozott: 2005. december 9. péntek, 7:00

Re: AVR-Duino/R3 program feltöltési hiba

Hozzászólás Szerző: Robert »

D0, D1 esetén nem lehet bekötve semmi. Ez a sorosport lábai.
A chip a feltöltéskor resetel (feltöltés indulásakor)?
A not sync vagy COMx not access az üzenet?


Mintaként a példa-digital-blink az etalon.
Avatar
FBalazs
DrótVégénSzéndarab
Hozzászólások: 23
Csatlakozott: 2012. december 24. hétfő, 7:00

Re: AVR-Duino/R3 program feltöltési hiba

Hozzászólás Szerző: FBalazs »

Köszönöm a választ!

A 0-s és 1-es pinek bekötése volt a gond (kezdő vagyok) :)

De sajnos felmerült egy újabb probléma:
Az alábbi programot töltöttem fel az arduinora.

Kód: Egész kijelölése

int pins[8];
int pin=0;
int dir=1;

void setup()
{
  pins[0]=9;
  pins[1]=10;
  pins[2]=2;
  pins[3]=3;
  pins[4]=4;
  pins[5]=5;
  pins[6]=6;
  pins[7]=7;
  for(byte i=0; i<8; i++)
  {
    pinMode(pins[i], OUTPUT);
  }
}

void loop()
{
  for(int i=0; i<=7; i++)
  {
    if(i==pin)
    {
      digitalWrite(pins[pin], HIGH);
    }
    else
    {
      digitalWrite(pins[pin], LOW);
    }
  }
  
  pin+=dir;
  if(pin==0 || pin==7)
  {
    dir=-dir;
  }
}
Terv: futófény.
Eredmény: a 7-es pinen levő led világít.

Előre is köszönöm a segítséget!
Avatar
Robert
Elektronbűvölő
Hozzászólások: 10213
Csatlakozott: 2005. december 9. péntek, 7:00

Futófény....

Hozzászólás Szerző: Robert »

Jó szemed van. A LED-ek közti váltás ~0.01 ms :)

waitms 100; hiányzik

Kód: Egész kijelölése

    int pins[8];
    int pin=0;
    int dir=1;

    void setup()
    {
      pins[0]=9;
      pins[1]=10;
      pins[2]=2;
      pins[3]=3;
      pins[4]=4;
      pins[5]=5;
      pins[6]=6;
      pins[7]=7;
      for(byte i=0; i<8; i++)
      {
        pinMode(pins[i], OUTPUT);
      }
    }

    void loop()
    {
      for(int i=0; i<=7; i++)
      {
        if(i==pin)
        {
          digitalWrite(pins[pin], HIGH);
        }
        else
        {
          digitalWrite(pins[pin], LOW);
        }
      }
     waitms 100;
      pin+=dir;
      if(pin==0 || pin==7)
      {
        dir=-dir;
      }
    }
Avatar
FBalazs
DrótVégénSzéndarab
Hozzászólások: 23
Csatlakozott: 2012. december 24. hétfő, 7:00

Re: AVR-Duino/R3 program feltöltési hiba, megoldás után futó

Hozzászólás Szerző: FBalazs »

waitms 100;-at nem ismer fel az arduino, de beírtam egy delay(1)-et és az eredmény ugyan az, a 7-es pinen lévő led világít teljes fényerővel a többi pedig nem csinál semmit.
Avatar
FBalazs
DrótVégénSzéndarab
Hozzászólások: 23
Csatlakozott: 2012. december 24. hétfő, 7:00

Re: AVR-Duino/R3 program feltöltési hiba, megoldás után futó

Hozzászólás Szerző: FBalazs »

A problémát megtaláltam. (a digitalwrite-ban a pins indexében pin volt i helyett -.-)

A javított kód:

Kód: Egész kijelölése

int pins[8];
int pin=0;
int dir=1;

void setup()
{
  pins[0]=9;
  pins[1]=10;
  pins[2]=2;
  pins[3]=3;
  pins[4]=4;
  pins[5]=5;
  pins[6]=6;
  pins[7]=7;
  for(byte i=0; i<8; i++)
  {
    pinMode(pins[i], OUTPUT);
  }
}

void loop()
{
  for(int i=0; i<=7; i++)
  {
    if(i==pin)
    {
      digitalWrite(pins[i], HIGH);
    }
    else
    {
      digitalWrite(pins[i], LOW);
    }
  }
  delay(100);
  pin+=dir;
  if(pin==0 || pin==7)
  {
    dir=-dir;
  }
}
Avatar
FBalazs
DrótVégénSzéndarab
Hozzászólások: 23
Csatlakozott: 2012. december 24. hétfő, 7:00

Re: AVR-Duino/R3 program feltöltési hiba, megoldás után futó

Hozzászólás Szerző: FBalazs »

Még egy plusz kérdésem lenne: ha egy eljárásnak (voidnak) egy tömb paramétert szeretnék és meg akarom benne tudni a tömb hosszát, akkor van erre valami beépített eljárás, mint pl.: tömb.length vagy while-t használjak? (while-al tökéletesen megtudom oldani, csak gondoltam ha van beépített eljárás akkor azt használnám)
Válasz küldése