Fórum témák
» Több friss téma |
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
Hm a csabeszq féle megoldás, még picit bonyolult. Megpróbálom megoldani, a 2,56V-os referenciát.
Szia!
Csak úgy segítségként olvasd el ezt a leírást. Hátha találsz benne valami használhatót. Ha jól emlékszem valamelyik Elektor-ban volt eredetileg.
Hát, ebben is van LCD és műveleti erősítő, sőt relé is, csak ez nem programozható SPI-n keresztül, ráadásul bonyolultabb.
Vedd észre, hogy nem úszod meg erősítő nélkül. A trimmeres feszültséghangolással az a bajom, hogy a trimmer állapota nem örökértékű és időnként elmászik. Beállítod, hogy ez 11.8V, működik is vele egy hétig, utána elmegy. Az én megoldásom sem eget verően bonyolult, 2.56V-os referencia helyett 2.5V-osat használok és van benne egy SPI-n programozható erősítő. A másik erősítő azért kellett, mert a specifikáció azt írta, hogy stabil referenciát igényel, amit ezzel lehet előállítani. Ennyi. A hozzászólás módosítva: Jan 1, 2014
Mellesleg, az IC-t tönkreteheted, ha nem állítod külső referenciára, de rákötöd a 2.5V-ot a Vref-re.
Először állítod külső refre, utána ADC-zel!
Sziasztok!
Ha van nekem egy egyszerű AM rádióvevőm, ha építenék egy adót is hozzá akkor fel lehetne használni, hogy AZ MCU a vett jelből 3-4 típusú utasítást elemezzen ki. Tehát ha valamiféle jelet küldenék az adóba akkor az MCU a vett jelre adott utasítást hajtson végre? Tulajdonképpen egy ATTINY 2313 egy versenyautó motorjait kellene kapcsolgassa, az működik csak kéne hozzá valamiféle adóvevő áramkör.
Örömmel olvas az ember ilyen tapasztalat cunamit.
Nem értettem, hogy miért pont MCP602x opamp kell, amikor a Chipcadnél töredék áron is van a célra alkalmas (-nak tűnő) MCP opamp. Az MCP6S2x adatlap válaszolta meg a kérdést. Nem sikerült kiókumlálnom: Az 1.25V-os nullapont hol jön be a képbe?
2.5-voltot osztod ellenállásosztóval és áttolod a műveleti erősítőn.
Ez a PGA (MCP6S26) ref-je. A "nulla" körül erősítesz (ami 1.25V), nem 2.5V körül. Nem mondom, hogy ideális a megoldás, csak azt, hogy működik és marad. Nyilván olcsóbban is megoldható, de nem érdekel. Fontosabb volt, hogy rendesen menjen és feszültséget mérjen, ne zajt. Bőven elegem volt a sok szemétből, ezért nem kíméltem a pénzt a megoldásra. A hozzászólás módosítva: Jan 1, 2014
Kellene egy audió erősítő fokozat AVR-hez. Bascomban sound-dal egy hangot szólaltatnék meg, de nagyon halk, soros ellenállással pc hangszóró, 0,25 W, próbáltam azzal az alaplapra között , talán piezzó(?) hangszóróval is, ugyan az a helyzet, túl halk. Lenne rá valami bevált néhány tranzisztoros kis erősítő aminek a minősége sem lényeg, szal, csak hangosabban jelezzen mint simán az AVR lába? És ráadásul 5 voltról jár az AVR, léptetőmotorhoz van 12 V-om is, csak az kicsit távolabb lesz az AVR-től. Inkább ha lehet 5V-ról menjen.
Még egy olyan kérdésem lenne, hogy az I2C-n hőt mérek, 5 méteres Ethernet kábelen keresztül működni fog?
Szia!
Egyszerű erősítő: TBA820M, pár kiegészítő kondival és ellenállással teljes értékű erősítőt kapsz, 5V-ről gyönyörűen dolgozik, kb. 0,5W teljesítményig. I2C: van rá reális esély, hogy működni fog.De próba kell mindenképpen.Az ajánlottól eltérő felhúzó ellenállásokra lesz szükséged(kisebb). Üdv Kiborg
Ha csak csipogás: tranzisztor, vagy FET. Nagyon túlzásba sem kell esni: Tranzisztor alkalmazása
I2C: működhet, de: - i2cdelay=20 sor beírandó (50 kHz-s lesz a busz) - felhúzóellenállást lecsökkenteni 1k2...1k5 közé. - hőmérő lábaira/mellé: 100 nF szűrőkondit tegyél. Különben gerjedni fog. A hozzászólás módosítva: Jan 3, 2014
A delay 30 van most, akkor azt átírom, kondenzátor van szinte közvetlenül a szenzor lábán, ellenállást kell lecserélnem, aztán mehet a teszt. Köszönöm. Fet vagy tranzisztor, az oké, csak kellene egy olyan kapcsolás vagy rajz részlet, amin pl egy BC237 vagy hasonló tranzisztorhoz már meg vannak adva az ellenállások, esetleg kondenzátor bemenetére-kimenetére. Összeraktam levegőben egy tranzisztort 3 ellenállással, meg 2 kondenzátorral, de nem lett erősebb
Létetőmotor unipoláris, ide nem jó a H-híd, bontásból 4 db IRF630A-s Fet volt itthon, így az lett beépítve, azzal nincs gond, a 12V-ot csak az erősítés miatt írtam.
A Commodore64-nek tetszett a zenéje (maga korában) és kíváncsi voltam, hogy hogyan erősítette fel belül a SID chip kimenetét. A kapcsolási rajz igencsak megdöbbentett, mert az erősítő logika egy 2N2222 tranzisztor volt.
Köszi, tudtam hogy láttam valahol már ilyesmit
Szerintem ez akkor meg is van
Ez nem sokat er. Kell egy bipolaris tranyo, annak kollektoraba hangszoro, emitter korbe egy ellenallas (10..100 ohm)(ezzel allitod be a kollektor aramot - ez erosen tranyo fuggo, de hamar ki lehet kiserletezni) es vele parhuzamosan kondenzator (100uF). Bazisra egy soros ellenallas.Ha szebb jelalak kell, akkor munkapontot kell neki allitani. (kollektor bazis koze egy ellenallas 10k ohm nagysagrend.) Ehhez hasonlo: Bővebben: Link
A hozzászólás módosítva: Jan 3, 2014
Hello újra!
Nem teljesen AVR a témakör amiben kérdezek, de onnan indul a dolog. A szoftver része: Egyik digitális I/O lábat a belső felhúzó-ellenállással +5V-ra kapcsolok, majd ezt a lábat figyelem, mikor kerül 0V-ra, ekkor indul a program többi része. A hardver: az említett láb egy optocsatoló kollektorára van kötve. Az optocsatoló emittere földre kötve. Az opto led-jét egy távoli nyomógomb vezérli. A probléma: naponta 1-2 alkalommal történik, hogy véletlenszerűen elindul a program, amikor senki nem nyomta meg a gombot. Az a sejtésem, hogy a hosszú vezetéken valahol zajt szed össze a vezeték, ami az optocsatoló led-jét vezérli, és ez az oka a véletlen indításoknak. Azt szeretném megtudni, hogy hardveresen vagy szoftveresen kell/szokták az ilyesmit megszűrni? És mi módon?
Hardware:
- a belső felhúzó kevés. Az A sorozatú AVR-ben 75...120k. Illik ekkor külsőt rakni, 1k5...4k7 közt. - a az opto LEDje oldaláról nem szedhet zavart/zajt össze, ami villantja a LED-et?
Köszönöm!
Igen, a külső felhúzót kihagytam Az optocsatoló led oldalát meg tudom valami módon szűrni zavarok ellen? 14V DC -t kap egy 820 ohm-os előtét ellenálláson keresztül gombnyomásra.
Előbb utóbb tervem, hogy valami mikrovezérlővel tudjak bánni.
Mi lenne a jó kiindulási alap, azaz otthon egyedül megtanulni. Kellene hozzá valami eszköz is. e-bay-en van egy csomó board, amiből ki lehetne gondolom indulni. Ott érdemes megvenni valami boardot (pl UNO R3-at), vagy csak valami ISP programozót? A board azért lenne jó, mert el lehetne indulni, s az alapprogramokat tudnám tesztelni. Szóval szeretnék tanácsot kérni, hogy hogyan, s mivel induljak el, köszönöm!
Két jó kiindulás van:
1, 8 lábbal AVR (itt a HE-n) 2, 60+15 nap alatt Arduino és a TavIR oldal. Amúgy először olvass, és csak utána gondolkodj a hardware-ban....
Köszönöm, fel is iratkoztam! Most sok a tanulni valóm, de ha végzek, akkor majd végigolvasom a maileket, amik jönnek.
De nem érdemes egy ilyen kis boardot megvenni kísérletezni addig is?
Breadboard, vezetékek, meg egy programozó. Másra nincs szükséged. Ha lusta vagy akkor Arduino.
Arduino jó programozásra is, ugye? Mert akkor azt veszek kezdésnek kísérletezni.
Azzal LCD kijelzőt is meg lehet hajtani? Pl ilyet
Arduino önprogramozó (Bootloader van benne, és még a külső programozóval sem zárod ki magadat belőle). vagy az ArduinoISP-t rátöltöd és programozóvá alakul...
Nagyon sok kényelmi szolgáltatása van az Arduino-nak. Vannak könyvtárak hozzá és az LCD vezérlése max 10 sor. De az infra is ugyanilyen pofon egyszerű.
Egy programozó biztonságosabb. Nem biztosít neked +5V-ot, így nem is tudod rövidrezárni az USB-t az alaplapon. Arduinoval szétzúzhatod a számítógéped USB portját, míg egy AVRISP2-vel nem. Arduino alatt előre bedrótoznak neked sok dolgot, ami kényelmes, de időnként probléma. Például, hogy a VCC és az AVCC össze van kötve. Ha az USB porton a +5V feszültség nem stabil, hanem ugrál, akkor ez a mérési eredményekben jelentkezni fog. Az Arduino nagy előnye, hogy létrehoz egy soros portot a számítógépedre és programból beszélgethetsz a panellel. A programozó kizárólag programozásra jó, kommunikációra nem. Nekem mindkettő van. Arduinoval szoktam összeütni ezt-azt (persze nagyon figyelmesen), a kész megvalósításhoz már programozót használok, ahhoz az Arduino drága.
És windows 8 alá van program amivel tudok programozni?
Windows alatt programozásra az AVR Studio-t érdemes használni (ahogy emlékszem ingyen letölthető, az Atmel az IC-kbők csinálja a pénzt).
Sajnos Linux alatt nem megy, bár jó lenne. Az AVR Studio-ban van szimulátor és lépésenként végig lehet követni, hogy mit fog az IC csinálni. A hozzászólás módosítva: Jan 6, 2014
Köszönöm!
Akkor kezdő boardnak a Uno R3 Programozónak, ha későbbiekben saját panelt csinálok neki, akkor ISP programozó jó-e. Illetve néztem egy LCD-t, ezt az R3-ra rá lehet szerkeszteni? LCD Írtad, hogy az UNO R3-al vigyázni kell, ilyen esetben az USB hub nem véd valamennyit? |
Bejelentkezés
Hirdetés |