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   656 / 837
(#) RoliNyh válasza Ricsi89 hozzászólására (») Márc 22, 2015 /
 
Oké, értem, a lényeg "járó motor VAGY rákapcsolt gyújtás"...
Köszönöm mindenkinek...
(#) kameleon2 válasza RoliNyh hozzászólására (») Márc 22, 2015 /
 
Nálam a gyújtáskapcsoló végében van egy mikrokapcsoló. Amikor betolom a kulcsot, aktiválja a LED-es menetfényt.
(#) zombee válasza kameleon2 hozzászólására (») Márc 22, 2015 1 /
 
Ez még jobb, nekem tetszik! Aki lejtmenetben (hozzám hasonlóan ) leállítja a motort és üresben gurul 3 km-t annak nagyon hasznos egy ilyen kapcsoló.
A hozzászólás módosítva: Márc 22, 2015
(#) Massawa válasza zombee hozzászólására (») Márc 22, 2015 / 2
 
Ezt a vezetési technikát Afganisztánban tanultad?
A mai kocsik jelentös része motor nélkül nem kormányozhato, és a fék meg a kuplung is csak árnyéka a rendes müködésnek.....
(#) RoliNyh hozzászólása Márc 22, 2015 /
 
Azt hiszem, az akumlátor feszültség méréssel fogom vezérelni egy analóg bemeneten. Ha jól tudom, a sima akkufesz, mikor nem jár a motor 12V esetleg 12.5V. Ha a motor jár, akkor megnő 14.4V -ra a feszültség, mértem multiméterrel. Ez a legegyszerűbb...

Kameleon az akkor is bekapcsol ha el se fordítod a kulcsot akkor nem? Úgy az nem biznisz...
(#) Ricsi89 válasza RoliNyh hozzászólására (») Márc 22, 2015 /
 
Ha már bonyolítod. Olajnyomáskapcsoló, töltésjelző lámpa? És még mikrokontroller sem kell.
(#) Ricsi89 válasza zombee hozzászólására (») Márc 22, 2015 /
 
Ekkora baromságot! Se szervó, se fékrásegítés. Egy vészfékezés, vagy hirtelen irányváltoztatás érdekes lehet így. Majd ha egy ilyen művelet bekövetkezte utáni esetleges baleset után kiderül a turpisság, akkor meg rád verik az egészet.
(#) RoliNyh válasza Ricsi89 hozzászólására (») Márc 22, 2015 /
 
Kell, mert később tervezem vezérelni vele:

1. kormány szögérzékelővel kiegészítve a ködlámpákat külön külön kanyarfényként,
2. fényérzékelővel kiegészítve automata világítás bekapcsolás, és a kanyarfény napszaktól függő működtetése
3. sávváltás jelzés, pillanat indexvezérlésre villanjon ötöt az adott oldali irányjelző,
4. a központi zár reteszelésére multimédia egység kikapcsolása és elektromos ablak felhúzás.

Hirtelen ennyi...
(#) killbill válasza Ricsi89 hozzászólására (») Márc 22, 2015 /
 
A vakuumos fekrasegito azert 1-2 fekezest meg kibir motor nelkul, de utana tenyleg csuful bekemenyedik. Egyebirant teljesen egyetertek, szigoruan tilos a motort leallitani menet kozben. Meg jaro motottal sem gurulok uresben, nemhogy leallitott motorral.
(#) zombee válasza Massawa hozzászólására (») Márc 22, 2015 /
 
Ha egy 2001-es Felicia neked már ódon military cucc hát legyen.
Ezért (is) jó ha nincs kormányszervó, max. fékrásegítő, de az megtartja a vákuumot ha nem pumpálgatod a féket össze-vissza. Ha mégis fékezni kell egy nagyot utána úgyis be kell indítani a motort, nem? A kuplung nem tudom hogy jött ide, már abból is létezik rásegítő?


Az olajnyomáskapcsoló tetszik, az tényleg csak akkor kapcsol (jó esetben) ha megy a motor.
A hozzászólás módosítva: Márc 22, 2015
(#) Gj hozzászólása Márc 23, 2015 /
 
Üdv!

USB-n (vagy bárhogy, máshogy) PC-hez csatlakoztatott AVR-en futó program frissítése lehetséges USB-n át?
Programozó nélkül programozni nyilván nem lehet, de valami más mód létezik?
A hozzászólás módosítva: Márc 23, 2015
(#) Massawa válasza zombee hozzászólására (») Márc 23, 2015 /
 
Nem tudom, nekem valaha 15 évvel korábbi Feliciámon is volt kormány- meg fékszervo.
Mindegy, ennek ellenére, ha jol tudom tilos motor nélkül kocsikázni ( lehet, hogy Afganisztánban nem, de errefelé nagyon).....és csak magadod minösited, ha ilyenröl nyilvánosan beszélsz.
(#) killbill válasza Gj hozzászólására (») Márc 23, 2015 /
 
Az AVR programbol tudja irni a flash-t, tehat elmeletben nem lehetetlen. Es gyakrolatban sem az, szamtalan AVR-es megoldas van, amiben a firmware frissitheto valahogy. Akar USB-n, akar SD kartyarol.
(#) Gj válasza killbill hozzászólására (») Márc 23, 2015 /
 
Értem, köszönöm.
(#) benjami válasza Gj hozzászólására (») Márc 23, 2015 /
 
Az összes arduino így működik. És nem csak az arduino keretrendszerben tudod használni, hanem az avrdude programmal az avrstudio-ban előállított HEX-et is bele lehet tölteni. Ha üres vezérlővel kezdesz bele, az ehhez szükséges bootloader feltöltéséhez viszont mindenképpen szükséges valamilyen programozó.
(#) Gj válasza benjami hozzászólására (») Márc 23, 2015 /
 
És saját bootloadert írni mennyire bonyolult?
(Azért szeretnék sajátot, mert egy C# nyelven írt programból szeretném írni a firmware-t, PC-ről.)
Érdemes nekiállni, vagy hogyan működik ez a bootloader dolog?
(#) csabeszq válasza Gj hozzászólására (») Márc 23, 2015 /
 
Semmiképpen nem érdemes saját bootloader-t írni.

A bootloader soros kommunikációval működik. Amikor csatlakozol a soros-porthoz és 1-be rakod a DTR-t, majd felengeded az Arduino hardver resetel. Ezután feltöltheted a saját programodat adott sebességgel 57600, vagy 115200 Arduino változattól függően.

Ha nem akarsz RESET után programot frissíteni, vársz egy másodpercet, vagy beküldesz valami baromságot a bootloader-nek soros porton, hogy lépjen ki.

Nálad:
- megveszel egy Arduino hardvert
- C#-ban megírsz valami cuccot, ami a soros portot kezeli
- azzal töltöd fel a saját kódodat, időnként a DTR-t kapcsolgatni kell

Én java-ban írtam feltöltő rutint saját magamnak.

MSDN SerialPort doksi itt
A hozzászólás módosítva: Márc 23, 2015
(#) Gj válasza csabeszq hozzászólására (») Márc 23, 2015 /
 
A C#-os részével nincs gond, a soros port rendben van, de köszönöm.
Inkább az AVR részében szorulok segítségre.

Nem szeretnék Arduino-t használni, (egyrészt méret, másrészt ár) ATMega8-on szeretném megvalósítani. Van rá már kész, nyilvános bootloader kód, amit beleégetek és aztán csak el kell neki küldenem soros porton a programot?
(#) Kovidivi válasza Gj hozzászólására (») Márc 23, 2015 /
 
Bővebben: Link Ne legyél rám mérges, de google rengeteg találatot kiadott. Nem kell egyébként Arduino lapot venned, bőven elég egy Atmega328, arra felrakhatsz egy általános bootloadert. Lehet eredeti Arduino, vagy valamelyik továbbfejlesztett is.
(#) killbill válasza csabeszq hozzászólására (») Márc 24, 2015 /
 
Idézet:
„Semmiképpen nem érdemes saját bootloader-t írni.”
Ez eleg durva kijelentes es szubjektiv is. Miert ne lenne erdemes? Miert jelented ki, hogy a bootloader soros kommunikacioval mukodik? En irtam mar tobbet is, es volt olyan, ami speciel SD kartyarol frissitett. Es kulonben is, ki beszelt itt Arduino-rol?
A hozzászólás módosítva: Márc 24, 2015
(#) zombee válasza killbill hozzászólására (») Márc 24, 2015 /
 
Megerősítem. Tervezek egy rádióhálozatos (akár lehet WiFi is) bootloadert valamikor a jövőben. Lényege hogy az AVR program ha megkapja a frissítő utasítást akkor az új programot betölti egy külső EEPROM-ba vagy SD kártyára. Ha minden oké(ellenőrzőösszeggel megnézi), akkor a sajátjában beállít egy bájtot és újraindítja magát(watchdog be, for(;; )). Ekkor indul el a bootloader ami megnézi azt a bizonyos bájtot és ha nincs beállítva akkor indul a "rendes" program. Különben betölti a külső EEPROM tartalmát a FLASH-be, ha sikeres akkor törli a jelzőbájtot és megint újraindítja magát. Ez minden, csak nem sorosportos...
A hozzászólás módosítva: Márc 24, 2015
(#) RoliNyh hozzászólása Márc 24, 2015 /
 
Sziasztok két villám kérdésem volna...
Feltelepítettem az Arduino 1.6.1 programot.

Beállítottam az ablakméretét, hogy a képernyő tetejétől a tálca tetejéig érjen.
Ha újraindítom, akkor az ablakméret jó is, csak a pozíció nem megfelelő. Beteszi a képernyő közepére, így a képernyő tetejétől az ablak egy fél tálcányi szélességnél lentebb van, az ablak alja meg belelóg egy fél tálcányi szélességben a tálcába, így nem látszik, mert eltakarja.

Valami beállítás van arra, hogy a képernyő tetejéhez pozicionálja az ablakot?

A másik, a program telepítési mappában van egy külön JAVA könyvtár. Gondolom a program használja. Meg lehet azt oldani, hogy ne ezt a JAVA mappában lévő JAVA-t használja, hanem ami már előtte fel volt telepítve a gépemre a C:\Program fájlok\JAVA\ mappában lévőt?

Elég érthetően fogalmaztam remélem....
Köszi...
A hozzászólás módosítva: Márc 24, 2015
(#) csabeszq válasza Gj hozzászólására (») Márc 24, 2015 /
 
Ízlések és pofonok. Szerintem 800 Ft nem drága egy Arduino nanoért, bár nekem 10-szer annyit megérne, csak hogy ne Atmega8 legyen. Egy rendes PCINT nincs rajta. Szerintem vegyél Atmega328P-t helyette. Ebay-en 450-ért kaptam.
A hozzászólás módosítva: Márc 24, 2015
(#) csabeszq válasza killbill hozzászólására (») Márc 24, 2015 /
 
A kolléga C#-pal szeretett volna kommunikálni.

UART-on kívül más nem jutott eszembe. Igen, lehetett volna V-USB-zni is, ha épp fakirnak született volna. Szóval UART-on optiboot-ot érdemes használni, nem érdemes újra feltalálni a kereket.
A hozzászólás módosítva: Márc 24, 2015
(#) Anthym hozzászólása Márc 25, 2015 /
 
Sziasztok!
A következő problémám adódott: Szeretnék egy olyan programot írni, ami az atmega8 külső megszakítását kezeli, oly módon, hogy amikor külső megszakítás generálódik, akkor egy AD konverzió hajtódna végre az ADC bemeneten. Úgy képzeltem el a megoldást, hogy a külső megszakítás függvényvbe írom be az ADC sorait, de valamiért csak akkor működik, ha egy potmétert kötök be az ADC-re, egyébként egy piezo kristály által generált jel amplitudóját szeretném lemérni vele. Attól tartok túl lassú az adc (lecseng a piezo jele, mire végbe megy az adc) Szerintetek mi lehet a megoldás? köszi a választ.
(#) vzoole válasza Anthym hozzászólására (») Márc 25, 2015 /
 
Első körben azt javasolnám, hogy köss egy tárolós szkópot a piezo jelére és az AVR egy kimeneti lábát a szkóp másik bemenetére.
ADC elején magasra állítod a kimenetet a végén pedig vissza alacsonyra.
Így pontosan látod milyen a piezo jele a mérés alatt.
A hozzászólás módosítva: Márc 25, 2015
(#) Anthym válasza vzoole hozzászólására (») Márc 25, 2015 /
 
okés, köszi, ez jó ötlet.
(#) csabeszq válasza Anthym hozzászólására (») Márc 26, 2015 /
 
Atmega328P (168/88/48) alatt lehet külső triggerről automatikusan indítani az ADC-t (INT0), az Atmega8-at meg elfelejteni.

Ez azt jelenti, hogy beállítod, hogy az INT0-on keletkező él automatikusan indítsa a konverziót, neked meg csak a végeredményt kell hallgatnod (ADTS) bitek.
(#) Gj hozzászólása Márc 26, 2015 /
 
Üdv!
A csatolt kép ennek a GPS modulnak a dokumentációjából van kiprintscreenelve. A pinkiosztást írja le, ez látszik a képen is.

Kérdésem:
Szükséges ezek közül mindent bekötni?
UART, antenna, táp oké, de mi ez a sok AGND, GND, GPIO, RSTN, stb...?
Ezek közül miket kell bekötni, hogy működjön?
A hozzászólás módosítva: Márc 26, 2015

Névtelen.png
    
(#) zombee válasza Gj hozzászólására (») Márc 26, 2015 /
 
A sok föld nem hiába van, kösd be mind és a tápo(ka)t is. A többit csak el kell olvasni mire való, majd eldönteni hogy használni fogod-e vagy sem. Az én GSM modulos szakdolgozatom is így készült...
Következő: »»   656 / 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