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   551 / 840
(#) TavIR-AVR válasza Suncorgo hozzászólására (») Júl 25, 2013 /
 
Olvasás, átírás: kb. 2-6 órajel, SW függően....
(#) Szabi1 válasza Szabi1 hozzászólására (») Júl 25, 2013 /
 
Ma felraktam a programot, módositottam rajta, működik is, csak az a baj, hogy a H-Hid nem kapcsol rendesen, 4V ot kapcsol csak a V+ról ami vagy 7-8V lenne.
Próbapanelen van összerakva, próbáltam mérőműszerrel rövidzárlatot keresni, de nem találtam kikapcsolt állapotban, az is lehet hogy olyan közel vannak a vezetősávok, hogy a feszültség átivel?
A hozzászólás módosítva: Júl 25, 2013
(#) zombee válasza David 3g hozzászólására (») Júl 26, 2013 /
 
eXtreme Burner vagy AVRDUDE, esetleg Khazama-AVR. Égetni lehet vele, de csodát ne várj!
(#) David 3g válasza TavIR-AVR hozzászólására (») Júl 26, 2013 /
 
azaz. Akkor nem is tudok vele programozni ?
(#) David 3g válasza zombee hozzászólására (») Júl 26, 2013 /
 
Nemvárok ,de eddig még egy Attiny13 nem tudtam vele megcsinálni
(#) kapu48 válasza Suncorgo hozzászólására (») Júl 26, 2013 /
 
Valasz gyors AVR-t, 5V-on 20MHz-es orajelen.
Megszakitasban megoldhato a problemad.
(#) TavIR-AVR válasza David 3g hozzászólására (») Júl 26, 2013 /
 
AVR-Dude alatt talán....
A chip IFD kiolvasás legyen a próbafeladat...
Eladó mit mond?
(#) David 3g válasza TavIR-AVR hozzászólására (») Júl 26, 2013 /
 
AVR DUDE hogy ismertetem meg az eszközt ?
(#) TavIR-AVR válasza David 3g hozzászólására (») Júl 27, 2013 /
 
A driver-t nem adja a DuDe. Az általános programozószoftver csak...
(#) David 3g válasza TavIR-AVR hozzászólására (») Júl 28, 2013 /
 
Szia. Értem amit mondasz. Nekem az az érdekes hogy olvasni simán olvassa az AVR-t. Fuse biteket engedi macerálni. Szoval nem értem hogy miért nem enged írni. Mismatch hibát ír 0X0000 azt hiszem. Jah és ez mind az Extreme Avr burner programmal mert ugye azt ajánlják ehhez az usbasp-ez.
(#) TavIR-AVR válasza David 3g hozzászólására (») Júl 28, 2013 /
 
Ekkor az AVR chiped nem kap _normális_ tápot.
5V _külön_ vagy az ASP-ről.
És 100 nF kerámiakondi a tápra.
Az ISP kábel hossza nem lehet több, mint 15-20 cm.
A hozzászólás módosítva: Júl 28, 2013
(#) David 3g válasza TavIR-AVR hozzászólására (») Júl 28, 2013 /
 
Ennyit számítana egy kerámia kondi ? Amugy az AVR az usb programozomrol kap tápot. próbáltam már külsőleg adni neki 5v ott de úgy sem lett más a dologból , az Avr táp bemenetére nem raktam kerámiát mivel gondoltam hogy az a táp elég stabil.
(#) TavIR-AVR válasza David 3g hozzászólására (») Júl 28, 2013 /
 
- AVR programozási sebesség visszavétele,
- kerámia szűrőkondi beépítése,
- a külső táp esetén a GND közös.


Vagy az egész USBASP kidobása...
A hozzászólás módosítva: Júl 28, 2013
(#) David 3g válasza TavIR-AVR hozzászólására (») Júl 28, 2013 /
 
Értem. A sebesség visszavételét azt hol és hogy tehetem meg ?
(#) TavIR-AVR válasza David 3g hozzászólására (») Júl 28, 2013 /
 
Az ExtremeBurner-ban kell lennie...
ISP Frequency néven lehet....

(Nincs USBASP kéznél perpill, hogy puskázzak.)

A nyákot a forrasztás után igaz lemostad alkohollal a gyantamaradékok eltávolítására?
(#) yoman917 hozzászólása Júl 29, 2013 /
 
Sziasztok

Frekvenciaméréssel kapcsolatban lenne kérdésem. Astabil multivibrátorral és External Interruptal sikerült elérnem, hogy ha a freki kisebb mint pl 800Hz, villanjon fel egy led, ha kisebb, akkor egy másik. A végső célom az lenne, hogy az AVR egyik lába ugyanolyan négyszögjelet adjon ki, mint amilyet az astabil multivibrátor, csak időben eltolva. Próbáltam Fast PWM-el, de az csak adott frekvencián változtatja a kitöltési tényezőt. Valakinek van ötlete, hogyan tudnám megcsinálni?
  1. #define F_CPU 12000000UL
  2. #include <avr/io.h>
  3. #include <avr/interrupt.h>
  4. #include <util/delay.h>
  5.  
  6.  
  7. #define PRESCALE 64
  8.  
  9. volatile uint16_t u16Ford_min=0, u16Ford_s=0;
  10.  
  11. ISR(INT1_vect)
  12. {
  13.  
  14.         uint16_t u16Szamlalo=TCNT1;
  15.  
  16.         TCNT1=0;       
  17.  
  18.         uint32_t u32Temp=60*F_CPU/PRESCALE/u16Szamlalo;
  19.        
  20.         u16Ford_min = u32Temp;
  21.         u16Ford_s = u32Temp/60;
  22.        
  23. }
  24.  
  25.  
  26. int main(void)
  27. {
  28.        
  29.        
  30.         MCUCR|=( (1<<ISC11) | (1<<ISC10) );
  31.         GIMSK|=(1<<INT1);
  32.  
  33.        
  34.         //timer1et beállitjuk F_CPU/64-re
  35.         TCCR1B|=( (0<<CS12) | (1<<CS11) | (1<<CS10) );
  36.  
  37.         DDRD|=(1<<PD3)  | (1<<PD5)  | (1<<PD4);
  38.  
  39.         sei();
  40.  
  41.         while(1)
  42.         {
  43.        
  44.        
  45.                 if(u16Ford_s>=800)
  46.                 {
  47.  
  48.                 PORTD=(1<<PD5);
  49.        
  50.                         //nagyobb, LED fel vagy ilyesmi                
  51.                 }      
  52.                        
  53.                 else
  54.                
  55.                 {
  56.                
  57.                 //kisebb, LED fel vagy ilyesmi
  58.                 PORTD=(1<<PD4);
  59.        
  60.                 }
  61.         }
  62.  
  63.         return 0;
  64. }
(#) ThompsoN hozzászólása Júl 29, 2013 /
 
Sziasztok.

Készítettem egy kapcsolási rajzot egy áramkörhöz. (Bocsi, de kézzel rajzoltam.) Egy hozzáértőt meg szeretnék kérni, hogy nézze át, hogy minden rendben van-e. Első saját tervezésű áramkörről van szó, így gondoltam megkérdezem, biztos ami biztos.

Az áramkör azt csinálja, hogy az ATMega48-ra kötött két fokozatkapcsoló állásának megfelelően változtatja a PB1 (15. láb) és PB2 (16. láb) lábra menő négyszögjel kitöltési tényezőjét, így szabályozza a két MOSFET-en keresztül a ventilátorokat. Ezen kívül még négyszögjelet állít elő a PD6-os (12. láb) lábon is, az pedig egy tranzisztoron keresztül 6 darab nagy fényerejű LED fényességét állítja.

Az IC VCC és GND lába közé egy 100nF-os multilayer kondit tennék, ugyan úgy, ahogy a 7805 kimenő lábához is. Utóbbi bemenetéhez 330nF-os tantál, vagy multilayer kondi menjen? (Mindkettőből van itthon.)

DSC_0147.jpg
    
(#) Topi válasza ThompsoN hozzászólására (») Júl 29, 2013 / 2
 
- 12-es lábhoz a tranzisztorhoz bázis ellenállás szükséges
- 21-es láb az kimenet, ne kösd tápra, max 100nF kondival föld felé.
- 7805 kimenetére tegyél puffer kondit (mondjuk 10uF)
- Ha áramkörben akarod programozni, akkor 17-19-ig gondoskodj róla hogy a gomb szakadás a programozás idejére (nem zárod rövidre az SCK, MISO, MOSI lábakat)
- Motorokhoz tegyél freewheel diódát (katód táp felé, anód FET felé)
(#) ThompsoN válasza Topi hozzászólására (») Júl 29, 2013 /
 
Éreztem, hogy valami kimaradt, de nem akart feltűnni. A bázisellenállás. 4,7kOhmot terveztem oda.

Diódának jó lesz egy-egy 1N4007?
(#) neptunes4you hozzászólása Júl 30, 2013 /
 
Hello!

Vettem egy USBasp-t, hogy az AVR Doperemet oda tudjam adni a barátomnak, de az asp-n régi szoftver volt. Elkezdtem frissíteni a doperrel, de 8% után kegyetlenül lelassult. Ez még nem is lett volna baj, de huszon valahány százaléknál megállt, és azóta meg se mukkan se a doper, se az asp. (azt írja a doper, hogy nem található, az usbasp-t felismeri, de a rossz flashelés miatt nem tudok vele programozni ugye)

Hol kezdjem el a hibakeresést? Ja, és sajnos nincs több avr prgramozóm, se havernak, se senkinek, de ahogy felhúzott, lehet veszek egy mkII klónt és agyő...
A hozzászólás módosítva: Júl 30, 2013
(#) TavIR-AVR válasza neptunes4you hozzászólására (») Júl 30, 2013 /
 
USBAsp-n valószínű a chip kihalt. Más AVR-re valamelyik eszköz nem izgul rá? ISP-n látja?


Egyik és másik pőrogramozónál mi a hibaüzenet?

PC-n van LPT port? A programozó arra 5 szál drót....


Sem a doper, sem az usbasp nem életbiztosítás.... Lsd: AVR égetők topic....
A hozzászólás módosítva: Júl 30, 2013
(#) neptunes4you válasza TavIR-AVR hozzászólására (») Júl 30, 2013 /
 
Az van hogy MacBook Pro-n dolgozok, és nincs csak USB-m. USBasp-t felismeri mint USBasp, de nem tud flashelni. avr doper hol jó hol nem. Mikor jónak tűnik, ezt dobja:

ocalhost:desktop Martin$ avrdude -p m8 -c stk500v2 -P avrdoper -y -u -U flash:w:usbasp.atmega8.2011-05-28.hex
Warning: could not claim interface
avrdude: stk500v2_command(): command failed
avrdude: initialization failed, rc=-1
Double check connections and try again, or use -F to override
this check.
avrdude done. Thank you.

Mikor rossznak ezt:

localhost:desktop Martin$ avrdude -p m8 -c stk500v2 -P avrdoper -y -u -U flash:w:usbasp.atmega8.2011-05-28.hex
avrdude: avrdoper_open(): Device not found.
(#) neptunes4you hozzászólása Júl 30, 2013 /
 
Rossz tápegység esetleg, mindjárt teszek az USBasp-re egy plusz kondit...
(#) neptunes4you hozzászólása Júl 30, 2013 /
 
Na most kijött belőle egy ilyen:

localhost:desktop Martin$ avrdude -p m8 -c stk500v2 -P avrdoper -y -u -U flash:w:usbasp.atmega8.2011-05-28.hex
Warning: could not claim interface

avrdude: stk500v2_ReceiveMessage(): timeout
avrdude: AVR device initialized and ready to accept instructions

Reading | | 0% 0.00s Error sending message: usb_control_msg(DeviceRequestTO): unknown error
avrdude: avrdoperFillBuffer(): I/O Error.
(#) neptunes4you hozzászólása Júl 30, 2013 /
 
Na sikerült reprodukálni az előzőt, felismerte az usbasp-ben a mega8-at, de nem kezdte el flashelni. Tuti a dopernek van baja. Egyszer megy, egyszer nem, egyszer látja a gép, egyszer nem...
(#) neptunes4you hozzászólása Júl 30, 2013 /
 
Yes.

localhost:desktop Martin$ avrdude -p m8 -c stk500v2 -P avrdoper -y -u -U flash:w:usbasp.atmega8.2011-05-28.hex
Warning: could not claim interface

avrdude: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.05s

avrdude: Device signature = 0x1e9307
avrdude: NOTE: FLASH memory has been specified, an erase cycle will be performed
To disable this feature, specify the -D option.
avrdude: erasing chip
avrdude: erase-rewrite cycle count is now -250
avrdude: reading input file "usbasp.atmega8.2011-05-28.hex"
avrdude: input file usbasp.atmega8.2011-05-28.hex auto detected as Intel Hex
avrdude: writing flash (4700 bytes):

Writing | ################################################## | 100% 5.20s

avrdude: 4700 bytes of flash written
avrdude: verifying flash memory against usbasp.atmega8.2011-05-28.hex:
avrdude: load data flash data from input file usbasp.atmega8.2011-05-28.hex:
avrdude: input file usbasp.atmega8.2011-05-28.hex auto detected as Intel Hex
avrdude: input file usbasp.atmega8.2011-05-28.hex contains 4700 bytes
avrdude: reading on-chip flash data:

Reading | ################################################## | 100% 3.92s

avrdude: verifying ...
avrdude: 4700 bytes of flash verified

avrdude done. Thank you.

Rossz az AVR doper, szerintem megöregedett benne már kicsit az atmega8, 2008 óta használom.
(#) TavIR-AVR válasza neptunes4you hozzászólására (») Júl 31, 2013 /
 
A chip nem öregszik.
Inkább kontakthiba lesz...
(#) Robi98 hozzászólása Júl 31, 2013 /
 
Sziasztok!
Miért nem tudom kedvem szerint állítgatni a fuses biteket az AVR Studio 4-ben? Ha eltérek az alap beállításoktól, és a verify gombra kattintok akkor egyből jön a jól megszokott órajeles hibaüzenet.
Programozni viszont tudok vele.
(#) TavIR-AVR válasza Robi98 hozzászólására (») Júl 31, 2013 /
 
Mer' a verify _előtt_ be kell programozni...
És ha hülyeséget állítasz be - kizárod magadat (resetláb letiltás/hibás órajel, stb).
(#) Robi98 válasza TavIR-AVR hozzászólására (») Aug 1, 2013 /
 
Köszi szépen!
Következő: »»   551 / 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