Fórum témák

» Több friss téma
Fórum » AVR - Miértek hogyanok
 
Témaindító: pakibec, idő: Márc 11, 2006
Témakörök:
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
Lapozás: OK   564 / 840
(#) vzoole válasza zsozsoX hozzászólására (») Szept 23, 2013 /
 
Jobb ötletem nincs, mint hogy IC hiba.
Esetleg nem azt a programot töltöd be amit lefordítottál.
FUSE biteket állítottad?
(#) matheattila válasza zsozsoX hozzászólására (») Szept 23, 2013 /
 
Szia, a LED-et kipróbáltad egy elemmel és ellenállással vagy egyszerűen csak a multiméterrel még mielőtt a mikrovezérlővel használtad volna? Azért kérdem, mert lehet, hogy már eleve villogó LED-et vettél. Ez nem vicc én is megjártam egyszer, vettem néhány LED-et és otthon mikor beültettem a nyákba nem úgy viselkedett ahogy kellett volna, kivettem leellenőriztem (amit az elején kellett volna tennem) és csak úgy magára is villogott...
(#) zsozsoX válasza matheattila hozzászólására (») Szept 24, 2013 /
 
Már kivettem az attiny-t a készített nyákból és próba penelon raktam össze olyan leddel amit előzőleg használtam már. Hol találálom a FUSE bitek gyári beállításait hogy meg nézzem nem e az van el állítva?
(#) Suncorgo hozzászólása Szept 24, 2013 /
 
Sziasztok

Van egy olyan problémám hogy csináltam, vagyis csinálnék egy ablaktörlő vezérlőt kocsiba és a motor sebességét PWM-el szeretném változtatni. A mikrovezérlő (Mega8) bizonytalanul működik. A Verify tökéletes. Van egy egyszerű program:

  1. int main(void)
  2. {
  3.         InitPorts();
  4.         InitPWM();
  5.        
  6.         while(1)
  7.         {
  8.                 for(uint8_t i=0;i<255;i++)
  9.                 {
  10.                         OCR2=i;
  11.                         dms(50);
  12.                 }
  13.         }
  14. }


és az a gondom hogy a PWM kitöltés változása megáll egy helyben, mint ha lefagyna a mikrovezérlő.
Már próbáltam mikrovezérlőt is cserélni. Az előző is ugyan ezt csinálta.

Mi lehet a baj? Ez valami zavar lenne?

Kapcsolást csatoltam.

Üdv:
Suncorgo
A hozzászólás módosítva: Szept 24, 2013
(#) Suncorgo válasza Suncorgo hozzászólására (») Szept 24, 2013 /
 
Úgy néz ki hogy addig semmi baja sincs amíg a motor tápot nem kap.
(#) gtk válasza Suncorgo hozzászólására (») Szept 24, 2013 /
 
Motor es AVR kozos tap ? Motoron hidegito es puffer kondik ? Probald beallitani az AVR-en a BOR -t.
(#) Suncorgo válasza Suncorgo hozzászólására (») Szept 24, 2013 /
 
Itt járattam vagy 10 percig, néztem a PWM kimenetet szkóppal.
Jól működött is. Azután tápot adtam a motornak, nem kellett 5 másodperc a PWM kitöltés beállt kb 85-90%-on.

(#) Suncorgo válasza gtk hozzászólására (») Szept 24, 2013 /
 
Igen közös táp. A motoron nincsennek kondik. A BOR 2.7V áll most és 4V lehet még választani.
(#) gtk válasza Suncorgo hozzászólására (») Szept 24, 2013 / 1
 
Ajanlom "kondizd be" a motort, es jo lenne az AVR tapjara egy folytotekercs is.
(#) Suncorgo válasza gtk hozzászólására (») Szept 24, 2013 /
 
A motoron a kondit hova gondolod? A két kefe közzé ahova tápot kapja? És kb mekkora értékű kell oda? És milyen mert szerintem az elkó felrobban a PWM-től.

A folytót a stab kocka elé vagy után rakjam? Vagyis a +12Val sorba vagy a +5Val?
(#) gtk válasza Suncorgo hozzászólására (») Szept 24, 2013 / 1
 
Folytoval kezd, 5V-al sorba, aztan hidegito kondi: 100nF es 47-100uF. Kondi nem art ha low ESR a ket kefe koze, ahogy fogalmaztad, es nehany 100µF-1000uF. BOR-t szerintem tedd at 4V-ra.
A hozzászólás módosítva: Szept 24, 2013
(#) Suncorgo válasza gtk hozzászólására (») Szept 24, 2013 /
 
Ok. Ha a BOR-t átteszem 4Vra akkor reseteli magát a proci 4Von. Az nekem nem lesz jó.
A hozzászólás módosítva: Szept 24, 2013
(#) csabeszq válasza Suncorgo hozzászólására (») Szept 24, 2013 /
 
Motort ne köss az AVR tápfeszültségére, az AVR-nek saját feszültségstabilizátora legyen saját pufferrel.
(#) Suncorgo válasza csabeszq hozzászólására (») Szept 24, 2013 /
 
Ezt egy kocsiban hogy oldom meg mikor van egy 12V akksi? A 12V és az 5V között csak egy stab kocka van. Úgy néz ki a folytóval megoldódik a probléma. Még teszek egy kerámiát az AVR tápjára is ahogy javasolta gtk és teszt.
(#) Suncorgo válasza gtk hozzászólására (») Szept 24, 2013 /
 
Köszönöm gtk

A folytó és a folytó utáni 1µF kerámia megoldotta a problémám.

Kapcsolást csatolom.
L1 és C5.
(#) csabeszq válasza Suncorgo hozzászólására (») Szept 24, 2013 /
 
12V-aksi -> dióda -> puffer -> stabilizátor -> motor
12V-aksi -> dióda -> puffer -> stabilizátor -> AVR

Az ellentétes állású diódák miatt, meg a különböző pufferek miatt a motor nem tud annyit játszani a tápfesszel.
(#) Panhard hozzászólása Szept 24, 2013 /
 
Sziasztok! Ha egy ATmega328P-nél a reset disabled fuse bitet véletlenül bekapcsoltam, akkor azt hogyan tudom visszaállítani?
(#) csabeszq válasza Panhard hozzászólására (») Szept 24, 2013 /
 
HVPP programozóval, SPI-vel nem fog menni.
(#) Panhard válasza csabeszq hozzászólására (») Szept 24, 2013 /
 
Nekem csak ez van: Bővebben: Link Ezzel nem fog menni?
(#) csabeszq válasza Panhard hozzászólására (») Szept 24, 2013 /
 
Nem, ez ISP programozó.
(#) killbill válasza Suncorgo hozzászólására (») Szept 24, 2013 /
 
Annyian irjátok így, hogy szólok érte: Fojtó.

Az AVR tapja tenyleg egy 100uH/1µF LC szuron keresztul megy? Mert az ugyebar egy 40dB/dekados, kb 16kHz-ces alulatereszto szuro, es azert az AVR nem DC-t fogyaszt. Kivancsi lennek, hogy mit latni az AVR tap laban.
(#) Panhard válasza csabeszq hozzászólására (») Szept 24, 2013 /
 
Rendben, köszi. Akkor marad a chip csere. Esetleg győr környékén nincs valakinek? SMD a chip, nem szívesen forrasztom ki.
(#) csabeszq válasza Panhard hozzászólására (») Szept 24, 2013 /
 
Tedd félre. Egy HVPP programozó megépítése 5000 Ft körül van (fusebit doctor). Ha megfelelő számú összegyűlik, akkor megépíted magadnak.
(#) Panhard válasza csabeszq hozzászólására (») Szept 24, 2013 /
 
Találtam itthon új ATmega328P-t, már elkezdtem kiszedni a "rosszat". Lábait lemetéltem szikével, így szépen ki lehet szedni. Mindjárt kész...
(#) Panhard válasza Panhard hozzászólására (») Szept 24, 2013 /
 
Sikerült a csere, működik is. Buktam kb: 1000Huf-ot, a figyelmetlenségem miatt, de a tapasztalat amit nyertem, megfizethetetlen.
(#) Szabi1 válasza blackdog hozzászólására (») Szept 24, 2013 /
 
Köszönöm BOOL az boolean tipusú logikai változó értéke 0 vagy 1 lehet, én eddig nem nagyon programoztam MCU-t, én a suliba PC programozást tanulok, és a CODEBLOCK nevű forditó programhoz vagyok szokva.
(#) blackdog válasza Szabi1 hozzászólására (») Szept 24, 2013 /
 
Igen tudom csak az a gond, hogy itt nincs BOOL típus. Használj int vagy uint8_t. Utóbbi kevesebb helyet foglal és 0 / 1 tárolására elegendő.
(#) Szabi1 válasza Szabi1 hozzászólására (») Szept 24, 2013 /
 
Mostmár sokkal kevesebb hiba van de van még azért, amire nemtudok rájönni:
HIBA: warning: function declaration isn't a prototype
  1. void InitADC()
  2. {
  3. ADMUX=(1<<REFS0);                         // For Aref=AVcc;
  4. ADCSRA=(1<<ADEN)|(1<<ADPS2)|(1<<ADPS1)|(1<<ADPS0); //Prescalar div factor =128
  5. }


HIBA2: warning: function declaration isn't a prototype (ez a main fuggvenyre?)
  1. int main()
  2. {
  3.   while(1)
  4. {
  5. //program
  6. }
  7. return 0;
  8. }


HIBA3:warning: implicit declaration of function 'LCDWriteIntXY'

  1. int percent;
  2. //kod
  3. LCDWriteIntXY(1,1,percent,2);
A hozzászólás módosítva: Szept 24, 2013
(#) blackdog válasza Szabi1 hozzászólására (») Szept 24, 2013 /
 
Milyen AVR-re szeretnéd lefordítani? Mert nem mindegy.
LCDWriteIntXY létezik a valóságban is? Hogyan/hol van létrehozva?
(#) gtk válasza killbill hozzászólására (») Szept 24, 2013 /
 
Nem szamolt utanna,..de nem is annyira lenyeges, egy ekkora induktivitason, es ugy altalaban nem tud nagyot ugrani az aramtuske, ematt fplyto Elnezest a kifejezesekert, most hirtelen jobb nem jutott eszembe
Következő: »»   564 / 840
Bejelentkezés

Belépés

Hirdetés
XDT.hu
Az oldalon sütiket használunk a helyes működéshez. Bővebb információt az adatvédelmi szabályzatban olvashatsz. Megértettem