Arduino chipkivezetések

Processing/Wiring (illetve C) nyelvű programozási fogások, tippek. (AVR-Duino, Arduino, EthDuino, Diecimila, Severino, Nano, LilyPad)
Avatar
Robert
Elektronbűvölő
Hozzászólások: 10213
Csatlakozott: 2005. december 9. péntek, 7:00

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

Várjatok még pár napot :).
A megszakítások című fejezetben ott (lesz) a megoldás. Még én sem tudom, mert a programkód most készül :P .
Avatar
kapu48
Elektronbűvölő
Hozzászólások: 3375
Csatlakozott: 2008. augusztus 29. péntek, 6:00

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

Az a példa pont a ló túlsó oldala:)
16 000 * végrehajtott feltételes ugrásból csak az utolsó lesz 1 órajel, az előző 15 999 * 2 tick.
:wink:
Így próbáljon az ember átlagot számítani? :)
Avatar
Csoki
DrótVégénSzéndarab
Hozzászólások: 44
Csatlakozott: 2012. június 25. hétfő, 6:00

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

Félve kérdezem: megnyuvadt a mikróvezérlőm ?

A hibajelenség: A legegyszerűbb villogtatós alapprogram esetén, ha a 13 -as kimenetet villogtatom, akkor a beépített D13 as led villog.
Ha viszont egy másik lábon levő kimenetet vezérlek (pl:4) akkor a D13 led fixen világít. Nem tudom mióta ilyen, mert alapvetően egy saját gyártású shieldet használok az Arduinohoz, emiatt a D13 -as ledet nem látom.

Csak a biztonság kedvéért a kód:

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

int LED = 4;

void setup ()
{
  pinMode(LED, OUTPUT);
}



void loop()
{
  digitalWrite(LED, HIGH); // turns the LED on
  delay(500); // waits for a second
  digitalWrite(LED, LOW); // turns the LED off
  delay(500); // waits for a second
}
Avatar
Robert
Elektronbűvölő
Hozzászólások: 10213
Csatlakozott: 2005. december 9. péntek, 7:00

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

D13-at nem vezérled. Így lehet hogy valami fogja befele-menet....
A betöltőprogram meg ki tudja hogyan inicializálja (alapban OUTPUT)...

Ha a programod elejére berakod: D13 output legyen és H szint? Elvileg akkor abbamarad....

Este tudom kipróbálni, hogy mit művel a programoddal....

Melyik Arduino fordító?
Avatar
Csoki
DrótVégénSzéndarab
Hozzászólások: 44
Csatlakozott: 2012. június 25. hétfő, 6:00

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

A gyári Arduino 1.0.1 -el csinálja ezt.
Avatar
Csoki
DrótVégénSzéndarab
Hozzászólások: 44
Csatlakozott: 2012. június 25. hétfő, 6:00

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

Arduino analóg bemenetével kapcsolatban lenne kérdésem.
Hogyan lehetne valóban nagyimpedanciás bemenetet csinálni hozzá, hogy ne terhelje a mérendő áramkört, és az AD konverter is lineárisan működjön?
Van esetleg erre valami bevált műveleti erősítős kapcsolás?
Avatar
SzLacus
Tranzisztorgyógyász
Hozzászólások: 175
Csatlakozott: 2012. május 20. vasárnap, 6:00

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

Mit nevezzünk "valóban nagy impedanciának? Az atmegák analóg bemenete az adatlap szerint 100 megaohm bemeneti ellenállást képvisel. Ami ennél nagyobb impedanciával bír, azt már szakadásnak nevezzük.
Avatar
Robert
Elektronbűvölő
Hozzászólások: 10213
Csatlakozott: 2005. december 9. péntek, 7:00

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

atmega analog bemenet helyettesito abra:
10 kohm, soros.

Nagyimpedanciás bemenet: előtte FET bemenetű OPA (műveleti erősítő), 1x erősítés.
Avatar
Csoki
DrótVégénSzéndarab
Hozzászólások: 44
Csatlakozott: 2012. június 25. hétfő, 6:00

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

Sziasztok,

A PWM kivezetésekkel lenne kérdésem. Megtaláltam, hogy a chipben 3 időzítő van, amely mindegyik 2 - 2 kimenethez van hozzárendelve.

Timer0: D5, D6
Timer1: D9, D10
Timer2: D3, D11

Sajnos a korábban leírtak számomra még mindig nem világosak.
Mi történik a D5 és D6 kimenettel, ha delay() -t használok?
Van a chipben 3 belső időzítő. Mikor milyen körülmények között fogom használni a Timer1 és Timer 2 -őt, azaz mi fogja befolyásolni a többi időzítőhöz tartozó kimenetek működését?
Avatar
Robert
Elektronbűvölő
Hozzászólások: 10213
Csatlakozott: 2005. december 9. péntek, 7:00

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

A PWM frekvencia alapesetben 470 Hz.
Ha a delay() illetve delaymicroseconds() is használatra kerül, akkor:
- pontossága romlik
- a 470 Hz helyett ~200 Hz-re visszaesik a frekvenciája.


Timer1/Timer2: legkomplexebb chiprész. Bascom oldalról egy kis leírás van hozzá, hogy mire jó:
http://avr.tavir.hu/modules.php?name=Co ... age&pid=62

Arduino alatt ilyen közvetlenül _nem_ érhető el. Ezzel az arduino határán túl is vagy... :)
Válasz küldése