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
Egy apró kérdésem lenne. Atmega8 timer2 pwm. Elvileg a ha a TCRR2 regiszterben beállítgatom a dolgokat és az OCR2-nek értéket adok meg, akkor mennie kellene, nem?nekem most így van, de nem jó, valamiért megáll a program az OCR2 értékadásnál és nem lép tovább.
Így van beállítva. Ez egy elektronikus sebességmérőt működtetne, tehát ezzel szépen fel kellene mennie max értékre.
És így adtam értéket az OCR2-nek.
Üdv!
Tudnátok valami olyan oldalt, ahol levannak írva kezdőknek az alapok, megszakítások, elágazások, késleltetés stb esetleg magyarul? (atmega 128). Segítséget előre is köszi.
Sikerült megoldani, igazából nem tudom mi volt a hiba, de most megy. Annyi biztos, hogy a mérőt fordítva kötöttem be, de hogy miért állt meg a program ott, arra nem jöttem rá, de mindegy is, mert szépen megy.
Üdv Zombee!
Köszi a választ. Ugyan ilyen kártyát kellene programozni Kandós feladat Nagyon jól jönne egy kis segítség. A kártyán lévő CAN-t kellene be progr. a többi talán menne. Abban tudnál-e segíteni, hogy a Master kártyán 8 biten beállított érték alapján a slave kártyának analóg feszt kellene kiadnia. A 8bites értéket kellene CAN -al átvinni. Előre is köszi svandras0404@freemail.hu
Sajnos nem tudok segíteni, CAN busszal életemben nem foglalkoztam. Ami volt azt is elfelejtettem.
A házim (meg a megszerzett kredit) az egyetlen nyoma hogy valaha foglalkoztam C8051-el... A hozzászólás módosítva: Nov 1, 2012
Üdv
Van valaki esetleg ért az AVR programozáshoz....? van nekem egy *.pde / *.ino file-om ez a teljes program amit magára rá kell égetni a AtMega 328 ra vagy ehhez kell még valami....? Ill van egy Khazeama AVR programer - és USBasp programozó hiba üzenetet ir ki a az égetésnél ill a chip törlésnél ( Error Setting USBASP ISP Clock... )
Hello, bocs ha nem ide illo a kerdes ebben is van AVR. Kb fel evvel ezelott csinaltam egy vonal koveto robotot. Most ujra elovettem es par masodperc utan ugy csinal mintha lemerult volna az elem(9v-os). Probaltam masikkal is de ugyenez a helyzet, sot meg dugasztapal is. Nem bonyolult a felepitese, a motoroknak is csak 2 tranyo van. Probapanelen van osszerakva, programkodom mar nincs meg, ezelott meg mukodott.
Orulnek ha valaki segitene mert nekem mar nincs otletem mi lehet a problema.
Rossz a forrasztás valahol.
Kosz a gyors reagalast. Azt vettem eszre hogy az avr "bolondul" meg. Peldaul van egy led ami azt jelzi hogy vonalon van, egy kis ido utan ez is elkezd gyorsan villogni mintha az egesz avr belassulna. szerintem az orajelekkel lehet valami gond mert csak azt valtoztattam meg mivel az atmega8 mashol dolgozott. Most visszaallitottam belso osszcillatorra.
A hozzászólás módosítva: Nov 2, 2012
Találtam egy ilyet: (ds1621 hőmérőhöz)
Az actualTemp változó után nem nagyon tudom értelmezni. Egyszerű a magyarázat: Nem tudom, milyen értéket van a actualTemp .Tudom, hogy float, de azon belül? (Hány tizedes jegy van). Próbáltam kiíratni uart-al de nem sok sikerrel! Köszönöm előre is a segítséget! A hozzászólás módosítva: Nov 2, 2012
A pde es az ino fajlokat az Arduino hasznalja. Azzal kell leforditani es csak utana tudod beegetni az ATMega 328-ba.
A kód Arduino-hoz van. A pde az a -0023-hoz, az ino meg a 1.x verzióhoz. Az 1.x esetén upload via programmer sorral a programozóval is feltölthető a chipbe a kód...
Ha érdekelne 60 napos ingyenes tanfolyam Arduinoról, akkor Katt ide!.
Rendben köszönöm a segítséget, de elvileg ha feldugom magára az Arduino programra a chip-et akkor csak egy szimpla feltöltéssel meg is csinálja a felírást? ( az eepromot is és a flesht-is? )
És a hiba üzenetet mitől dobhatja ki? És az a program amit mellékeltem az előző kommentben az elegendő a feltanításhoz? Válaszodat előre is köszönöm Idézet: Szerintem erre csak a bootloaderrel előzetesen beprogramozott Arduino kártyák vannak felkészülve. Más esetben szükség lesz egy programozó készülékre is. „ha feldugom magára az Arduino programra a chip-et akkor csak egy szimpla feltöltéssel meg is csinálja a felírást?”
Az Arduino 1.x alatt 2 feltöltés van:
- Upload to board (bootloaderes) - Uload via programmer (ez kell neked, ekkor programozón át tölti fel)
Sziasztok!
Mi a lényegi (főként programozás szempontjából) különbség egy P és egy PA AVR között? Az én esetemben konkrétam atmega324p és atmega342pa. Én az adatlapon nem láttam vagy nem vettem észre különséget, de a gcc regisztrerek neveinél nyavajog, hogy nem azonosak. Viszont 324pa-t 324p beállításaival programoztam avrstudio4-ben és nem tapasztalok semmit.
ATMega324P és ATMega324PA?
Elvileg azonos. A kisebb csíkszélesség van csak ott. Fordítsd le a kódot a 324P-re és utána a PA-ra simán beégetheted. (HEX azonos, ChipID eltér!) Viszont a ATMega324A és ATMega324PA eltér! A P a PicoPower technológiát jelenti. http://www.atmel.com/Images/doc8190.pdf
Programozás szempontjából semmi(studio6 esetében már sokan panaszkodtak rá), a signature is azonos.
Sziasztok!
Végül nem használtam kapcsolóüzemű tápot az AVR-hez hanem lemezes trafó+egynirányító+puffer+7812+7805. A gondom az, hogy bekapcsoláskor néha az SPI-re kötött shift-regiszteren keresztül bekapcsol az összes relé. Más kimeneten még nem találkoztam bekapcsoláskori rendellenességgel. Mivel a hardweren már nem tudok módosítani így azt kérdezem, hogy szoftveresen van-e valami lehetőség? Tettem a kódba 3000ms várakozást minden elé, de ennek ellenére néha mégis bekapcsolnak a relék.
Milyen típusú shift regisztert használsz? Illetve a kapcsolási rajzod is jól jönne...
A hozzászólás módosítva: Nov 5, 2012
74hc595 SMD. Nem készítettem külön kapcsolási rajzot hozzá. Annyira nem bonyolult. Erről van szó:
Bővebben: Link A hozzászólás módosítva: Nov 5, 2012
A kapcsolási rajzra azért lenne szükség, mert akkor meg tudom mondani, hogy mit tehetsz... Bár anélkül is, igaz.
Amit belinkeltél adatlapot, annak tekerj a harmadik oldalára, ott találsz egy táblázatot, annak a második sorát kell figyelembe venned. Két lehetőséged lehet arra, hogy a bekapcsolási szemét ne kerüljön ki a relékre. 1.: Lehúzó ellenállásokat teszel az /OE és /MR lábakra. 2.: A NYÁK feliratok alapján úgy látom, lesz benne majd LCD. Az AVR órajelét úgy állítsd be, hogy a leghamarabb elinduljon a proci, és az első funkciók között az legyen, hogy ezt a két lábat alacsonynak állítod programból, így talán nem lesz a reléknek idejük meghúzni. Ezután LCD inicializálás és a többi...
Most így indul a program main:
Akkor itt próbálok változtatni. 16 MHz-en kellene, hogy menjen amúgy a proci.
Valami ilyesmire gondoltam, mint a csatolmányban.
Azt a 4 másodperces késleltetést dobd ki onnan, ha szükséges valami miatt ekkora a késleltetés, az később legyen. C-ben nem tudom, hogyan vannak a dolgok, de sorrendileg: - Bekapcsolás - Proci elmegy RESET vektorra, SP inicializálása (innen ugrik ugye vissza a program legelejére) - Megfelelő port(lábak) kimenetnek állítani, majd alacsony szintre kapcsolni - Minden más...
Megpróbálom a Fuse bit-et átállítani mert úgy emlékszem más beállítás van nekem.
Még régebben készítettem egy programot, ami a relé kapcsolási idejét méri... Ebből látszik, hogy ez a típus ~5ms alatt kapcsol be, fogjuk rá, hogy ennyi körül van a tied is, bár elvileg az adatlapjában benne van. Arra kell törekedned, hogy ennél kevesebb idő alatt a relét már kikapcsolt állapotba tedd bekapcsolástól számítva.
Bővebben: Link
Hello!
74hc595: sajnos reménytelen, ez minden bekapcsoláskor "villant" egyet. Fél éve nekem is volt hasonló problémám(USB interfészt építettem) és akármit csináltam vele, le-meg felhúzó ellenállásokat kötöttem a /MR meg /OE bemenetekre, bekapcsoláskor ígyis-úgyis felvillantotta az összes LED-et! Azért nem teljesen reménytelen a dolog. Ha maradsz a 74hc595 mellett, akkor a relék közös pontját szakítsd meg, iktass be egy bipoláris tranzisztort amit az AVR-ről vezérelsz. Indításnál - ahogy a kolléga említette - az AVR várjon minimum 5ms-t amíg a shift regiszter "beáll". Az én cuccomba egyébként a végén más típusú shift regiszter került(74hc164)... A hozzászólás módosítva: Nov 5, 2012
Mivel a hardweren már nem szeretnék módosítani így ez marad. Ez úgyis csak prototípus. A következőnél figyelembe veszem amiket írtatok. Köszönöm!
Sziasztok. Nem tudjátok, itthon létezik valamilyen bascom tanfolyam? És ha igen mennyiért?
|
Bejelentkezés
Hirdetés |