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
Igen, mert RESET-et ad a programozó, talán (?) nem árthat egy bekapcsolási pár msec késleltetés, de most nem tudom, hogy a RESET után mennyi idővel megy ki az első adat.
Sziasztok! Szeretnék txt file tartalmát, akár soronként, beolvasni AVR-el, modjuk sd kártyáról, merre induljak el, ilyen irányú ismereteim nincsenek, UART-on, SPI-n már kommunikálgattam egy kicsit.
Van egy hasonló témájú topic:
Bővebben: Link Bár te nem pont ezt kerested, az ott adott válaszok segíthetnek neked is. Úgy tudom, hogy az SD kártya is SPI-n kommunikál, tehát ezzel nem lesz gondod. Feltételezve, hogy egy számítógéphez használt SD kártyát szeretnél olvasni, szükséged lesz még az ott használt fájlrendszer (jellemzően FAT) ismeretére. Ha egyéb eszköz írta rá a txt fájlt (pl. valami célhardver), akkor annak a rendszerét kell ismerned. A hozzászólás módosítva: Jan 5, 2021
Szia, szerintem a FatFs-re lesz szükséged. Bővebben: Link. Vannak példaprogramok különböző platformokra, köztük AVR-re is, annak segítségével (meg pár tutorial elolvasásával) egyszer sikerült működésre bírnom, de kipróbáláson kívül végül nem használtam.
Elég memóriaigényes az SD kártya kezelés, ha jól emlékszem akkor egy 328-as fele memóriáját megtöltötte.
Köszönöm, Neked is és lazsi-nak is, de nem gondoltam , hogy ilyen bonyolult. Arról van szó, hogy hozzá tudok férni némi CNC üres időhöz, a maszek nyákjaim kifúrásához. De a Sprint Layout Fúrófájlját át kell egy kicsit írni a CNC G kódjához, ezt gondoltam AVR-el, ehhez kellene beolvasni-átalakítani-kimenteni txt-t, közben más irányban is elindultam, excellel is próbálkozom
Nem lenne egyszerubb PC-re (Windows, Linux) megirni a programot? Linux-on adott a C fordito, csak irni kell a kodot es leforditani. De Windows-ra is letoltheto a gcc. A MinGW lehet egy jo irany.
De biztos egyszerűbb annak aki meg tudja írni. Láttam sok, pl. mini cnc, 3d nyomtató-t arduino-val (ami ugye AVR) amik sd kártyáról olvasnak, ezért gondoltam, hogy vannak erre ma már egyszerű megoldások. De végül is megoldottam excelben B oszlopba kell bemásolni a Sprint Layout furatfile-ból a koordinátákat és a K oszlopból lehet kimásolni a CNC-nek a G kódot egy-egy Ctrl+C Ctrl+V -vel azért végül is ez is elég egyszerű lett. Köszönöm!
A hozzászólás módosítva: Jan 6, 2021
Igazából csak arra gondoltam, hogy ha AVR-re meg tudod magad írni a konvertáló programot, akkor PC-re még egyszerűbb lenne. Főleg, ha olyan egyszerű dologról van szó, amit egy excel táblával is meg lehet oldani. AVR-en az SD kártya kezelés sokkal nagyobb feladat, mint a G kódokat konvertálni. A PC programban meg a file olvasás/írás nem probléma.
Azon gondolkodok, hogy nincs egy parancs, (scale vagy hasonló), amivel a CNC marógép koordinátarendszerét egy paranccsal át lehet méretezni (vagyis inkább a parancs után jövő pobtok helyzetét)? Azt tudom, hogy ha van egy kontúrod, akkor azt át tudod forgatni, másolni, tükrözni, és méretezni is (ezt heidenhain-nal meg lehet oldani)! Tehát csak egy sor kellene minden program elejére (meg a végére hogy visszaállítsd eredetire), és maradhatna minden koordináta az eredeti. Na persze ehhez tudni kellene, hogy milyen kódokat ismer a CNC. Ha lenne hozzá kézikönyv, szeribtem gyorsan megtalálnád.
szerk: ciklus11-et kellene megnézni, ha heidenhain, ha más, akkor a kézikönyvét. A hozzászólás módosítva: Jan 6, 2021
Köszönöm, de az excel teljesen tökéletes lett, mint ahogy a fentebb is írtam a Sprint Layout Bohrfile-ból koordináták, csak át vannak másolva, az értékük úgy jó ahogy van, csak kell középre a tizedespont, és elöl nem lehet nulla. És akkor már csak a program sorszámozást kellett megoldani, egy G79 -et betenni az elejére meg a végére egy Z0-át, így várja a philips 432 vezérlő, egy MAHOMAT 600 -on. Az egész elé kell a szokásos szerszámválasztás, főorsó bekapcsolás, előtolás beállítás, stb. egy G81-es fúróciklus parancs, ahol be kell állítani, a fúrásmélységet, mennyi ideig legyen a furat alján egy helyben, biztonsági távolságot a paneltól, nagyjából ennyi. RS programmal RS232-n meg át lehet tölteni a szerkesztett szöveget a MAHO-ba
sziasztok!
le akarom cserélni az Arduino IDE-t atmel studo-ra és ennek egyetlen akadálya van, nem tudok feltölteni. találtam leírást arról hogy hogyan kellene használni az "external tools"-t, de használatakor hibaüzenetet kapok. figyelmesebben nézve az Arduino IDE feltöltését , ő menet közben portot vált és/vagy használ valamilyen szoftveres réteget (atmega32u4 az 5-ös porton lehet elérni, az avrdude paramétereknél a 6-osra hivatkozik) a kérdésem az lenne hogy hogyan lehet az avrdude-ot (csak USB kábelen keresztül) rábeszélni arra hogy a meglévő binárist rakja a helyére ?
Nyomd meg a resetet az Arduinon. Ekkor elindul a bootloader, amelyik más COM portot használ. Ezt rögzítsd az eszközkezelőben (device manager). Ezt a portot állítsd be az Atmel Studio-ban az external toolnál.
Az Arduino IDE-től eltérően itt mindig meg kell nyomnod a resetet, mielőtt feltöltenél.
van egy FlatCAM nevezetű szoftver, megeszi a külömböző "levilágítási" fájlokat (drill, excelon, gerber). ezek alapján készít izolációt, fúrást, kontúrmarást, panel stb. szerszámcserével g-code -ban
Szisztok, Arduino-val hogyan lehetne előállítani 200Hz 10%-os pwm jelet?
Például így: https://www.etechnophiles.com/change-frequency-pwm-pins-arduino-uno/
Ha nem találsz olyan osztót, ami pontosan 200 Hz frekvenciát eredményezne, akkor meg kell változtatni a fő órajelet.
Nem kell megváltoztatni a fő órajelet, hanem bele kell bújni a Timerek részbe az adatlapban.
A hozzászólás módosítva: Jan 25, 2021
Sziasztok!
2015 ben kerestem egy munkához AVR programozót. Találtam is egy nagyon ügyes srácot aki TÖKÉLETESEN megírta az általam kért programot. A neve Szombathelyi Tamás. Egy free mailes címe volt, ami szerintem megszűnhetett, mert nem válaszol most a megkeresésemre. Ha olvasod a levelemet Tamás, akkor kérlek jelentkezz, vagy ha valaki ismeri segítsen! Nagyon köszi előre is. Üdv mindenkinek.
Nem írtam, hogy mindenképpen meg kell változtatni, csak ha nem talál olyan osztót.
Sziasztok!
Szeretnék egy csengőt készíteni amely SD kártyáról olvassa be a lejátszandó dallamot. A kiindulási alap (Topi cikke) volt. Egyébként azt már megcsináltam egyszer, azóta is működik. (Köszönet érte. ![]() A neten találtam is jó pár SD kártyáról lejátszó megoldást amiknél az Attiny85 volt felhasználva. Ilyenem van is itthon így gondoltam azzal csinálom meg az enyémet is. A nagyobb hangerő elérése miatt még bele lett tervezve egy LM386-os erősítő is. Viszont mivel elvárás az elemről történő működés ezért azt találtam ki, hogy az LM386 csak akkor kapna feszültséget, amikor elindul a lejátszás. Itt jött elő a problémám. Sajnos már csak a PB5 (reset) láb szabad, ezért erről menne a táp vezérlés (tranzisztort kapcsol). Viszont ugye ez a RESET láb is ezért nem vagyok biztos benne, hogy ez jó megoldás. Azt tudom, mert már utána néztem, hogy be kell állítani a RSTDISBL fuse bitet. Bár még ilyen nem csináltam sose, ezért vagyok bizonytalan. Megerősítést vagy cáfolatot szeretnék kérni tőletek, hogy használhatom-e ezt így? Nem zárom ki magam így a chipből? (Programozónak STK500-ast használok.) A tápellátást 4db AA elem fogja adni. Idézet: „Nem zárom ki magam így a chipből? (Programozónak STK500-ast használok.)” Nem. De csak nagyfeszültségű programozással tudod programozni. Az STK500 tudja ezt. Ilyenkor 12 voltos impulzusokat küld a reset lábra. Ehhez ki kell venned a cél áramkörből a mikrokontrollert.
Vagy teszel az "audio" kiementre egy monostabil áramkört pár alkatrészből, és amíg van négyszögjel a kimeneten, addig van az erősítőnek tápja is. Miután megszűnt a négyszögjel, utána pár másodperc (amit beállítasz RC konstansokkal) múlva, elveszi a tápot az erősítő résztől.
Ez jól hangzik. Mivel nem szakmám az elektronika, csak a hobbim
![]()
Közben azért csak nem hagyott nyugodni a kérdés.
![]() Ilyenre gondoltál? Csak ugye nem 555-ös IC-vel. A Be bemenet közvetlenül ráköthető a "audio" kimenetre?
Sziasztok!
Kernék egy kis segítséget, nem nagyon vagyok otthon ebben a témában. Adott egy ATMega48 SMD kontroller, arduinoval szeretnék beleégetni egy bootloadert. Viszont sehogy nem sikerül. optiLoaderel próbáltam, viszont csak ezt írja a soros monitor: "OptiLoader Bootstrap programmer. 2011 by Bill Westfield (WestfW) Target power on! ... Starting Program Mode [OK] Reading signature:9205 Searching for image... Not Found Target power OFF! Type 'G' or hit RESET for next chip" Már a második kontrollerrel próbálkozom, itt nem kötöttem semmit az arduinon kívül. (Kvarc, kondi...) Ez jelenthet problémát? Köszönöm!
Lehet kreatívkodni is kicsit. Mivel a clock lábat akkor fogod rángatni, amikor hangot is le szeretnél játszani, csinálhatsz egy pici charge pumpot is vele, ami kinyit egy mosfetet.
![]() Persze méretezd át a kondikat, különben nem működik majd az áramkör, esetleg válaszd le egy kapuval. A példában volt két szabad negáló kapum az egyik IC-n és a segítségükkel (schmidt trigger bemenet) digitálissá alakítottam az enyhén pulzáló jelet (engedélyező jel volt kapu IC-khez). Praktikus egy ilyen áramkör esetleges szoftver kifagyások kezelésére, mivel a valamilyen állásban megálló kimenet hatására kisül a C15 kondi és letiltja az áramkört (jelen esetben egy 160W-os fűtőelemet).
Csak egy ötlet: én a RESET lábat bemenetnek használnám (analóg), ameddig el nem éri a szint a RESET-szintet az ADC-vel olvasható a jel. Kipróbáltam már, csak olyan osztót kell betenni, ami mondjuk csak Vcc/10 értékre húzza le.
|
Bejelentkezés
Hirdetés |