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
Koszi !
Megnezem.Pont jo lenne,mux miatt plane.
A nem megfelelő fuse bitekkel felprogramozott AVR-eket is lehet még programozni, méghozzá párhuzamosan, egy "igazi" Galep-pel. Nekem sajnos nincs, de suliban van.
Ha több "póruljárt" AVR-t összegyűjtötök, talán tudok segíteni, kiszedni a fuse biteket. PonyProg valóban csalóka, a pipa a 0. Üdv. deguss
Szia!
Engem érdekelne a dolog, nekem (ha kellően keresgélek) talán 3 db hentereg valahol.. TUdnál jönni skype-ra?
Szerintetek ezzel az IC-vel: ADS7841P ujra csak SPI-n lehet komunikalni?
Az a gondom hogy mar foglaltt az SPI. Mi johet meg AVR-nel szoba?
Szia!
Már biztos nagyon únod, de megint csak azt tudom írni, ha az SPI-d már foglalt, és mégegyre szükséged van, akkor a másodikat írd meg software-ben. Akkor te döntheted el, melyik portlán lesz a DI, DO, és a CLK. Ahogy néztem a pdf-t itt külön láb az input/output.
Szia !
Softwaresen.. azert nem szeretem mert az idozites (delay) egy rakas proci idot megesz. Mikor kell kitennni az adatot? Clock utan? Tehat egy orajelciklus utan kishiftelem az adatot? Szerinted mennyire lenne jo feszultsegmeresre ez az IC? Gondoltam referencia feszultsegnek rakok egy REF IC-t. 4 MUXolhato bemenete van. Sztereo tapot szeretnek epiteni, igy pontosan 4 feszt kellene merni.
Ebben az esetben a prociidő nem jelent problémát. Hány mérést/leolvasást akarsz másodpercenként?
Szerintem 2-nél többnek nincs értelme, mert úgysem tudnád szemmel követni. Ez méréseként 500mS idő. Ha 4 Mhz órajellel vezérled a procit, akkor ez az 500mS 2000000 utasítás. Nehogy már ennyiből ne jöjjön ki a softwares soros beolvasás Még nem sokat néztem, a pdf-edet, de kb úgy kell vezérelni, hogy előszőr leteszed a CS lábat nullára, beteszed egy regiszterbe a megfelelő 1 bytos parancsot, (le volt írva a bitek jelentése) majd shifteled CY keressztül balra vagy jobbra (attól függ, hogy az AD konvertered melyik bitet akarja elsőnek látni) Majd kiteszed az adatot, és ezután csinálsz egy FELFUTÓ (itt felfutó) élet a clk lábon ezt megimétled 8x. Ezután fogod tudni beolvasni a 8, vagy 12 bite konverzió eredményét (hogy mennyi bit lesz, és melyik bemenetről ez megint a parancsbyte-tól függ)
Közben nagyon "eretnek" gondolat jutott eszembe. 600 Ft-ért kapsz kész digitális multimétert a különböző zugpiacokon. Nem járnál jobban ha vennél 2 db-t?
Vagy fontos az építés öröme? Közben olvasom a pdf-t ha a mode labat födre kötöd, akkor parancsbyte-tól függetlenül 12 bites módba konvertál.
Idézet: „Közben nagyon "eretnek" gondolat jutott eszembe. 600 Ft-ért kapsz kész digitális multimétert a különböző zugpiacokon. Nem járnál jobban ha vennél 2 db-t?” Ugyan, hogy nézne már ez ki egy házigyártmány készülékben? Nagy multiméter nyák feleslegesen Az építés öröme és a kinézet is fontos.
Koszi a segitseget. Talan jovo heten tudok vele foglalkozni.
Azon is gondolkodom hogy MUX-al valahogy megosztom az SPI-t a ket ICnek.(vfd es adc) 600Ft-os muszer...Nezd, korabban emlitettem hogy VFDn akarom megjeleniteni az adatokat. Ezert irtam hozza drivert is. Ha mar arrol van szo, hogy multimetert veszek a l.tapba, akkor inkabb labortapot veszek. Nem ez a lenyege az egesznek
Szia!
Talán még a mux sem kell a megosztáshoz (csak agyalok) Szerintem mind a 2 IC-nek van CE (chip enable) bemenete. Ha erre van még 2 szabad portbited, illetve elég lehet 1 is és egy inverter, akkor meg tudod oldani, hogy az 1 db hardware SPI-d melyikkel kommunikáljon. Persze ha nem egyforma paraméterekkel beszélgetsz velük, akkor a bitrátát, és egyéb dolgokat mindig át kell állítgatni az éppen aktuálisra az Atmel procin. Egy jólnevelt IC-nél a chip select deaktiválása általában tri-state be teszi a lábakat. (de ehhez még böngészd a katalógust), igy mindig azzal tudnál beszélgetni amelyik éppen aktív. Lehet hogy a reset láb tiltása is ugyan ezt csinálja. A 2 mutiméter nálam is csak kósza ötlet volt, ezért is írtam az építés örömét, és a smiley-t a végére. Sok sikert, és várom az eredményt...
Szia !
Ez egy jo otlet ! Erre nem is gondoltam. Utanna nezek komolyabban. Ugyanazon a bitratan mehetne a komunikacio es valtogatni sem kellene(de ez sem gond), mert az ADC ha jol emlekszem 200Khz-et tud, a kijelzo meg 500khz-et. Az a gond hogy az LPCkbe nagyon beleakadtam, alig varom hogy mar vegre mukodjon egy LPCs fejlesztopanel. Ugy, hogy nem tudom melyik lesz kesz elobb.
LPC = PLC? Bocsi a tudatlanságomért, de fogalmam sincs mi az LPC Sajna megint itt a hétvége ami azt jelenti, hogy szinte nem is leszek gépközelben 2 napig.
Sziasztok!
Olyan kérdésem lenne, hogy Ti hol veszitek a mikrovezérlőket? Eddig csak a TavIR oldalon láttam pl ATMega8 az 800HUF volt., Az jó ár vajon? mert ha PIC akkor ChipCad, de ha AVR...? előre is köszi. Kocsgab
Vagy http://www.ret.hu, van boltjuk Pesten is
Üdv
A minap találtam az atmel oldalán egy kis c programozás segédletet. A leírás az IAR C compilerére vonatkozott, de elkezdtem játszogatni a leírtakkal avr-gcc alatt (4.0.2), az eredmény szerintem nagyon hasznos
a PORT itt most a PORTD -t jelenti, igy szerintem sokkal könyebb a biteket ki be kapcsolgatni! a compiler pedig sbi, cbi nek fordítja, tehát a kód méretén és bonyolultságán semmit nem változtat. Remélem hasznát veszitek! Üdv mindenkinek jav: miért nem jelenik meg jól? csatolva az eredeti forrás.
Hello !
Ezek a bitmezok..Regebb hasznaltam ilyesmit PC-n. Latod meg nem fordult a fejemben hogy AVR-en hasznaljam. Igaz nem is lattam eddig ertelmet. Az SBI, CBI sem minden esetben muszaly az legyen. Altalaban jo a fordito altal nyujtott kod is, csak mukodjon
Egy ket fontos dolog ezzel kapcsolatosan:
-A mezo tipusa csakis unsigned int lehet.(legalabbis a szabvany szerint) Lehet elojeles is, de akkor az adott bit erteke erteke 0 vagy -1 lesz. -Az adott mezo hossza max int szeles lehet.
Ahhoz, hogy pontosan a bitek mereteinek osszege -helyet foglaljon le a fordito "struct __attribute__ ((__packed__)) my_packed_struct" alakot kell alkalmazni. (ansii C) Ez pl. pontosan 24 bit helyet foglal.
Kernel -kodokban eloszeretettel hasznaljak.
Belejavítottam a hozzászólásotokba utólagos engedelmetekkel.
Használjátok programkód beszúrásánál a [ c o d e = c ] kód [ / c o d e ] tagokat. Üdv. deguss
Örülök, hogy valóra tudtam váltani valaki álmát. Áhh, Topi Mester fejlesztése.
Arról, hogy valaki belejavítson a hozzászólásodba?
Most minek kell felreerteni?
Arrol, hogy vegre rendesen megjelenjen a forraskod.
Hello!
RS-232-n küldök folyamatosan egy rövid szöveget a PC-nek ATtiny2313-ról, de nem azzal a BaudRate-tel jön, mint kéne. A fuse bitekkel beállítottam, hogy 4-8 MHz külső kristály oszcillátorról menjen, de az adatlapon szereplő UBRR értékek nincsenek összhangban a kijövő baudratekkel, mintha nem 1MHz,nem 4MHz és nem 8MHz-ről menne (próbáltam 4 és 8 megás kvarccal is). A fuse biteknél nem teljesen értem mit csinál a CKDIV8 és a SUT10 bit beállításnál mire jó a BOD enabled. Esetleg ezek zavarnak be vagy mi lehet még a probléma? köszi
Szia Zeusz!
A legvalószínűbb, hogy a CKDIV8 (ClocK DIVision) neked aktivizálva van. Ez azt jelenti, hogy a quartz jelének csak 8-adával megy a procid. Ha a feltételezésem igaz, akkor a baudrate is nyolcada a vártnak. Ezt a bitet váltsd át és (szerintem) helyreáll a sebességed.
köszi, közben magamtól pont ezt csináltam, de inkább csak belső sugallatra és most működik
Nem nagy ördöngősség, a pdf-ben le van írva.
Bár a paralel programozás is ilyen világos lenne! |
Bejelentkezés
Hirdetés |