Fórum témák

» Több friss téma
Fórum » AVR - Miértek hogyanok
 
Témaindító: pakibec, idő: Márc 11, 2006
Témakörök:
WinAVR / GCC alapszabályok:
1. Ha ISR-ben használsz globális változót, az legyen "volatile"
2. Soha ne érjen véget a main() függvény
3. UART/USART hibák 99,9% a rossz órajel miatt van
4. Kerüld el a -O0 optimalizációs beállítást minden áron
5. Ha nem jó a _delay időzítése, akkor túllépted a 65ms-et, vagy rossz az optimalizációs beállítás
6. Ha a PORTC-n nem működik valami, kapcsold ki a JTAG-et
Bővebben: AVR-libc FAQ
Lapozás: OK   533 / 840
(#) lajos1969 hozzászólása Ápr 27, 2013 /
 
Sziasztok!
Valaki tudna nekem segíteni? A CodevisionAvr-nél mit kell a fusebit beállításoknál kipipálni, a képen lévő beállításhoz? Köszönöm szépen!
A hozzászólás módosítva: Ápr 27, 2013

Fusebit.png
    
(#) FMSound válasza (Felhasználó 15355) hozzászólására (») Ápr 27, 2013 /
 
Hogy ellenőrizzem le hogy az biztosan konnektál-e?
Nálam így néz ki, csatoltam:
(#) Fizikus válasza karika200 hozzászólására (») Ápr 27, 2013 /
 
A kulso megszakitasokra ebben a cikkben van pelda:
Will-i 3
A fel es lefuto elre torteno megszakitasok hasznalatara pedig ebben a cikkben talalsz peldat:
SRF-04 ultrahango tavolsagmero
(#) FMSound válasza (Felhasználó 15355) hozzászólására (») Ápr 27, 2013 /
 
Automata kiválasztásra szoktam tenni, de mint mutattam az előző képen eljutottam odáig, tehát konnektalt. Utána jön a probléma +1x beillesztem:
A hozzászólás módosítva: Ápr 27, 2013

AVR hiba.JPG
    
(#) kurosaki hozzászólása Ápr 28, 2013 /
 
Sziasztok lenne egy kérdésem az AVR en lévő kódot vissza tudom nyerni? mert össze omlott a hdd. Van rá mód?előre is köszönöm a segítséget.
(#) gabi20 válasza kurosaki hozzászólására (») Ápr 28, 2013 /
 
szia csak a hex kódot tudod visszaolvasni a forráskódot nem
(#) kurosaki válasza gabi20 hozzászólására (») Ápr 28, 2013 /
 
Üdv Akkor az eddigi munkám oda?
(#) sikolymester válasza kurosaki hozzászólására (») Ápr 28, 2013 /
 
Bizony. Hasznalj dropboxot a jovoben.
(#) kurosaki válasza sikolymester hozzászólására (») Ápr 28, 2013 /
 
meg ezt is nagy nehezen sikerült megirnom most kezdhetem ujra huuu akkor nem soka ismét vissza térek hozzátok kis segitségért rem nem baj ^^
(#) karika200 hozzászólása Ápr 30, 2013 /
 
Üdv!

ATmega8 16-bites timerével kapcsolatban lenne kérdésem. Szeretném megvalósítani, hogy 10 percenként lefuttasson az MCU egy programrészt. (A program C-ben íródik.) A következő képp próbáltam, az adatlap szerint, de nem oké:
  1. int main() {
  2. ...
  3.                 TCCR1B |= (1<<CS10)|(1<<CS12);  //Prescaler = FCPU/1024
  4.                 TIMSK |= (1<<TOIE1); //Enable Overflow Interrupt Enable
  5.                 TCNT1 = 0; //Initialize Counter
  6.  
  7.                 sei();
  8. ...
  9. }
  10.  
  11. ISR(TIMER1_OVF_vect) {
  12. //Doing the job
  13. }


Hol rontottam el? Mit kell még állítani hozzá? Mi kerülte el a figyelmemet? A 8-bites timert már használom másra, az működik is hibátlanul.

Köszönöm!
(#) Hooligan01 válasza karika200 hozzászólására (») Ápr 30, 2013 /
 
És mi nem oké?
(#) karika200 válasza Hooligan01 hozzászólására (») Ápr 30, 2013 /
 
Nem fut le az overflow megszakítás.

Ok, jó ez, türelmetlen voltam csak és elszámoltam az időzítést..
A hozzászólás módosítva: Ápr 30, 2013
(#) zombee válasza karika200 hozzászólására (») Ápr 30, 2013 /
 
Most akkor lefut vagy nem? Hogy is érzékeled a lefutást? Valamilyen változóval? Volatile volt már?
(#) kokike28 hozzászólása Máj 2, 2013 /
 
Sziasztok újvagyok még az AVR témába de kiszeretném próbálni énis és lenne pár kérdésem ezzel a kapcsolási rajzal.

1. A kapcsolásal ahogy a képen is látható belehet-e égetni a programot az ATMEGA8-ba vagy kell-e még valami hozzá ?

2. A JP2 és JP3 mire jók ?

3. Az X2 az egy csatlakozót jelöl vagy kapcsolót ?

Köszönöm a válaszokat.
(#) karika200 válasza zombee hozzászólására (») Máj 2, 2013 /
 
Szia!

Lefut, csak 8-bitesként kezeltem az időzítés számításánál a 16-bites timert. Figyelmetlenség...

A lefutást pedig úgy érzékelem, hogy van egy beep() rutinom, ami a már más okból az MCU-ra kapcsolt hangszórón hangokat generál. Én pedig vártam, a csippanást. Köszönöm a hozzászólást!
(#) karika200 válasza kokike28 hozzászólására (») Máj 2, 2013 /
 
Szia!

Még én is elég új vagyok az AVR világában, de véleményem szerint(ha tévednék, javítson ki valaki) természetesen tudod vele programozni az ATmega8-at. De, ha van párhuzamos port a gépeden, sokkal egyszerűbb egy STK200 programozót építeni. Én is először USB-s programozót akartam, de egyszerűbb volt végül pár ellenálláson át csatlakoztatni a mikrovezérlőt a géphez. De mondom, ennek feltétele a meglévő párhuzamos port! Illetve az általad kiszemelt kapcsoláshoz már szükség van eleve egy felprogramozott ATmega8-ra.

Az X2 egy csatlakozó, amire majd a programozandó MCU-t kötöd. Bekötése így néz ki..

A két jumperre is van elgondolásom, de abban nem vagyok biztos, így azt majd más megmondja pontosan.
(#) csabeszq válasza karika200 hozzászólására (») Máj 2, 2013 / 1
 
Kezdőként én megvettem egy működőképes avrisp-mkii programozót.
Nem volt olcsó, egy tizesért adták, de legalább ezzel nem kellett szívni.

Kicsit olyan, mint mikor meg szeretnél tanulni autót vezetni és veszel egy 20 éves Zsigulit. Szerintem tanulásnál nem biztos, hogy a spórolással kell kezdeni.
(#) kokike28 válasza karika200 hozzászólására (») Máj 2, 2013 /
 
Igen értelek, akkor ez nekem nem lenne jó mivel szükség lenne 1 eleve felprogramozott ATMEGA8 ra, de az sajnos nincs, esetleg tudnál-e ajánlani 1 ATMEGA8 programozó rajzot, de soros vagy USB portal, mert párhuzamos port nincs a gépemen.

Köszi elöre is.
(#) karika200 válasza kokike28 hozzászólására (») Máj 2, 2013 /
 
Szia!

Ajánlani sajnos nem tudok, nincs velük tapasztalatom. Itt az oldalon van egy AVR doper a kapcsolásoknál, de ahhoz is kell felprogramozott AVR, ahogy szinte az összes serial/usb megoldáshoz. Keress valakit, aki felprogramoz neked egy ATmega8-at, talán ez a legjárhatóbb út. Szívesen segítek ez ügyben én is, bár én Szekszárdon vagyok.
(#) zombee válasza karika200 hozzászólására (») Máj 3, 2013 /
 
Soros portra a tuxgraphics-os STK500_v2 ajánlott, az FT-232-t egyszerűen lecseréled MAX-232-re,
persze az IC környezetét is, lényeg hogy onnan is Rx és Tx jöjjön ki. Vagy AVR-Doper(lásd: cikkek).
Mindkettő hátránya hogy kell egy felprogramozott ATMega8.
A hozzászólás módosítva: Máj 3, 2013
(#) proba válasza kokike28 hozzászólására (») Máj 3, 2013 /
 
Ebay-en komplett készen 4$ sincs postával. Hátrány várni kell rá egy hónapot.
(#) zombee válasza proba hozzászólására (») Máj 4, 2013 /
 
USBASP-re nem is érdemes se pénzt, se időt fordítani, egy rakat lócitrom.
A Doper sem hibátlan de ezerszer normálisabb.
(#) karika200 hozzászólása Máj 4, 2013 /
 
Egy ISD17120-at hajtok egy ATmega8-as MCU-val. Működik és szépen a dolog, de a az ISD17120 ready állapotát nem tudom lekérdezni. Ez az ISD17120 egy hangtároló IC, tud rögzíteni 12kHz mintavételezés mellett 80 másodpercet. Itt egy minta bekötés.

Ahogy látszik, a ready lábat tápfeszre kell rakni és Ő majd leveszi GND-re ha épp nem ér rá. Ez nálam úgy néz ki, hogy az ATmega8 egyik megszakítás lábára van akasztva, a lábon 1-es van. Amikor az IC rögzít vagy lejátszik akkor látom is a feszültség változást, de nem megy le 0V-ig hanem a +5V-ból csak +3,8V lesz. Mi lehet ennek az oka?
(#) Hooligan01 válasza karika200 hozzászólására (») Máj 4, 2013 /
 
Mekkora felhúzó ellenállást használsz?
(#) skimen hozzászólása Máj 4, 2013 /
 
Sziasztok!

Mi lehet ezzel a baj?
A függvény egy karaktertömbbe másolja egy másdik tömb bizonyos részeit:

unsigned char kiiratas[]= " ";
unsigned char sz_kuldes[]="Adatok masolasa ";



void memcopy (unsigned char *hova, int m, int length,unsigned char *mit ){
unsigned short j=0;
while (j!= length){
hova[m+j]=mit[j];
j++;
}
}


memcopy(kiiratas,16,16,sz_kuldes);

megcsinálja, de az alábbi hibaüzenetet dobja

warning passing argument 1 of 'memcopy' discards qualifiers from pointer target type

Köszönöm!
(#) skimen válasza skimen hozzászólására (») Máj 4, 2013 /
 
A kiiratas[] egy 32 karakter hosszú üres tömb.
(#) karika200 válasza Hooligan01 hozzászólására (») Máj 4, 2013 /
 
A felhúzó ellenállás 100kOhm. Kevés lehet?
(#) TavIR-AVR válasza karika200 hozzászólására (») Máj 4, 2013 /
 
Nem kevés. Sok!
10k vagy az alatt....
(#) karika200 válasza TavIR-AVR hozzászólására (») Máj 4, 2013 /
 
Köszönöm, megpróbálom. Először azt hiszem egy 10k-s akadt a kezembe, azzal próbáltam de nem volt jó. Megpróbálom egy 5kOhmossal is.
(#) karika200 válasza karika200 hozzászólására (») Máj 4, 2013 /
 
Nos, 5kOhmal ugyan az a jelenség. Lehet már a bekötés rossz, de nem hiszem. Következő a felállás:

AVR INT1-------------------ISD ready
|
5kOhm
|
+5V
Következő: »»   533 / 840
Bejelentkezés

Belépés

Hirdetés
XDT.hu
Az oldalon sütiket használunk a helyes működéshez. Bővebb információt az adatvédelmi szabályzatban olvashatsz. Megértettem