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
Köszönöm szépen! Délután megnézem, és informállak titeket, hogy mi miatt van reset!
Mindig tanul valamit az ember
Sziasztok,
128-as atmegához illesztek éppen lm-75-ös i2c hőszenzorokat. Az oké, hogy a buszra többet is fel lehet tenni, de megoldható hogy még egy RTC is legyen rajta amiből kiolvasom az időt ?
Ha mindegyik más címen van akkor semmi akadálya!
Kettő db lm75 és egy ds1307-es rtc-vel csináltam én is egy hő- és időmérőt, menti naponta a legalacsonyabb és legmagasabb hőmérsékletet időponttal, ha már óra is egyben... ) RTC-nek általában fix címe van, legalábbis ennek a ds nek. az LM75-ön tudsz változtatni. Beleszaladtam olyan hibába, hogy RTC nagyon lassan megy hűtő tetején Vagy a kristály nem bírja a hűtőt vagy az elem, talán az utóbbi...
Sajnos nem tudom az itoa-t működésre bírni, pedig elolvastam a leírását.
'14' helyett egy 'Ú' jelenik meg a hiperterminálon.
Egyfelöl használd a szimulátort, nem fogod megbánni, másfelől nem is működhetne így a kódod.
Első képen látszik, hogy az itoa köszöni, jól működik. Itt:
Gondolom dob eleve egy warningot is. És igen, lásd második kép Helyesen így lenne:
vagy
Tehát te tulajdonképpen a buffer változód memória címének az első byte-ját küldted ki az UARTon. Nézd meg itt az 5-ik fejezetet. C programozási nyelv A hozzászólás módosítva: Okt 26, 2012
Hali!
Atmega168pa-t használok, hogy kell beállítani, hogy aszinkron módon küldjön a uart? Sajnos nem találok olyan regisztert...
De az MCU adatlapján is le van írva a 192. oldal kötül. A hozzászólás módosítva: Okt 27, 2012
Köszi!
Találtam egy ilyen pdf-et közben: http://www.gaw.ru/pdf/Atmel/app/avr/AVR094.pdf Leírja benne, hogy lehet átportolni egy atmega8-as programot atmega168-ra!
sziasztok!
Neten ami felelhetö sample kod ds18b20 szinte ugya az a hibajelenséget produkálja a ds18b20 szériája ami hozám került egy vásárláskor! Vagyis valos 24C környezetben -32 c ad visza monitorozás közben soros porton növelem a hömérségletet a ds18b20 chip körül a -32c az csökkenö értékbe zuhan ahogy a videon is! ds18b20 mérési hibba Bele szalatam volna egy hamisitot szériába? ds18b20 normál modban használt 1 gnd 2 out 3vcc 2..3-láb 4,7K közöt
Felraktam a linknél a forrást kodot is bele néznél?
Nagyon kezdö vagyok C# ben!
Üdv!
Egész jól megy az adat fogadás és küldés a MCP23s17-el. Most az interruptját szerettem volna használni csak egy gondba ütköztem. Az adatlap szerint, ha kiolvasom vagy a INTCAPn vagy GAIOn regisztert, akkor az intterupt reszetteli magát. Egyszer ki tudom olvasni az adatot, akármelyik lábat aktiválom. A gond, hogy az interruptja nem esik vissza 0V-ra, hanem fenn marad 5V-on.
Sziasztok!
Építettem egy avrdopert, ami a kapcsolások közt van, és a vezérlő felprogramozásában szeretném a segítségeteket kérni. A hex beégetését avrdude val megcsináltam, vissza is olvastam, az rendben, de a fuse biteket nem tudom hogy kell a dude parancssorral belőni. A következőkre lenne szükségem: Külső kristály oszcillátor, SUT legmagasabb, BOD disabled. Ki tudna segìteni valaki ennek a szintaktikájával? Eddig ennyi van meg, ezzel égettem be a hex-t Avrdude -p m8 -c stk500v2 -P COM5 -U flash:w:avr_isp.hex Megpróbáltam így is éleszteni a szerkezetet, de a windows nem tudja felismerni az eszközt így nem erőltettem. Ez lehet a hiányzó fuse bitek miatt? Előre is köszi
Hohó, ez király, köszi szépen!
Be is ment a kedvencekbe. Este megpróbálom, remélem, csak ennyi volt a gond.
Valakinek valami ötlete, hogy mi lehet a baj?
Még azt tapasztalom, hogy ha az AVR interrupt és az MCP23S17 interuptját megszakítom, amikor folyamatosan 5Vot ad az MCP, majd ismét összekötöm őket, akkor megint fut a program a következő beolvasásig. A hozzászólás módosítva: Okt 29, 2012
Most én nem értem vagy senki sem?
És tényleg.
Most, hogy már tudom a beállítandó értékeket, értelmet nyert az élesztési leírás csatolt képernyőfotójának alsó szegmense: Bővebben: Link Köszönöm neked is, és bocs a lámaságért, de épp csak elkezdtem foglalkozni a témával, még minden info új. Eddig csak egy ledvillogó hexet írtam bele egy attiny13-ba sikeresen ponyproggal, soros égetővel, de ott nem kellett FUSE biteket matatni a sikerhez. Közben megtaláltam az avrdude szintaktikát is: -U lfuse:w:0xff:m -U hfuse:w:0xd9:m Remélem, ezzel már sikerre viszem a dolgot, mert a mostani gépemen már nincs soros port, kénytelen leszek ezt az USB-s avrdopert működésre bírni.
Én sem értem.
Bocs, megfogalmazásban nem vagyok valami jó.
AVR: ATMEGA8535 MCP: MCP23S17 Azt szerettem volna elérni, hogy ha az MCP PORTA-jának valamelyik bemenetére(GPA0-7) logikai 1-et (5V-ot) adok, akkor az MCP beépített interruptja szintén logikai 1-et küldjön (INTA-n keresztül) az AVR egyik (INT0) bemenetére. Ezzel eddig nincs is gond. Ha 5V-ra elemel az egyik bemenetet, akkor megkapom a jelet, az AVR interrupt rutinja lefut és itt jön a csak/de: ezt csak egyszer végzi el. A problémám, hogy az INTA logikai 1-en marad. Az MCP adata szerint (ha jól értetem), amikor kiolvasom vagy az INTCAPA vagy a GPIOA regiszter utolsó bitjét, akkor az interruptnak vissza kéne állnia logikai 0-ra. Úgy tűnik ezt nem hajtja végre. Eddig két félmegoldást találtam: 1 reszettelem az egész áramkört (AVR, MCP) 2 megszakítom egy picit az AVR és az MCP közötti INT0-INTA összekötést, majd ismét összekötöm őket A 2. rövid megszakítással elértem, hogy az INTA visszaessen logikai 0ra, így az interrupt ismét üzemképes. Ezt csak azért nem használnám, mert így kénytelen lennék egy kapuzott-tároló? (gated-buffer) használatára, ami mellé még egy lábat fel kell használnom az AVRből. Remélem most már sikerült közérthetően megfogalmaznom problémámat. A mellékelt kép nem teljes!
zsuscsinyo, zombee:
Köszi a segítséget, megoldotta a problémát. Így már rendesen működik.
Üdv Mindenkinek!
Alkalmi munka lehetőséget szeretnék ajánlani. C8051 f04-et kellene assemblyben programozni. Kettő kártya lenne ugyan olyan procival Master és slave. Silabs fejlesztő környezetben minden adott csak nem értek hozzá. Feladat: Master kártyán gomb nyomásra a portról beállított értéket CAN sínnel küld slave-nak és analóg fesz kiadására utasítja. Master kártya megméri, hogy mekkora az eltérés a kért és kapott fesz között. Az eltérést küldi slave-nak előjeltől függően ledet kigyújt és az értéket 8 bites ledsoron megjelenít. Ha akad olyan jelentkező aki össze tudja hozni a programot annyi pénzt fizetek neki amennyit csak szeretne. Előre is köszönöm. svandras0404@freemail.hu
Csak nem Mikrokontroller Laboratórium lesz?
Az én (megoldott) házim eredménye a csatolt képen látható.
Sziasztok
Kicsi segítséget szeretnék kérni egy ATMega 328 vezérlőt szeretnék megírni már meglévő programmal milyen eszközökkel, milyen lehetőségeim vannak rá mert kimondottan ezt a megnevezést egy írónál sem találom Előre is köszönöm
A lehetőségek szinte korlátlanok, soros, párhuzamos, USB porti írókkal (mindből van kismillió változat), arduino-val, illetve Szoftveresen pl ponyprog, avrdude, avrstudio, stb.
Ha van a gépeden soros port, egy ilyen írót 200 forintból ki lehet hozni: Bővebben: Link De ha később is tervezed, hogy AVR-t programozol, akkor érdemes egy USB-s hardverben gondolkodni, az gyorsabb, és újabb gépeken is működik, amin már nincs soros port. Ha nem szeretnél ilyet, akkor kérj meg valakit, hogy égesse be a szoftvert.
atmega168pa+ds1621
Hőmérsékletet próbálok lemérni, de nullát kapok vissza! Miért? Ezt kapom vissza: +00.0 SDA, SCL lábon 2,8K-s felhúzóellenállások vannak.
A hozzászólás módosítva: Okt 31, 2012
Kapcsolási rajz hozzá
Nem hiszem, hogy annyi mindent el lehetne b@szni Olvastam egy ilyet, hogyha 00 a válaszjel akkor SDA vonal GND-re húzva. A hozzászólás módosítva: Okt 31, 2012
OK, meg van oldva!
TWBR értéke rosszul volt beállítva! |
Bejelentkezés
Hirdetés |