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   304 / 840
(#) Topi válasza luxmanpower hozzászólására (») Jan 30, 2011 /
 
Igen, én is erre gondoltam. Mivel ez az AVR Studio.
Más AVR Studio nem nagyon van...
(#) sgt válasza Reggie hozzászólására (») Jan 30, 2011 /
 
Igen tudom . Ismerősömmel projektmunkának egy hordozható digitális oszcilloszkópot szeretnénk csinálni PIC32-vel (kövezés ). Elkérte a próbapanelt, és rendszeresen futott bele olyan hibába, hogy egy program részletet nem fordított le, emiatt értelemszerűen nem működött. Többször is előfordult ez. Tegnap előtt jött rá miért csinálta ezt. Ugye PIC32-nek elég sok általános célú regisztere van, és csak nagy ritkán használ ramot (ram használat lassítja a program lefutását), és az adott program résznél elfogyottak a szabad regiszterek, és nem tette ki ram-ba. Megoldás annyi volt hogy a fordítót rá kellett kényszeríteni hogy tegye ki ram-ba.
(#) trudnai válasza sgt hozzászólására (») Jan 30, 2011 /
 
Nem akarom a kedved szegni, de jomagam inkabb PIC-es volnek (ezt itt mar talan tobbszor is megtapasztalhattak). Azonban legjobb tudomasom szerint az Atmel Cortex alapu MCU-i jobbak a PIC32-nel. Talan egyedul a port bit billegtetesben gyorsabb az Atmeleknel.
(#) Reggie válasza sgt hozzászólására (») Jan 31, 2011 /
 
Hat szerencsere az AVR forditoval nincsenek ilyen komoly problemak (eleve azert mert a gcc-n alapszik ami mar egesz jol kiforrott), ez amit emlitettem is hamar megoldodott, mert egy megelozo patch vitte bele veletlenul. Gyorsan is korrigaltak.
(#) Reggie válasza trudnai hozzászólására (») Jan 31, 2011 /
 
Az AVR32 szeria is eleg jo, bar nehezen osszehasonlithato a PIC32-vel mivel kulonbozo a periferia keszlete es architekturaja. AVR32-nek helybol az az elonye, hogy C nyelvre optimalisabb mint a PIC32. (a 8 bites csaladnal is ez volt a helyzet).
(#) bzolitb hozzászólása Feb 1, 2011 /
 
Sziasztok!

Vásároltam avr isp-t a hestore-nál(Topi féle), feltelepítettem, működött sokáig, legközelebbi használatnál bedugom usb-t, és a pc azt írja a felugró buborékban, hogy az usb-s eszközt nem lehet felismerni. Aztán megjavult az eszköz. Most újra csinálja, valakinek ötlete, hogy mitől van ez? És nem forrasztási hiba, ugyanis, 2db ilyen programozóm is van, és mind a kettőnél fent áll a hibajelenség, szóval pc oldali a gond. Csináltam egy egy szkrínsotot, amit csatoltam. Köszönöm a segítséget.

isp_error.jpg
    
(#) Topi válasza bzolitb hozzászólására (») Feb 1, 2011 /
 
Akkor hogy gép USB-t is kizárjuk, próbáld ki másik számítógépen.
Mert ez a megy egy ideig, aztán nem, majd megint, egyértelműen kontakt hibára utaló jelenség.

Ami nem feltétlen fizikai forrasztás gond, lehet hogy a kristály sérült meg belül mechanikailag.
(#) Daxora hozzászólása Feb 1, 2011 /
 
Sziasztok!

AVR Studioval szeretnék C-ben programozni, de elég régen tanultam, meg nem tudom hogy 1az1ben egyeznek-e.
Tud valaki olyan oldalt, ahol össze vannak gyűjtve a parancsok egy helyre?

Előre is köszi!
(#) covek válasza Topi hozzászólására (») Feb 1, 2011 /
 
Idézet:
„Ami nem feltétlen fizikai forrasztás gond, lehet hogy a kristály sérült meg belül mechanikailag.”


Egyszerre két egyforma programozón sérült volna a kristály?
Vagy egyébprogramozó oldali hiba lenne? Szerintem inkább a gépen lévő USB csatlakozó lehet a ludas. Egy másik USB porton, másik gépben kipróbálva talán tényleg kiszűrhető lenne a hiba.
(#) Topi válasza covek hozzászólására (») Feb 1, 2011 /
 
Bármennyire is furcsa, hidd el hogy láttam én már olyat, hogy a delikvens olyan iszonyatos lábhajlítgatással és feszítéssel forrasztotta be a kristályt egy másik áramkörbe, hogy szép lassan meghaltak a kristályok.

Sőőt.. Széria gyártásban is tudom ígérni neked hogy sűrűn sérülnek meg a kristályok beforrasztáskor. (Sűrűn = 100-ból 1-2)
A kristályon belüli tartókonzolt csak az átvezetésnél lévő műgyanta rögzíti.
(#) covek válasza Topi hozzászólására (») Feb 1, 2011 /
 
Ok. Nekem nincs ennyi tapasztalatom, csak nállam gyanusnak tűnne, hogy egyszerre 2 programozó is hasonlóan viselkedik.
(#) Topi válasza covek hozzászólására (») Feb 1, 2011 /
 
Ettől függetlenül igazad van... Erre az esély szinte 0
De nem lehetetlen!
(#) szepnorbee hozzászólása Feb 1, 2011 /
 
Sziasztok! BASCOM-ban kellene egy kis help. Hgoyan lehetne leprogramozni azt, hogy pl. egy led addig égjen míg tartok egy gombot, de X idő elteltével mindenképp elaludjon (ha nyomva tartom is). Próbálkoztam már de sajna sikertelenül. Az első fele még megy is de az időzítős része nem. (Timert használnék) Attiny45. A cikkek között levő autós belsőtér világítás vezérlőjének AVR-es változata lenne a cél gyakorlás szempontjából. Köszi minden segítséget!
(#) TavIR-AVR válasza szepnorbee hozzászólására (») Feb 1, 2011 /
 
  1. szamlalo =0
  2. do
  3. if gombnyomva=1 then
  4.     szamlalo=szamlalo +1
  5.     if szamlalo < kritikus then
  6.             set LED
  7.      else    
  8.             reset LED
  9.     endif
  10.     if szamlalo>max then szamlalo=szamlalo-1
  11. endif
  12. if gombnyomva=0 then
  13.    reset LED
  14.    szamlalo=0
  15. endif
  16. waitms 10
  17. loop


Amugy a TavIR oldalon lesd meg Sirleslie versenymunkáját, ilyet készített. Illetve ugyanez van az atw-s oldalán is fenn....
(#) Spumifater hozzászólása Feb 1, 2011 1 /
 
Sziasztok! ***
(#) szepnorbee válasza TavIR-AVR hozzászólására (») Feb 1, 2011 /
 
Isten vagy Robert! :yes: Már keresem is!
(#) Spumifater válasza (») Feb 1, 2011 /
 
Bocs!

Tudomásul vettem! De nem kéregetni akartam!
Sorry!
(#) zolee1209 hozzászólása Feb 1, 2011 /
 
Üdv!

A következőre keresem a választ. Van-e a 8bit-es családban olyan példány, aminek az I2C perifériája biztonságosan tudja az 1MHz-es clock jelet? Mega32 400kHz-ig van "hitelesítve", menne is 1MHz-en, de a tápra ekkor nagyon érzékeny, ahogy észre vettem. Érdekes módon PC USB portjáról biztonságosabban tudom üzemelni a céláramkört, mint sima disszipatív táppal. A tiny sorozatban található USI lehet, hogy megfelelne, ugyanis arról azt szűrtem le, hogy a maximális órajel frekvenciája akkora lehet, amekkorát a rendszerórajelből, illetve előosztásokból ki lehet hozni. Sajnos tiny példányom nincsen, hogy ezt tesztelni tudjam, ugyanakkor a végső helyén nem is tudnám felhasználni, mivel lesz egy SPI eszközöm is az áramkörben.
Próbáltam az Atmel honlapján a parametrikus táblázat alapján szűrni, de ott csak annyit mutat, hogy van-e I2C periféria, vagy nincs, illetve hogy csak USI-ként érhető el.
Néztem még ATmega324-et, ami tud 20MHz-es rendszerórajelet, de ez is 400kHz-es I2C órajelfrekvenciával van megadva. Aki régebb óta foglalkozik AVR-ekkel, esetleg tudna informálni arról, hogy létezik-e ebben a családban olyan típus, ami garantáltan tudja az 1MHz-es I2C órajelet?
A cél eszköz adatlapján így nevezik ezt a módot: FAST-MODE PLUS I2C
(#) Andre90 hozzászólása Feb 2, 2011 /
 
Szervusztok!

A következő lenne a kérdésem: a Topi féle AVR-ISP alkalmas-e minden további átalakítás nélkül a TXD és RXD lábak bekötése után a PC és egy mikrokontroller közötti kommunikációra? Ezt értem úgy, hogy felprogramozás után illesztőként felhasználható-e az USB és a mikrokontroller között? SZeretnék kommunikálni a PC és a mikrokontroller között, és érdekel, hogy kell-e beszereznem külön illesztőt, vagy ez is megfelel a célnak.
A válaszaitokat előre is köszönöm.

Üdv: André
(#) mario1111 hozzászólása Feb 2, 2011 /
 
Üdv!

Olyan problémám van, hogy egy atmega 8-al szeretném 8 akku feszültségét mérni, de szükségem lenne a TWI-re is. A gond,h a TWI ugyanarra a lábra van vezetve, mint az 4-es és 5-ös AD. Van valami megoldás, azon kívül,h másik proci?

Márió
(#) bzolitb válasza mario1111 hozzászólására (») Feb 2, 2011 /
 
szia, nekem első ötletem az lenne, hogy külső A/D ic-t használsz, amit spi vagy valami hasonló interfacen tudsz olvasni.
(#) TavIR-AVR válasza mario1111 hozzászólására (») Feb 2, 2011 /
 
Külső analóg multiplexer? CD4066 ha jól emlékszem.
ADC-n a I2C lábak csak 8 bitesek! (M8 adatlap!)

M8 esetén (SMD) megoldás lehet még, hogy SW I2C-t használsz, az kötetlen lábon is lehet. Pl. a Bascomban ez az alapértelmezett és a HW-eset kell $lib-l fordítani.
C-ben passzolom.
(#) mario1111 válasza bzolitb hozzászólására (») Feb 2, 2011 /
 
Úgy néz ki mégis átköltözik a dolog egy Atmega16-osba. Annyival nem drágább. Esetleg valaki tud ajánlani olyan helyet ahol relatíve olcsón lehet beszerezni őket? Néztem 128-ast de 3 E fölött van.

Márió
(#) TavIR-AVR válasza zolee1209 hozzászólására (») Feb 2, 2011 /
 
Hülye kérdés: Ki kell használni az 1MHz-s I2C-t? Igényli az eszköz ill az alkalmazás?

USI felprogramozása necces.

B tipp: SW alapú I2C? A forráskódjába belelesve a periódusidő fele min: 1.3 us (~400 kHz). Ha pofátlan vagy, akkor a lib-ben a
  1. _i2c_hp_delay:
  2. @genus(___I2CDELAY)
  3. Ret


kicserél
  1. _i2c_hp_delay:
  2. ;@genus(___I2CDELAY)
  3. nop
  4. nop
  5. nop
  6. Ret


részre.
A NOP-k számával állítod be a sebességet a kvarc függvényében. A @genius(1) kb. 1.3 usec-t jelent.
(#) covek válasza mario1111 hozzászólására (») Feb 2, 2011 /
 
Atmega16 elég jó áron van itt.
(#) zolee1209 válasza TavIR-AVR hozzászólására (») Feb 2, 2011 /
 
Szia!
Igen, szükségem lenne az 1MHz-re... Az I2C slave tudja ezt a sebességet, és az alkalmazásban ezt ki is kell(ene) használnom...
(#) luxmanpower hozzászólása Feb 2, 2011 /
 
Hello! Lcd-re szeretnék adatokat kiíratni. Normál számokat az itoa() paranccsal oldom meg. Viszont most hex számot szeretnék kiíratni. Van valami lehetőség a sprintf függvényen kívül erre? Köszi!
(#) bzolitb válasza Topi hozzászólására (») Feb 2, 2011 /
 
Hello,

Kiakartam próbálni másik gépen az isp-met, hogy az usb-vel van gond, vagy a kristállyal, de a másik gép win7-es, és miután rádugtam, nem is észlelte, h rádugtam bármit is. win 7-en van valami spéci telepítési eljárás, vagy azon nem is működik egyáltalán?
(#) huba válasza bzolitb hozzászólására (») Feb 2, 2011 /
 
A win7 egy (cenzúra). Zenner diódák minősége miatt volt egy dopperem, ami xp-alatt ment, win7 alatt a francnak se. Cseréltem zenereket és lőn csoda ment ott is. Szóval a win7 egy kiismerhetetlen állatfaj. De azért felismerni fel illett volna hogy valamit rádugtál.
(#) kovacsj válasza huba hozzászólására (») Feb 2, 2011 /
 
Nekem sem ment Win7 alatt sem az STK500, sem a JTAG ICE MKII. Visszaraktam az XP-t és megy szépen mindkettő.
Következő: »»   304 / 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