Fórum témák
» Több friss téma |
Cikkek » MIDI vezérlő AVR-el (V-USB-MIDI) I. MIDI vezérlő AVR-el (V-USB-MIDI) I.
Szerző: pintad, idő: Okt 5, 2009, Olvasva: 30872, Oldal olvasási idő: kb. 1 perc
A program maga a V-USB projektre épül. Az általam letöltött program elsőre majdnem hibátlanul működött, első észrevételem azonban az volt, hogy a szabályozható ellenállások közül csak az utolsó kettő működött. Áttanulmányozva a programot megtaláltam a "hibát", és javítottam. Pár szóban a működéséről: Ami az általam tapasztalt hibát okozta, az az volt, hogy alapból csak a 6-os és 7-es lábat vizsgálta a program, illetve volt benne egy olyan utasítás, amit őszintén szólva nem is értettem, így hát kicseréltem két saját utasításra, és utána működött is. A program forráskódja letölthető itt, illetve a kész HEX fájl letölthető itt. A programozóról, programozásról itt nem írok, a neten sok helyen, például itt is van leírás (az itt bemutatott STK200/300-as LPT programozó több szoftverrel, így az AVRDude-t tartalmazó WinAVR-el is működik). Módosítás: többen kérték, hogy írjam le a fuse bitek beállítását. Alapesetben ez a beállítás megtalálható a makefile-ban, tehát ha WinAVR-el programozzuk az AVR-t, akkor ezt nem kell megadnunk. Kimásoltam hát ezt a részt a makefileből, hiszen ennél érthetőbben és egyszerűbben én se tudom leírni:
Fuse high byte:
0xc1 = 1 1 0 0 0 0 0 1 <-- BOOTRST (boot reset vector at 0x3800)
^ ^ ^ ^ ^ ^ ^------ BOOTSZ0
| | | | | +-------- BOOTSZ1
| | | | + --------- EESAVE (preserve EEPROM over chip erase)
| | | +-------------- CKOPT (full output swing)
| | +---------------- SPIEN (allow serial programming)
| +------------------ WDTON (WDT not always on)
+-------------------- RSTDISBL (reset pin is enabled)
Fuse low byte:
0x9f = 1 0 0 1 1 1 1 1
^ ^ `-´ `--+--´
| | | +------- CKSEL 3..0 (external >8M crystal)
| | +--------------- SUT 1..0 (crystal osc, BOD enabled)
| +------------------ BODEN (BrownOut Detector enabled)
+-------------------- BODLEVEL (2.7V)
A cikk még nem ért véget, lapozz! Értékeléshez bejelentkezés szükséges! |
Bejelentkezés
Hirdetés |


(Őszintén szólva, nem sok dolgom volt C kóddal ezelőtt.)