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   56 / 840
(#) Csaplar hozzászólása Máj 16, 2008 /
 
Sziasztok!

Fejlesztek egy kis készüléket, amibe meg szeretném azt oldani, ha elmegy az áram (12v DC), akkor akksiról menjen tovább, ha visszajön, akkor meg töltse fel a telepet.

Tudnátok benne segíteni?
A Chipcadnél láttam telep töltős cuccokat, de nem igazán tudom mi micsoda és hogyan kellene... Azt sem tudom milyen akksiban kellene gondolkozni...

Előre is köszi!

üdv.:
Zoli
(#) tibi0531 válasza Csaplar hozzászólására (») Máj 16, 2008 /
 
Az Atmel oldalán van olyan application note, amely azzal foglalkozik, hogy hogyan lehet különböző típusú akkumlátorok töltését megoldani AVR-el. Tartoznak hozzá kész rutinok is C nyelven.
(#) fecus hozzászólása Máj 16, 2008 /
 
Mi történik az ATinY25-ben ha mindkét timer it-jét engedélyezem és az egyik it akkor jön meg amikor a másik it rutin fut? A szimulátor szerint semmi, sohasem fut le a közben érkezett it rutinja. Nem lehet, hogy amikor az aktuális rutin végzett akkor elfogadja a másik függőben lévő it kérést és végrehajtsa?
(#) Norberto válasza fecus hozzászólására (») Máj 17, 2008 /
 
Na, ezt figyuzz, mit találtam neked (már csak értelmezni kell):

Idézet:
When an interrupt occurs, the Global Interrupt Enable I-bit is cleared and all interrupts are disabled. But the user in the software can write logic one to the I-bit to enable nested interrupts. All enabled interrupts can then interrupt the current interrupt routine. The I-bit is automatically set when a Return from Interrupt instruction – RETI – is executed.”


Plusz még csatoltam egy képet is! Ezeket az adatlapból olvastam ki mind egy szálig!
(#) TavIR-AVR válasza fecus hozzászólására (») Máj 17, 2008 /
 
Sorbaállítás van.....
Amint lefutott a Timer1 INT, visszalép a főprogramba, 1 v. 2 utasítás lefut abból, majd megy a Timer2 INTre.

Az ami a angolban itt másolva lett:
INT alatt a INT figyelés tiltva van. Ezt az INT figyeléshez engedélyezni kell! (bar ilyennel nem talalkoztam. Igaz T45 ilyen jellegű programozása nálam kimaradt, de a M8/M16/128 esetén, Bascommal pogramozva a sorbaállítás történt meg. Viszont ha többször jött INT alatt a másik INTre való hivatkozás, csak 1x lett utána lefutva (nem számláló, hanem jelzőbit van az INT lefutásra!
(#) Prinner hozzászólása Máj 17, 2008 /
 
Sziasztok!
Használ valaki cv avr fordítót? Az a problémám, hogy nem sikerült használnom a flash pointerezést. Egy egyszerű dolgot akartam írni, ekkor merült fel a probléma: olyan függvényt kell írni, melynek egyik bemeneti paramétere string pl. így:
  1. //globális változó deklaráció
  2. flash char format_string[4];
  3. //függvény deklaráció
  4. void function ( flash const char format_string );
  5.  
  6. //és így meghívni
  7. function( "text" );
(#) fecus válasza Norberto hozzászólására (») Máj 18, 2008 /
 
Köszi. Ezt én is megtaláltam, de nem tudom szimulálni. Az AVRStudio nem hajtja végre a második it-t. Lehet, hogy csak az AVR Studio4 nem tudja. Ha a proci mégiscsak így csinálja akkor, egy kicsit többször kell égetnem amíg jó lesz a progi.
(#) fecus válasza TavIR-AVR hozzászólására (») Máj 18, 2008 /
 
Nem lehet, hogy csak az állapotvezérelt it-kre igaz, és az eseményvezérelt elveszik? De tényleg lehet, hogy csak az AVRStudio szívat.
(#) fecus hozzászólása Máj 18, 2008 /
 
Köszi mindenkinek. Én szívattam magam. Összekevertem a két számláló overflow egedélyező bitjét. Most már minden úgy megy mint a kisangyal. Azért Ti is kellettetek hozzá!
(#) Balczer hozzászólása Máj 23, 2008 /
 
Üdv mindenkinek!
Nemrég kezdtem el AVR-ezni (assembly), sajnos nem tiszta minden. Atmega88-al szeretnék vezérelni egy hangerőszabályzót (cirrus cs3310), nem tudom hogy kell sorosan adatokat átvinni, értem a soros átvitelt, de nem tudom hogy kell ezt megvalósítani. Ha valakinek van evvel tapasztalata assemblyben, megköszönném, ha megosztaná velem. Egyébként a program párhuzamosan már működik. Ja és a hangerőszabályzó 256 lépéses, ha ez számít valamit, és kompatibilis a PGA-kkal.
(#) Norberto válasza Balczer hozzászólására (») Máj 23, 2008 /
 
Elsőként azt tudom ajánlani, hogy az ATMEGA88 és a Cirrus IC adatlapjainak megfelelő hasábjait bújjad hosszú perceken és órákon keresztül.

Ami az AVR/programozási oldalt illeti, nem kell mást csinálni, mint megfelelő flag-biteket beállítgatni, regisztereket írni/olvasni, ilyesmik. Semmi extra.
(#) Balczer hozzászólása Máj 23, 2008 /
 
Bújtam én mindkettőt rengeteget, pont az érdekelne, hogy milyen flag-biteket kell állítgatni, meg milyen regisztereket írni/olvasni. erről nem találok semmit sehol
(#) mazso1988 hozzászólása Máj 23, 2008 /
 
Sziasztok
én mosz kezdek ismerkedni az AVR-el és azt szeretném megtudni melyik programmal próbálkozzak AVR-t felprogramozi talán a (Bascommal) vagy elsőre valami egyszerűbbel?
Üdv
(#) TavIR-AVR válasza mazso1988 hozzászólására (») Máj 23, 2008 /
 
Én - elfogultan - a bascomot javaslom STK200 programozóval. Illetve STK500 esetén a AVRStudio-t.
(#) mazso1988 hozzászólása Máj 23, 2008 /
 
Szia
épp az előbb próbáltam egy már megirt programot futtatni bascommal be is állítottam a chip tipusát külső kvar frekvenciáját próbáltam irás elött leszimulálni és egyfoltában hibaüzenetet irt ki winavr-el meg tökéletes volt.esetleg valami tanácsot a hiba elhárjtására ha kell leirom a hibaüzit is.
Üdv Feri
(#) TavIR-AVR válasza mazso1988 hozzászólására (») Máj 23, 2008 /
 
A WINAVR C nyelvet _fordít_, a Bascom _basicot_.
Programozás alatt a lefordított HEX/BIN chipbe égetését szokták érteni.

Fordítók:
C: IAR C, WinAVR, GCC
Basic: FastAVR, Bascom, Microbasic
ASM: AVRSTUDIO
Pascal: Micropascal

Beégető/programozó:
PonyProg, AVRStudio (beépített prog), AVRDuDe, AVROSP, AVRProg, Bascom (bépített programozó)

Persze van több is, ezek a leggyakoribbak.
(#) mazso1988 hozzászólása Máj 24, 2008 /
 
Sziasztok
azt szeretném kérdezni hogy a WinAVR támogatja-e a Siprog soros porti programozót vagy inkább az STK200 használjam.
Üdv
(#) tibi0531 válasza mazso1988 hozzászólására (») Máj 24, 2008 /
 
Az AVRdude tudja kezelni, csak fel kell konfigurálni a makefile-ben
(#) mazso1988 hozzászólása Máj 24, 2008 /
 
Szia
tudom ez hülye kérdés de ha a meglévő ihexfile stk200 iródot akkor azt csak azzal lehet felprogramozni
Üdv
(#) mazso1988 hozzászólása Máj 24, 2008 /
 
Sziasztok az SP12 AZ siprog programozó akar lenni?
Üdv
(#) TavIR-AVR válasza mazso1988 hozzászólására (») Máj 25, 2008 /
 
Nem, A HEX az csak a lefordított program, _bármivel_ beégethető.

A fordítóprogram-rész nem is tudja, hogy milyen programozó/égetőt használsz....
(#) mazso1988 hozzászólása Máj 25, 2008 /
 
Szia
köszi.
(#) PHARO hozzászólása Jún 3, 2008 /
 
Sziasztok!


Valószínű,hogy az órajelet sikerült elállítanom a Bascom-ban amikor a lock and fuse bit menüpont alatt állítottam és rányomtam a write Fs-re.
Vagy a reset lábat sikerült letiltanom valahogy.
Most azt írja,hogy "could not identify chip whit ID: FFFFFF"
Hogy lehet újra életre kelteni az atmega8-at?

Előre is köszönöm.
(#) mazso1988 válasza PHARO hozzászólására (») Jún 3, 2008 /
 
Szia
én is most ismerkedek bővebben az AVR-el és olvastam a Topi féle Segédórajel generátort ami pont arra készült hogy mikor kizárjuk magunkat a programozásbol akkor külső oszcillátor segítségével ujra programozási módba tudunk lépni szerintem kezdésnek olvasd át amíg valaki aki konkrét magyarázatot tud adni nem ir hátha megoldódik.
sok sikert.
egyébként mivel programoznál talán stk200?
Üdv
(#) PHARO válasza mazso1988 hozzászólására (») Jún 3, 2008 /
 
Köszi,átnézem.
(#) PHARO válasza mazso1988 hozzászólására (») Jún 3, 2008 /
 
Megjavult vele.
(#) mazso1988 válasza PHARO hozzászólására (») Jún 4, 2008 /
 
Szia
ennek örülök.
(#) wg_kezdo hozzászólása Jún 4, 2008 /
 
AVR perifériákat szeretnék gyártani ehhez kéne nekem egy kis segítség az induláshoz.

Olvasgattam az itt megadott oldalakat, de valahogy nem találtam meg azt, hogy melyik AVR procinak milyen portjai vannak így inkább feltenném itt a kérdést (gondolom a gyakorlottnak 1 perc)..

Szóval a perifériákat kb úgy akarom elkészíteni, hogy csinálok egy általános tokot az AVR-nek amire rá lehet kötni 12V-ot mondjuk egy akksiból.
Ez látná el táppal magát az AVR-t és le lehetne vezetni róla a perifériákhoz is tápot, ha kell.

A nyákon lenne valamennyi csatlakozó "csoportosítva".
Pl lenne 1 olyan, hogy kefés motor csatlakozó. Itt lehet tápot "venni" a motornak és egy vezérlő jelet amit a periféria (motor+hozzá egy kis áramkör) feldolgoz és ennek megfelelően működik.
Ezeket természetesen dróttal kötném össze, hogy rugalmas legyen a "rendszer".

Egy másik példa egy kapcsoló: ez egy sima 2 tüskés csatlakozó ami egy portot állítgat 0 vagy 1-re.

Fényérzékelő is hasonlóképpen és itt jön a kérdésem lényege:

Első körben egy A/D átalakítóra gondoltam, és így kapná meg az AVR azt, hogy "mennyire" van fény (nem pontos mértékegységben ez csak elvi működés). Viszont mivel az átalakítók drágák így arra jutottam, hogy van-e és ha igen melyik típusnak analóg bemenete?

A kérdés azért is lényeges mivel ez dönti el, hogy AVR lesz vagy PIC.

Szerintetek megvalósítható az amit leírtam?
(#) Donnie válasza wg_kezdo hozzászólására (») Jún 4, 2008 /
 
Szia!

Az AVR hihetetlenül rugalmas jószág, én is ezért döntöttem emellett a PIC-kel szemben. Azonkívül rém egyszerű elindulni vele, meg programozgatni.

Fényérzékelőt szerintem ne bonyolítsd túl... Sorbakötött ütközőellenállás (villámfény és hasonlók ellen), és máris használhatod rá a beépített A/D konvertert is (közepes/nagyobb ATMEL-eken megtalálod).

Az A/D-vel valószínűleg a többi ötletedben is előrébb jutsz. A lábak benne vannak a datasheet-ekben, nem is túl veszélyes angolsággal.
Ha átböngészted, és elakadsz, segítünk!

Üdv:

Donnie
(#) TavIR-AVR válasza wg_kezdo hozzászólására (») Jún 4, 2008 /
 
Az AVRek sokat tudnak. De a legegyszerűbb:
http://www.atmel.com/dyn/products/param_table.asp?family_id=607&Ord...on=ASC

AVR Parametric table.

Jó válogatást!
Következő: »»   56 / 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