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
Sziasztok! Kínai STC89C52RC IC-hez keresek konfig és programozó fájlokat, programokat. Kínai változat van, de a kanji nem az erősségem. Tudna valaki segíteni? Megküzdött ezzel már valaki? Nagyon olcsó mikrokontroller és sok egyszerű feladatra tökéletesen megtenné. Csak olyan írjon, aki kifejezetten ezzel a típussal találkozott, a google keresések javán túl vagyok, konkrét megoldást keresek.
Mármint? Nekem csak "homemade" programozóm és eszközeim vannak, lehet azért nem teljesen világos. Mármint terveztek egy normál is csatlakozási lehetőséget az smd-s nyákra, és nem a beépítés előtt programoztok?
A hozzászólás módosítva: Ápr 13, 2014
Paritás bit 1, Adatbit 8, autobauding van tehát magától szinkronizál.
Annyira eljutottam most hogy a modul bekapcsol rendesen. Az Rx Tx lábat keresztbekötöttem az USB-s átalakítóval és a képen látható adatokat küldi bekapcsoláskor. Mi a probléma?
Igen, szabványos isp6.
SMD-t a céláramkörben programozom. A hozzászólás módosítva: Ápr 13, 2014
Még széria gyártásban is utólag beültetés után van programozva az SMD proci. Nálunk a beméréskor a teszt-tűágyra helyezve kapják meg az áramkörök a programot. Vannak olyanok amik a tűágyas teszt idejére tesztprogramot kapnak, majd a teszt ciklus végén az eredeti programot.
A hozzászólás módosítva: Ápr 14, 2014
Sziasztok, van egy LC mérö rajzom ami 1uH-0.5mH tartományba mér, az lenne a kérdésem hogy lehet-e ezt a tartományt növelni valamilyen módon, vagy ahoz teljesen más rajz és más programozás kell ?
A válaszokat elöre is köszönöm.
Építsd meg az LCM3 készüléketItt találod. Vagy egy másik,hogy az atmegánál maradjunk,itt találod.
Szia, megépitettem szimulátorba (Proteus 8) ezt a kapcsolást amit ajánlottál, de a kijelzön nem látszik semmi, ez gondolom azért van mert a külsö 20Mhz-es oszcilátort kellene használni, nem pedig ami az atmega8-ba van.
Hogy tudnám használni a külsö oszcilátort a szimulátorba ? az atmega8-ba a beálitásokba van lehetöség külsö oszcilátor használatára, de ha beálitok egyet, rögtön hibát ir ki (CKSEL fuse bits specify external oscillator but no CLOCK frequency is specified). Hogy lehetne beálitani az atmega8-at hogy használja a külsö oszcilátort ? A hozzászólás módosítva: Ápr 16, 2014
Szeretnék egy olyan fényerőszabályzót építeni attiny45-ből vagy efféle kis eszközből, ami egy fényérzékelő és egy ledsor segítségével állandó megvilágítást tart egy területen. (monitor háttérvilágítása) A kínaiaktól vettem egy kis fénymérő panelt azt szólítaná meg a uC.
Tudtok valami linket, hogy miképpen kell egy ilyen szabályzó algoritmust C-ben megírni ami belefér egy ilyen kis eszközbe?
Ilyen kis eszközben inkább ASM-ban irnám.
Pl. itt van valami hasonló: Ledline Intensity control for LEDs with ATtiny13 Bővebben: Link
Tudom hogy reggel van, de sikerült a saját E:\ meghajtódat belinkelni.
Üdv!
A mai nap egy ATmega1284P-vel történő SD kártya kezelésével szerettem volna megismerkedni. Hogy lássam mit is csinálok, hol akadok el, a parancsokat HyperTerinalban kiíratom magamnak. A gond nem váratott sokat magára. Egy tesztelő ciklust szerettem volna létrehozni az R1 (Response 1) adat tesztelésére. Elsőre egy if loop-ot hoztam létre:
A gond, hogy ekkor csak azokat a válaszokat írja ki, amik nem egyenlőek 0x01-el. Ekkor while-ra gondoltam, de hamar rájöttem, hogy ez sem lesz jó. Majd beugrott a do{}while(); ciklus:
Ez azonban valamiért nem áll le nekem, még ha R1 == 0x01. HyperTreminalban ezt kapom:
Még nem használtam ezt a hátultesztelős(jól tudom, hogy így hívják?) ciklust, szóval valamit elírtam? SB
Ok ez a probléma megoldva.
Sziasztok!
Soros porton szeretnék egy szót küldeni a pc (pl2302 usb - rs232 konverter) felé. Az alábbi függvényt írtam meg és nem jelenik meg a pc-n amit küldök az avr-el:
Viszont az
kombóval visszaküldi amit elküldök neki. Mi a gond a függvényemmel?
Nem tudom mi a baja, de talán egy tömböt nem kéne áttolni a stack-en.
Ez megy:
Köszi! Megy. Fogadásnál hogy fogadsz egész szót?
Sziasztok
Van egy mega644 AVR-em 4MHz-es kvarccal és most jelentkezett egy olyan probléma, hogy valamiért nem érzékeli a kvarcot. F_CPU-nak hiába definiálom a 4MHzet az időzítéseket 1MHz-ből számolja. De ami még ennél is nagyobb gondom, hogy elmászik emiatt az UART baud rate-je. kvarcnál megvan a két 22pF, F_CPU delay.h előtt van definiálva, de minden hiába. Ja és eddig más programoknál ez így működött. Van valami ötletetek hol lehet a hiba? Talán fuse biteknél kéne valamit állítani neki? Atmel studio6-ban írom a programokat, eddig még egyszer nem volt szükségem fuse bitek állítására.
Pedig most szükséged lesz, másképp nem fog menni.
Ettől féltem én is. Mint az előbb írtam eddig még nem volt rá szükségem úgyhogy nem igazán értek hozzá.
Jól sejtem hogy a SUT_CKSEL-t kéne beállítani valamelyik 3-8MHz-re? Csak start-up time-nak menniyt válasszak? annak idején olvastam róla egy cikket hogy melyik mihez való de már nem emlékszem rá.
Köszönöm.
Közben fellapoztam az AVR adatlapját, egész jól le van írva abban is. De még egy valami nem tiszta előttem: Ezeket a biteket lehet állítani kódból is és akkor a fordító automatikusan generálja a programozónak vagy csak a letöltésnél lehet beállítani?
Igen állítható kódból is!
De kezdőként nem ajánlom! Mert ha letiltod a programozódat? (Valamelyik biztos kel: JTAGEN vagy SPIEN) Mehetsz segítségért a szomszédba! A hozzászólás módosítva: Ápr 19, 2014
Most van itthon mindkét féle programozó, valamelyik bitet csak eltalálom
De egyelőre nem akarok ilyeneket állítgatni rajta, amíg nem értek hozzá. Jelenleg a kristály beállításával sem értem el sikert, az 500ms-es időzítés ugyan úgy 2s maradt. Tehát az időzítést 4MHz-ből (amit F_CPUnak megadtam) számolja, de közben az órajele meg csak 1MHz. Még egy valamire gyanakodok. A programozómat nem támogatja az AtmelStudio ezért a lefordított HEX fáljt AVRstudio4-el töltöm rá. A fuse biteket is az AVRstudioban állítom. nem lehet hogy az AtmelStudioban kéne azt is, hogy a hex fálj már tartalmazza? Remélem nem kérdezek túl nagy hülyeségeket, van még jó pár homályos folt AVR-ekkel kapcsolatban
Nem.
Inkább ellenőrizd, hogy a CLKDIV8 előtt ne legyen pipa!
AVR-Studioban lenyíló menüből beállítod, hogy external quartz/resonator.
És divclk8 : disable, azaz ne ossza le az órajelet.
Emlékeim szerint kódból nem lehet állítani, csak kiolvasni de az sem valami egyszerű. Nem is
kellene FUSE bitekkel bajlódni ha lehetne. Egyedül a CKDIV8 meg a WDTON ami ilyen, mert ezekre létezik olyan utasítássor ami felülbírálja a FUSE bitek beállításait. A hozzászólás módosítva: Ápr 20, 2014
|
Bejelentkezés
Hirdetés |