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   733 / 837
(#) k3gy3tl3n hozzászólása Ápr 24, 2016 /
 
Sziasztok, EPROM olvasás/írással kapcsolatos kérdésem lenne.
M27C1001 lenne az áldozat. Van ehhez valakinek AVR-es / arduinos példája? Meg egyeltalán hogyan működik az írás és az olvasás? Csak az elmélete kezdésnek elég lenne Hogyan adom meg hogy melyik területre és mit akarok írni? Hogyan mondom meg hogy honnét akarok olvasni és azt hol kapom vissza? Bármilyen infónak örülök, link másik fórumra, bármi jöhet.
A hozzászólás módosítva: Ápr 24, 2016
(#) Bakman válasza k3gy3tl3n hozzászólására (») Ápr 24, 2016 / 1
 
Info1: Bővebben: Link, Info2: Bővebben: Link. Biztos, hogy ezzel akarsz foglalkozni? Mára elavult technika.
(#) k3gy3tl3n válasza Bakman hozzászólására (») Ápr 24, 2016 /
 
Sajnos ez van a céláramkörben, azzal főzök amim van
(#) Bakman válasza k3gy3tl3n hozzászólására (») Ápr 24, 2016 / 1
 
Itt nézz szét: EPROM égető készítése.
(#) proba válasza k3gy3tl3n hozzászólására (») Ápr 25, 2016 / 1
 
Bővebben: Link tartalmazza az olvasás írás diagramokat is.
(#) ThompsoN hozzászólása Ápr 25, 2016 /
 
Sziasztok!

Belefutottam egy olyan problémába, hogy a külső megszakításrutinok véletlenszerűen elfutnak. A kapcsolást mellékelem lent. A mikrokontroller egy AVR ATMega32U4, de ezt egy Pololu A-Star 32U4 Mini LV panelen vettem, tehát a stabil működés garantált. (USB kommunikáció is zökkenőmentes.)
Az optokapuk működnek, kipróbáltam őket, a tranzisztorok is jók, mert teszterrel megnéztem beforrasztás előtt.
Az áramkör lényege az lenne, hogy az egész egy tálcán tud mozogni, amit egy villanymotor hajt. Az optokapukat szeretném végálláskapcsolóként használni, tehát amikor egy tárgy kerül a LED és a fototranzisztor közé, akkor kellene megállnia a motornak. (Ha manuálisan beteszek valami akadályt, akkor meg is áll, és próbapanelon kipróbáltam a mikrokontrollert, a program jól működik, csak lemenő élre történő megszakításra állítja le a motort. De nem optokapukkal tudtam kipróbálni, csak kézzel dugdosva a drótokat.)
Az áramkörbe téve a motor indítása megtörténik, de egyszer csak gondol egyet, és a lefut a megszakításrutin. Az optokapu az áramkör többi részével együtt tálcán mozog, az akadály van fixen rögzítve.
INT2 lábon is van egy ugyan olyan tranzisztor-optokapu páros, mint az INT3 lábon, egyik a kitolt állapot végét érzékeli, a másik a betolt állapotot. A feszültséget mértem, 4,9-5,05V között mozog attól függően, hogy a motort be van-e kapcsolva.
Azt is kimértem, hogy ha csak áram alá helyezem az egészet, de nem indítom el a motort, akkor a mikrokontroller lábai magas jelszinten vannak, ahogy lenniük is kell.
Az optokapukat esetleg zavarná a szoba világítása, vagy az, hogy mozognak?

Szerk.: kipróbáltam úgy is, hogy a BC337-eseket kiforrasztottam, és a lábhoz közvetlenül az optokaput kötöttem be, majd a programot átírtam, hogy felmenő élre figyeljen, de az eredmény ugyan az: véletlenszerűen, külső beavatkozás nélkül megállítja a motort.

Az biztos, hogy valamiért lefut az interrupt, mert USB elküldi a PC-nek, hogy ő most lefutott.
A hozzászólás módosítva: Ápr 25, 2016

DSC_0169.JPG
    
(#) freechat válasza csabeszq hozzászólására (») Ápr 25, 2016 /
 
4 ledről van szó és valóban a pepecselést akarom megúszni.
Az a cél, hogy az eszközt forrasztás nélkül 0 kézügyességgel is meg lehessen építeni 10$ alatti ktg-vel.
Vagyis MINDEN amire szükség van beférnek 10$-ba. Ha forrasztani kell akkor az önmagában többe kerül, mert azt feltételezem, hogy aki meg akarja építeni a kütyüt annak nincs semmije otthon.
Eddig 7$-ba kerül így még 3$-om maradt
Ja és ami a "feneség", hogy 50 db ledet lehet legkevesebb venni szóval az sem baj, ha mondjuk havonta ki kell cserélni egyet
(#) Kovidivi válasza ThompsoN hozzászólására (») Ápr 25, 2016 /
 
Berajzolhattad volna a tranzisztor és optocsatoló belsejébe a nyilakat...
Kellene az AVR bemenetére valami erősebb felhúzó ellenállás. Én 10k-1k között próbálkoznék. Gondolj bele, mi van azon a lábon, amikor a tranzisztor bázisa le van húzva GND-re? Lebeg, vagy ha a belső felhúzó be van kapcsolva, akkor 100-150k-val megy 5V-ra. Ez nem valami zavarvédett.
(#) Kovidivi válasza freechat hozzászólására (») Ápr 25, 2016 /
 
Szerintem felesleges spórolni az ellenállásokon. Össze is lehet csavarni a lábakat, ha nem akarsz forrasztani. De ha érdekel a hobbi, akkor kell venned egy pákát, kb. 1000Ft-os tétel, a 3$-ba bele is fér. A másik, hogy miért akarsz havonta LED-et cserélni? Ez elég gyatra minőség, igénytelenség.
Meghajthatod egyébként az AVR kimenetéről is, ellenállás nélkül, de akkor PWM jelet kell használni, és 1-ről indítsd (255 a max. 8bit-es PWM esetén), majd növeld addig, amíg akarod. Ha van kedved, ki is próbálhatod, hol megy tönkre a LED, és megjegyzed azt az értéket. Ne mérd az áramot, mert befolyásolja a multiméter a LED-en átfolyó áramot.
A hozzászólás módosítva: Ápr 25, 2016
(#) Gj hozzászólása Ápr 25, 2016 /
 
Üdv!
Egy ideje már keresgélem a megoldásokat AVR és PC összekötésére USB-n keresztül.
Használtam FTDI chipeket, amik Windows 7-nél újabb gépen nem működtek. Aztán MCP2200-s chipeket, amiket nagyon problémás illeszteni egy-egy géphez (sokszori driver újratelepítés, stb... de egyszer végül jó lesz).
Néztem a V-USB-t is, de tervezem majd eladni a cuccot, amihez meg sajnos többszáz eurós licence tartozik, stb...

Mivel próbálkozhatnék még? Van valami más, használható (és tényleg működő) USB-UART protokoll konverter? Esetleg konkrét tapasztalat alapján egy konkrét típus?
A hozzászólás módosítva: Ápr 25, 2016
(#) Topi válasza Gj hozzászólására (») Ápr 25, 2016 /
 
Nézd meg ezeket (bár az FT232-nek egyébként kellene mennie Win 7 és felette gépeken, max akkor nem, ha hamisítványt vásároltál, mert azokat az FTDI driver ügyesen kinyírja):
CP2102, PL2303, CH340
(#) pont válasza Gj hozzászólására (») Ápr 25, 2016 /
 
Esetleg: Bővebben: Link

A driver-e : Bővebben: Link
(#) freechat válasza csabeszq hozzászólására (») Ápr 26, 2016 1 /
 
Sajnos valószínűleg maradna az ellenállás, de lehet nem is kell ugyanis:
1. A led nem ment tönkre ellenállás nélkül sem, most tesztelem, hogy mi történik vele 100 óra alatt.
2. a PWM totál bezavarja a hangszórót amivel a csipogást csinálom. Idegesítő halk sípoló hangot ad pedig végigpróbáltam az összes lábat még az Analógokat is, mégis bármelyikre teszem amint kiadom az analogWrite-t egyből megszólal és mintha a hang is torzabb lenne. Persze elkezdhetném alacsony szinten is programozni, de most valahogy nincs sok kedvem hozzá
3. Mivel ping-pong eredményjelző lesz így ha egy led kibír mondjuk 100 órát akkor az teljesen megfelelő.
4. Már csak az a kérdés, hogy mennyire meríti jobban így az akksit.

Azért köszönöm a segítséget.
A hozzászólás módosítva: Ápr 26, 2016
(#) ThompsoN válasza Kovidivi hozzászólására (») Ápr 26, 2016 /
 
Köszönöm a javaslatod, kipróbálom.
Bocsi a tranzisztorok miatt, elfelejtettem a nyilakat berajzolni.
(#) csabeszq válasza freechat hozzászólására (») Ápr 27, 2016 /
 
Egy led 10mA-n már bőven klasszul világít, de sok led 5mA-rel is elmegy.

Ha szimplán rákötöd ellenállás nélkül AVR-re, az 40 mA.

Négyszer annyi energia, négyszer akkora kapacitású aksi kell, viszont erősebben alig fog világítani.
A hozzászólás módosítva: Ápr 27, 2016
(#) rascal válasza freechat hozzászólására (») Ápr 27, 2016 /
 
Én is azok táborát gyarapítom, akik azt mondják, hogy tegyél oda ellenállást. 4 led - 4 ellenállás, maximum plusz 10 perc, cserébe örök élet a ledeknek is és az AVR-nek is. Ha 100 órád van ledet tesztelni, akkor szerintem ez is kibírható. Másrészről, ha ezt másokkal, ahogy kivettem kezdőkkel, éppen csak az elektronika felé kacsingatókkal is szeretnéd utánépítettni, akkor valami olyat kell adni nekik amiből megtanulhatják az alapokat. Egy túlterhelt, vagy az alkatrészek tűrőképességét kicentiző áramkört én biztos nem ajánlanék utánépítésre senkinek. Kényszerhelyzetben saját magamnak szóba jöhet, de az más kategória. Az AVR-t hogyan tudod stabilan a LED-hez kötni, és ellenállásra ez miért nem működik?
(#) proba válasza freechat hozzászólására (») Ápr 27, 2016 /
 
Ezt majdnem neked találták ki.
(#) csabeszq válasza proba hozzászólására (») Ápr 28, 2016 /
 
A SIL-5-ös hálóellenállás breadboard-ba is berakható. 2x4 forrasztás helyett 1x4+1 forrasztás kell. A közös rész megy a földre a többi négy lábát a LED-re, utána az AVR-re rakod.

Mondjuk nálam a probléma 40 ellenállás forrasztásánál jött elő, nem 4-nél, ahhoz használtam SIL-eket. Frankó, mert kis helyet foglalnak, simán lehet próbanyákra rakni, de mondjuk drágábbak, mintha megvennék 4 vagy 8 ellenállást.
A hozzászólás módosítva: Ápr 28, 2016
(#) cimopata hozzászólása Ápr 28, 2016 1 /
 
Üdv.

Van egy időzítőm amihez szeretném időzíteni az ADC mintavételt. A baj az hogy amikor a Timer interrupt hardveresen meghívódik akkor megtörténik az ADC mintavétel viszont az a függvény nem tud visszatérni az eredménnyel és a main függvényben nem látom az eredményt. Ezt onnan tudom hogy az ADC parancsot berakva a main fügvénybe adja az adatokat szépen.

Hogyan tudom ezt megoldani?
Amikor a timer interrupt fut az ADC-vel bele kéne írni egy direkt regiszterbe? Segítségeteket kérném.

Egész pontosan 10us-ra lesz hangolva a timer és úgy mentené az adatokat 900 adatot utána váltok csatornát gyorsan begyűjtene még 5 másik adatok a másik csatornáról és kezdődne előről.

Egyébként STM32 IC-t használok ha kell be tudom rakni a kódot.
A hozzászólás módosítva: Ápr 28, 2016
(#) killbill válasza cimopata hozzászólására (») Ápr 28, 2016 /
 
Idézet:
„Egyébként STM32 IC-t használok ha kell be tudom rakni a kódot.”
Ez viszont egy AVR topic, nem ARM...
(#) cimopata válasza killbill hozzászólására (») Ápr 28, 2016 1 /
 
Most kerestem csak rá látom van olyan téma is átteszem oda. Bár szerintem AVR vagy ARM az most mindegy. Maga a C kódban vagyok meglőve.
(#) Droot hozzászólása Ápr 28, 2016 /
 
Hello!

3 fázisú voltmérő és fázissorrend ellenőrző lenne a projektem egyik része.
Erre lenne valami jó ötletetek esetleg? Hogy kellene galvanikusan leválasztani? Az optocsatolóval az a bajom, hogy nem lenne teljesen lineáris.
(#) pont válasza Droot hozzászólására (») Ápr 28, 2016 /
 
Esetleg 3 db ilyen Bővebben: Link
(#) kameleon2 válasza Droot hozzászólására (») Ápr 29, 2016 /
 
Szia! A nagy szünetmentesekben is egyszerű trafók vannak a fázisokon. Mivel szinte nincs teljesítmény egészen apró trafók is megteszik.
A hozzászólás módosítva: Ápr 29, 2016
(#) freechat válasza rascal hozzászólására (») Ápr 29, 2016 2 /
 
Az ellenállás lábai hajlékonyak és vékonyabbak így nem illeszkednek olyan jól a vezetékekbe amit használok.
Vezetékek
Valószínűleg úgy fogom leírni az építést, hogy kellene bele előtét ellenállás stb..., de mindenképpen benne hagyom a lehetőséget, hogy anélkül építse meg valaki szóval nem fogok vészmadárkodni, hogy így-úgy tönkremegy. Már 2 napja égnek a ledek itt mellettem munka közben és semmi bajuk.

Én amikor elkezdtem az egész elektronikával foglalkozást a legnehezebb az volt, hogy mindenhez forrasztópáka meg egy csomó minden kellett. És ez el is tántorított. Ezt pedig mivel USB-s és eléggé védett az elektronikája gyakorlatilag egy gyerek is simán utánépítheti. Ilyen szintű programozási tudással én kb 7.-ben rendelkeztem így inkább erre akarok fókuszálni, de kell hozzá eszköz is.
Valószínűleg egy próbapanelt fogok közbe iktatni mivel megint spóroltam pár száz Ft-ot, ott pedig lehet ellenállás is
A hozzászólás módosítva: Ápr 29, 2016
(#) freechat válasza csabeszq hozzászólására (») Ápr 29, 2016 1 /
 
Minél erősebben világít annál jobb mivel kültéren lesz használva igaz hordozható kivitelben.
Az akksi azoknak probléma akik azzal használják és ott valóban jogos, hogy 4x annyi energia már probléma lehet.

Ha az AVR tápja előtt mérem az áramerősséget az már reális lehet, ahhoz, hogy megmérjem mennyivel fogyaszt többet?
(#) Massawa válasza freechat hozzászólására (») Ápr 29, 2016 /
 
Azért vigyázz, hogy ne juss ilyen szintre , mert szerintem ez inkább egy zsákutca, és sok fejfájás elöjele.
Nyugodtan markold meg azt a forrasztovasat, az nem harap, csak tudást közvetit.....

A hozzászólás módosítva: Ápr 29, 2016
(#) freechat válasza Massawa hozzászólására (») Ápr 29, 2016 1 /
 
Sajnos nincs meg a megfelelő kézügyességem a forrasztáshoz, hogy miért az maradjon az én magánügyem, de nem rajtam múlik a dolog és mivel nagyon érdekel az elektronika ezért szeretném valahogy kipróbálni, ezért kezdtem keresni azokat a megoldásokat amik ebben segítenek. Meglepően sokan vannak és sajnos ritkán kapnak segítséget azok akik hozzám hasonló cipőben járnak.

Viszont pl a gyerekeknek szerintem jobb forrasztás nélkül adni olyan eszközt amivel gyorsan sikert tudnak elérni. Majd utána megtudják mi a való világ és mennyire nehéz ez a szakma, de addigra már lehet fanatikusok lesznek és onnan pedig nincs visszaút
(#) Kovidivi válasza freechat hozzászólására (») Ápr 29, 2016 / 2
 
Erre való a breadboard. Pár száz Ft, és akkor nem kell magyarázkodnod sem. Elfér bárhol.
(#) zombee válasza Kovidivi hozzászólására (») Ápr 30, 2016 / 1
 
+1.
Nekem is a breadboard jutott eszembe attól a pillanattól fogva hogy kézügyességre hivatkozva kihúzza a forrasztást. A legtöbb AVR-es cuccot én is breadboardon rakom össze, ha csak ki akarok valamit próbálni és az így megszerzett tudásmorzsának hála többé nem lesz szükség arra a kapcsolásra. Most épp egy HX711 (24 bites mérleg-ADC) modult pakolgatok. Nem szégyen ha egy elektronikázó műhelyéből hiányzik a páka. Az a szégyen, ha valaki csak ossza az észt, hogy ő "20 másodperc alatt összerak egy komplett webszervert, nem kell a kereket újra és újra feltalálni."
A történelem a bizonyíték arra, hogy magát a kereket is számtalanszor feltalálták újra és újra, ezért tartunk ott, ahol. Enélkül ma is szekerekkel járnánk. Ahol mi húzzuk a szekeret...
A hozzászólás módosítva: Ápr 30, 2016
Következő: »»   733 / 837
Bejelentkezés

Belépés

Hirdetés
Lapoda.hu     XDT.hu     HEStore.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