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
Pont ezen filóztam, mármint a CLKDIV8-an.
Próbáltam 4kHz-el is olvasni, de akkor sem adott eredményt, pedig elvileg úgy megfelelő az órajel. Ez mitől lehetett? Persze nyilván nem lényeges, csak szeretnék tisztában lenni vele hogy hogy is működik a programozó.
Sziasztok
AVR Studio telepítésében kérném a segítségeteket. A telepítés a vége felé megszakad a
hibaüzenettel. Miért nem megy fel? Köszi a segítséget
Mert Service Pack-ot telepítettél csak. Ne service packot telepíts, hanem AVR Studiót.
köszi megnézem
Sziasztok.
Az AVR Studioban a Fuseban 16MHz-es Kvarc esetén mit állítsak be, Low Freq, Medium Freq, vagy High Freq? És mennyi legyen a Start-up time? Most High freq-n van és Strat-up 16K CK + 64ms ez jó? És még egy kérdés a videóban. ![]()
Van egy autóba való vízhőmérőm, ami ellenállás változással reagál a hőmérséklet változásra, erre kellene nekem összehozni egy kis alkalmazást ami egy bizonyos ellenállás fölött kapcsol egy ledet (ellenállásérték egy változóban konstansként beállítható legyen).
Hogy lehetne ezt összehozni AVR ATtiny45-el? Illetve lenne -e aki vállalná ennek a programnak az összehozását pl: Topi egy újabb nyolc lábbal részben. Némileg tudnám szopozorálni 1-2 ezressel az újabb részt ha ez belekerül! ![]() Flowcode-al próbálkoztam, de hiányos tudásom miatt nem igazán megy a dolog ![]() Vagy ha esetleg tudtok egy ilyen programrészletet/leírást ami alapján össze tudom hozni azt is megköszönném. mokus
Köszi Topi megnéztem, és ok. Enyém a világ!
![]() ![]() ![]()
16MHz-es kristály High Frequency.
Start-up timer értéke, ha nem kritikus az indítási gyorsaság, lehet a legnagyobb. 16000*(1/16000000) => 1ms + 64ms = 65ms az indulás. Ez a StartUp arra vonatkozik, ha a kristály lassan kezd berezegni (mert hogy az alacsonyabb frekis vagy rezonátorok lassabban rezegnek be (több az az idő, mire elérik a dedikált frekit, lecsökkenve a felharmonikusok).
Már készül a harmadik rész, nagyon jópofa lesz, de van benne egy 12 LED-es hőmérő is.
Ez azért nagy dolog, mert megmutatom, hogy lehet 4 lábon 12 LED-et teljesen egymástól függetlenül vezérelni. Erre még a multiplexelés sem képes.
Örülök ha működik. Azzal azért próbálkozzál, hogy megérted közben mi-mire való. Megpróbálod átírni, kipróbálod mit csinál, ha ez-és ezt máshova teszed, vagy máshogyan írod.
Sziasztok!
Szeretnék érdeklődni, hogy mi a véleményetek az alábbi "jónak tűnő" ATmega48/88/168 Development Board-ról? Találkozott már vele valaki? Development Board Még kezdő vagyok az AVR-ek terén így gondoltam megépítem a panelt hogy lehessen min gyakorolgatni. Üdv!
Sziasztok!
Elég régóta nem foglalkoztam már AVR-ekkel, és most elkövettem azt a hibát, hogy összeraktam egy házilag maratott kétoldalas smd áramkört, de a mikrokontroller (mega8) nem éled fel. Eleinte volt pár kontakthiba, és lehet hogy véletlenül tápfeszültség nélkül is próbáltam programozni. AVRStudio 4-et használok AVRProg 1.4-gyel. Device ID-nek FFFFFF-et ír ki, tehát nem ismeri fel a csipet. Ebből én arra következtetnék, hogy még mindig van valami érintkezési hiba, de mindent átnéztem már, és nem találok semmit. A kérdésem tehát az volna, hogy lehet-e, hogy tönkrement a mikrokontroller? Vagy van-e valami jó módszer, hogy rájöjjek a hibára?
Ohh... Na az nagyon jó lesz! Szeretem ezeket az egyszerű leírásokat! Főleg, ha jó sok komment van a forráskódban.
Flowcoddal is meg lehetne mutatni ezeket az egyszerű példákat! Viszont még nekem mindig fennáll ez a problémám. Ki tud ezen segíteni, ki vállalja el olcsón, hamár én nem tudom megcsinálni. Illetve ki juttat közelebb a megoldáshoz? Idézet: „hogy lehet 4 lábon 12 LED-et teljesen egymástól függetlenül vezérelni. Erre még a multiplexelés sem képes.” ![]() ![]()
Igen, most nem is tudom hogy hogyan tovább, a cben mélyedjek el, vagy az atiny45 pdfjét olvassam? ötletem van, de nem mondom el, mert én szeretném megcsinálni. A tanulással kapcs, c minta fileok hol találhatók? nem olyanok amilyeneket átemelhetek, hanem amiből tanulni is lehet?
Azt gondolom a c nem olyan veszélyes, elvégre informatikus vagyok, és bár megkopott a cém, de azt nem gond leporolni
Nagyon egyszerű! Pont úgy, mint egy 3x4-es mátrixba rendezett billentyűzetet is lehet 4 lábon eszközölni...
Valami furcsa dolog történik avr studio alatt. Megint elöszedtem a matrixkijelzömet fejlesztési céllal. A föprogram végtelen ciklusában nincs semmi, timer0 tulcsordulásakor a megszakitásban végzem el a megfelelő frissitéseket. Minden szép és jo, kijelzés homogén nem látszik a frisités miatti vibrálás. Namost, aktiváltam az SPI-t
![]() Idézet: „Nagyon egyszerű! Pont úgy, mint egy 3x4-es mátrixba rendezett billentyűzetet is lehet 4 lábon eszközölni...” Na, ezt akkor megvárom. Hogy is van a 3x4-es matrix négy lábon? A tudomány mai állása szerint egy 3x4-es billentyűzethez 4 sor + 3 oszlop = 7 láb szükséges... minden külső hardver nélkül. Valami nem oké a gondolatmenetedben. Matrix eleve felejtős.
De minden külső eszköz nélkül! SPI kilőve.
Csak összefoglalom. Matrixra gondolni, eleve hibás, mert ott 4 lábnál 2x2-es mátrix vezérelhető, ami bárhogy is számolom 4 LED... SPI kilőve. Nincs külső eszköz... Na hajrá, indul az agytorna. n lábon (n^2)-n LED vezérlése feladat. 4 lábon 12 LED 5 lábon 20 LED 6 lábon 30 LED 7 lábon 42 LED Na, mi a trükk... Várom az ötleteket!
Alakul, lassan tudunk mindent ami segít a megoldásban
![]()
[off]Utánanézhetsz, egyébként nem, sok helyről hallottam már ilyesfajta trükköket az életben
![]()
Jó persze elhiszem, csak nagyon egybevágott a dolog, és összekombinálta az agyacskám
![]()
Továbbra sem értem. Csak akkor vágja tönkre magát ha slave-nek konfigurálom az SPI-t. Masternak ha bekapcsolom semmi baja.
![]()
SPI CLKRate? Vedd visszább, tedd nagyra az előosztást.
Ha továbbra sem oké, akkor azt próbáld ki, hogy a masteren, az SS lábat KIMENET-nek konfigurálod. Fontos. Egyszer, nagyot szívtam. Mint az adatlap is, rejtetten leírja, hogyha masterként használod akkor a master-enable FÜGG a SlaveSelect-től. Ha a SlaveSelect láb bemenet, és hagyod a levegőben lógni, nem generálódik SCK és beragadhat a végrehajtás! Nem értem mi értelme van, de master módban ha a slave-select bemenet, akkor függővé teszi tőle. Idézek: Idézet: „When the SPI is configured as a Master (MSTR in SPCR is set), the user can determine the direction of the SS pin. If SS is configured as an output, the pin is a general output pin which does not affect the SPI system. Typically, the pin will be driving the SS pin of the SPI Slave. If SS is configured as an input, it must be held high to ensure Master SPI operation. If the SS pin is driven low by peripheral circuitry when the SPI is configured as a Master with the SS pin defined as an input, the SPI system interprets this as another Master selecting the SPI as a Slave and starting to send data to it.” Slave esetén, beragadó ACK lehet hibás. De jó lenne, ha specifikálnád, mit ad a master. Ha Slave-ként konfigurálod, de nem teszed rá a buszra akkor is beakad?!
Most jövök vissza épp akartam kérdezni. Ha az SPI t slavnek deklarárom akkor az SS magátol bemenet lessz? Itt van a kutya elföldelve. Hamar költöztetem is az adatvonalat arrább.
![]() |
Bejelentkezés
Hirdetés |