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   475 / 840
(#) kurosaki válasza Csépe Zoltán hozzászólására (») Szept 4, 2012 /
 
Azzal is egyenletesen csipog mar 5 perce
(#) zombee válasza csabeszq hozzászólására (») Szept 4, 2012 /
 
4 bemeneten us pontosság? Tervnek nem rossz, de kezdőknek nem ajánlott ilyenbe belefogni.
Először is, mire kell a flash? Arra számítasz hogy bufferelsz rajta? Vagy azzal "olvasod be" a 4 bitet minden us-nél? Felejtsd el!
Ha már egyszer PC-re csatlakozol akkor élőben is működhet a dolog. Egy PC-n meg nem gond a tárhely, zsinórban kapod a memóriát, szó nélkül bufferel neked, stb.

Én ezt a módszert ajánlom:
Minden us-ben olvasd be a 4 bemenetet, ami lehetőleg ugyanazon porton legyen egymás mellett, nem utolsó dolog ha ez a csoport PORTX.3:0 vagy PORTX.7:4 bitek csoportja.
Ha változás van az előző értékhez képest, küldd ki USART-on(időkód, bemenetek állapota).
Nem árt pufferelni a kiküldendő adatokat. Ekkor nem az USART-ra írsz hanem egy ringbufferbe. Ezt az USART interruptja figyeli(UDRE) és "fogyasztja".
Hacsak nem nagyfrekis adatvonalakat(pl. Ethernet) figyelsz akkor ez működni fog! A PC program bonyolultabb lesz: meg kell jeleníteni az időkódok alapján a grafikont, triggerre ugrani, görgetni, adatokat elemezni, stb.

FT232, MAX232, MCP2200 - mindhárom közvetlenül ráköthető az AVR-re, mert az UART része TTL jelszinteket használ.
A hozzászólás módosítva: Szept 4, 2012
(#) csabeszq válasza zombee hozzászólására (») Szept 4, 2012 /
 
Amit javasolsz, ahhoz mindenképpen USB kell. Az átlag mezei sorosport max 115.200-on darál, ami ha széttömörítem a kimenetet (1 byte 1 esemény), akkor is 11 kHz-s mintavétig jó.

Az MPC2200 1mbit/s, az FT232 3mbit/s (mindkettőből kapható SO).

Ami miatt nem repesek, hogy SO-t kell forrasztani, huszon akárhány lábat és még nem próbáltam. Ha van tapasztalatotok mondjátok el.
A hozzászólás módosítva: Szept 4, 2012
(#) csabeszq hozzászólása Szept 4, 2012 /
 
Lehet, hogy veszek egy Avr-duino-t, hogy ne kelljen hülyéskedni.

7300 Ft körül van, de én sem tudnám 4000 alatt megépíteni és elcseszek vele egy csomó időt.

Abban minden van, ami kell.
(#) zolee1209 válasza Axel hozzászólására (») Szept 4, 2012 / 1
 
R2 betöltése után is történik címnövelés, de egyébként ahogy írtad.
(#) kurosaki válasza csabeszq hozzászólására (») Szept 5, 2012 /
 
Hali ahogy nezem ez a Duino hasonlit az en USBASP emre csak ez sokkal nagyobb az én eszközöm 4 Dollár volt sok sikert hozzá.
(#) zombee válasza zombee hozzászólására (») Szept 5, 2012 /
 
A mintavétel attól még lehet 1MHz, csak a jelek frekije - átlagban - nem lehet nagyobb 11kHz-nél...
Az átlag mezei sorosport, hidd el nekem hogy még jobban szuperál(max:921kbps) mint BÁRMELYIK olcsó USB-átalakító. Ugyanis az USB-átalakítók nem tudják pontosan a baud frekiket, ezért például az MCP2200-val is csak 230kbps-t sikerült elérnem.
FT232-vel sem sikerült jobb eredményt elérni, e tekintetben nem lehet jobb. Ha van SOIC tokban is FTDI, rendelj nekem is, de kétlem hogy találsz...
(#) sikolymester válasza kurosaki hozzászólására (») Szept 5, 2012 /
 
A kettő maximum köszönő viszonyban van egymással. Az arduino jó lesz neki.
(#) kurosaki hozzászólása Szept 5, 2012 /
 
SZiasztok.
Nagy nehezen sikerült megoldani egy két dolgot a projectemmel.De lenne egy kérdésem ha kiszeretném iratni hogy pl: 45 MP és számol vissza fele ezt, hogy tudnám megoldani? 7 segmentes kijelzövel meg lehet?2 DB ra gondoltam es valszeg egy Attiny13.Vagy a Segment kijelzöhöz más kel?
(#) zombee válasza kurosaki hozzászólására (») Szept 5, 2012 /
 
ATTiny13 kicsi lesz hozzá, ha szegmens-kijelzőt akarsz használni. Gondolj bele: a 7 szegmensnek kell hét portláb, plusz kettő a számjegyek kapcsolgatásához.
Minimum egy ATTiny2313, azon van 17 szabad láb. Nem kell 2 kijelzőt venned, elég egy darab 2-számjegyeset(2 digites). A legtöbb ilyenen közösítve van a 7(+1) szegmens.
(#) kurosaki válasza zombee hozzászólására (») Szept 5, 2012 /
 
Értem.Szoval akkor meg a Attiny45 is kicsi hozza aszittem eleg neki 1 max 2 port lab :////
(#) zombee válasza kurosaki hozzászólására (») Szept 5, 2012 /
 
Hát ez nem nyert hangszórót!

A 7 szegmenses kijelzők lényege hogy minden számjegyben van 7 LED, ezek a szegmensek. Egyes típusoknál pont is van, ez a nyolcadik szegmens.
A LED-eknek egyik elektródáját közösítik minden szegmensben, ez alapján hívjuk közös anódos vagy közös katódosnak. A közös anódos a gyakoribb.
Ha egy kijelző több számjegyet tartalmaz, egy részüknél megduplázódik a lábszám, de a legtöbb esetben közösítik a LED-ek másik elektródáját. Ez utóbbi kijelzőket
csak multiplexálva lehet használni, azaz egyik pillanatban az egyik, a másik pillanatban a másik számjegyet íratjuk ki vele. Lényeg, hogy a ciklusidő minimum 25Hz legyen!
Kapcsolás: egy AVR portlába elbír egy LED-et, tehát a szegmenseket rá lehet kötni, de söntölni kell mindet! Az ellenállás értéke akkora legyen, hogy max. 10-15mA folyhat.
A kijelző digitjeit(számjegykiválasztó lábait) viszont tranzisztorral érdemes hajtani, mivel egy számjegyben akár 7(vagy 8) LED is lehet, egy AVR egyetlen lába ezt nem bírja el!
(#) kurosaki válasza zombee hozzászólására (») Szept 5, 2012 /
 
Uhhhh najo ez nekem most sok volt egyszerre uristen igazabol SC56-11GWA erre gondoltam ebböl egymés mellé 2 és csak egy vissza számolás kéne. Ugynézki akkor kijelzö nem lesz . Gondolom akkor a gomb bevitel hez is több bemenet kell mint ami az Attiny45 ön van (4 gomb minimum)
(#) sikolymester válasza kurosaki hozzászólására (») Szept 5, 2012 /
 
Szerintem ne stresszeld magad a tanulás fázisban egy kevés lábszámú AVR-rel.
Vegyél egyet, aminek van lába dögivel. Aztán később majd trükközhetsz azon, hogy hogyan hozz vele össze funkciókat kevés láb használatával.
A hozzászólás módosítva: Szept 5, 2012
(#) kurosaki válasza sikolymester hozzászólására (») Szept 5, 2012 /
 
Szoval akkor az elöbb ajanlott sok lábu AVR el jobban járok? és amit én irtam SC56-11GWA kijelzö vel müködhet? annak is 6-7 lab kell? vagy jobban jarnek egy LED es kijelzövel ami 2 Segmentböl al?

Másik kérdés:
Ha szeretnék 1 Gombot hozzá Kötni azt, hogy tudnám megoldani? pl: Addig a Chip alvo üzemmodban van mig egy Gombot meg nyomok (IF Else megtom oldani) csak nem tudom a gomb behivasat .
A hozzászólás módosítva: Szept 5, 2012
(#) csabeszq válasza zombee hozzászólására (») Szept 5, 2012 /
 
> Ugyanis az USB-átalakítók nem tudják pontosan a baud frekiket

A specifikáció szerint az FTDI 3 mbiten elmegy. Persze ha a proci 16MHz-n ketyeg az RS232-essel kompatibilis órajelek helyett (18.432 Mhz), akkor az probléma lehet.

Ezért nézegetem az AVR-Duino UNO-t, mert ott már nem FTDI intézi az USB kommunikációt, hanem másik AVR, amelyik szintén 16MHz-n nyomul.
A hozzászólás módosítva: Szept 5, 2012
(#) zombee válasza csabeszq hozzászólására (») Szept 5, 2012 /
 
Az FTDI 6 vagy 12MHz-en megy, ezt egy PLL 48MHz-re húzza az USB miatt. Az FTDI-nél a 3 megabit kb. akkora blődség, ahogy az MCP2200-nak az 1 megabit(460kbps már nem megy).
Persze, biztos lehet vele 3 megabites portot nyitni mert a driver engedi, csak aztán a sok hibajavítással ott van az ember mint egy mezei COM portnál.
Ne érts félre, tudom miről beszélek mert van FTDI-s illesztő a tesztgépen amin dolgozom és nemhiába 115kbps-el kínzom 3 megabit helyett...

AVR-Duino UNO - hát ez sem a legjobb, annyiban trükközhetsz vele hogy SPI-n tolod neki az adatot(mármint az USB-s résznek), míg a PC egy nagysebességű COM portnak látja. Csak írd át a progiját!
(#) kurosaki hozzászólása Szept 5, 2012 /
 
Sziasztok.
78 L 05 Szabályzo alkalmas az Attiny45 ellátásához? mármint 9V rol üzemelne a készülékem.Mi kéne még, hogy ne füstöljön el?
(#) zombee válasza kurosaki hozzászólására (») Szept 5, 2012 /
 
tökkéletess!
(#) kurosaki válasza zombee hozzászólására (») Szept 5, 2012 /
 
Megszeretélek kérdezni, hogy ha 1 bekapcsolo gombot szeretnék betenni pl:
parancsra vár egy IF el, hogy ha nem csinalok semmit akkor várakozik ha gombot meg nyomom akkor elindul a számlálo.ezt hogyan tudom kivitelezni egy gombat?vagy mien gomb lenne meg felelő erre a celra? egy sima tolos kapcsolo is jo?
(#) zombee válasza kurosaki hozzászólására (») Szept 5, 2012 /
 
Hát egy "bekapcsológomb" lehet ezer féle, de tolós típust inkább ódon magnókban látni. Egyállásút meg azt hiszem az Atari konzolokban.

Akkor tisztázzuk: bekapcsológomb az, amivel tápot adsz vagy megszakítasz. Azaz kétállású. Egy mezei nyomógomb pedig csak akkor érintkezik ha lenyomod.
Ez utóbbinál az AVR továbbra is be van kapcsolva(értsd: áramot vesz fel). Na nehogy le kelljen írnom hogyan várakozol gombnyomásra és felengedésre!
(#) kurosaki válasza zombee hozzászólására (») Szept 5, 2012 /
 
Azt tudom hogy áram felvétel alatt van én csak arra vagyok kiváncsi, hogy tudom pl: PB5 ös szabad rá kötöm a gombot.Azt szeretném ha ezen a bemeneten valami történik akkor észlelje.

kiengedés 1<>PINB5 a parancsa.
(#) sikolymester válasza kurosaki hozzászólására (») Szept 5, 2012 /
 
Javaslom nézd meg a SC56-11EWA adatlapját: http://www.hestore.hu/files/sa_sc_56-11.pdf
Számold meg hány LED-et látsz, értelmezd a kapcsolását és akkor tudni fogod, hogy mennyi láb kell neki. Ha nem tudod, hogy mit jelentenek az áramköri jelölések, akkor nézz körül itt a hobbielektronikán, a cikkek között találsz remek írásokat kezdőknek.

És az ég szerelmére, kérek használj egy korszerű böngészőt, ami pirossal aláhúzza az elgépeléseidet. Így nem lenne milyen helyett "mien", stb.
A hozzászólás módosítva: Szept 5, 2012
(#) kurosaki válasza sikolymester hozzászólására (») Szept 5, 2012 /
 
Szoval nekem 8 lab kell es mivel ebböl kettö kell 16 lab. ugye? de ha az A-A egybe kötöm be akkor csak 8 lab kell? es a DP et kell külön kötnöm.Vagy Rosszul értelmezem?
(#) sikolymester válasza kurosaki hozzászólására (») Szept 5, 2012 /
 
Hát fogjuk rá. Majd amikor bekötöd, akkor látod, hogy egy kicsit elszámoltad. De szerintem keresd fel itt a cikkek között a 7 szegmenses vezérlés cikket. Hasznos lesz hidd el.
(#) kurosaki válasza sikolymester hozzászólására (») Szept 5, 2012 /
 
Elöször is kell egy 8 lábnálnagyobb AVR (gondolom az Attiny45 maradhat es erröl is adhatok a masik AVR nek parancsot).Olcso sok lábas AVR tudtok ajánlani ami olcso??
(#) sikolymester válasza kurosaki hozzászólására (») Szept 5, 2012 /
 
Itt van egy pár elektronikai bolt:
hestore.hu
lomex.hu
tme.hu
farnell.com (fdh.hu)
www.ret.hu
elektrokontha.hu
A hozzászólás módosítva: Szept 5, 2012
(#) kurosaki válasza sikolymester hozzászólására (») Szept 5, 2012 /
 
Lomexet kilőném ha tehetném mert csak SMD alkatrészeik vannak föleg Attiny45 böl.
akkor marad a hestore. rendben ugy nezki :Ö holnap megint mehetek a hestoreba

edit_-_

találtam ezt AN6884 5led meghajto LIN ez mit takar?
A hozzászólás módosítva: Szept 5, 2012
(#) sikolymester válasza kurosaki hozzászólására (») Szept 5, 2012 /
 
Két kérdésem lenne:
1: angolul mennyire értesz?
2: google.hu keresőt milyen gyakran használod?

Utóbbit ha használnád és mondjuk egy szót nem tudnál angolul, akkor is remek piktogramra akadhatnál a AN6884 nevű alkatrésszel kapcsolatban. Amiből elég hamar kiderülne számodra, hogy mivel állsz szemben.

Én próbáltam jó fórumozó lenni, de kiszállok a továbbiakban a kérdéseiddel kapcsolatban.
(#) kurosaki válasza sikolymester hozzászólására (») Szept 5, 2012 /
 
Rendben.Köszönöm az eddigi segitségeket.
Következő: »»   475 / 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