-diese Library dient zum einbinden einer PS2-Maus an die CPU
-die Bewegungsdaten der Maus, die Buttons und das Mausrad werden
in einer Globalen-Struktur gespeichert
Funktionen :
1 2 3 4 | void MK3_INIT_PS2MAUS(void); // Init von der PS2-Maus Maus_ID_t MK3_PS2MAUS_START(Maus_Speed_t speed); // aktiviert die PS2-Maus bool MK3_PS2MAUS_READ(void); // Auslesen der Maus-Bewegungsdaten bool MK3_PS2MAUS_RESET(void); // setzt die PS2-Maus zurueck |
Beispiel :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 | //----------------------------------------------------------------------------- // Title : bsp_ub060_mk3_ps2maus //----------------------------------------------------------------------------- // Funktion : PS2-Maus // Schaltung : myAVR MK3 //----------------------------------------------------------------------------- // Prozessor : ATMega2560 // Takt : 16 MHz // Sprache : C // Date : 19.11.2012 // Version : 1.0 // Autor : UB //----------------------------------------------------------------------------- #define F_CPU 16000000 #include <avr/io.h> #include <ub_mk3_2560/MK3_2560_LCD.h> #include <ub_mk3_2560/MK3_2560_PS2_MAUS.h> //----------------------------------------------------------------------------- // Hinweis : Quick-Jumper Port-C+A muss gesetzt sein // PS2-Maus : // Clk an Port-D0 // Data an Port-D1 // // Die X,Y-Mausposition wird auf dem // Display angezeigt //----------------------------------------------------------------------------- int main (void) { Maus_ID_t check; unsigned int wert; MK3_INIT_LCD(); // init vom LCD MK3_LCD_CLEAR(); MK3_LCD_LIGHT(true); MK3_LCD_STRING_AT(0,0,"PS2-Maus"); MK3_INIT_PS2MAUS(); // init der PS2-Maus // PS2-Maus einschalten check=MK3_PS2MAUS_START(MAUS_SPEED_40); if(check==MAUS_ID_UNDEF) MK3_LCD_STRING_AT(0,16,"Maus-ID = ?"); if(check==MAUS_ID_NORMAL) MK3_LCD_STRING_AT(0,16,"Maus-ID = normal"); if(check==MAUS_ID_INTELLI) MK3_LCD_STRING_AT(0,16,"Maus-ID = Intelli"); while (true) { if(PS2MAUS.aktiv==true) { // wenn Maus gefunden und aktiv if(MK3_PS2MAUS_READ()==true) { // wenn neue Mausdaten MK3_LCD_STRING_AT(0,32,"X-Pos:"); wert=PS2MAUS.xpos; MK3_LCD_PRINT_UTYP(wert,DEZ_U5); MK3_LCD_STRING_AT(0,40,"Y-Pos:"); wert=PS2MAUS.ypos; MK3_LCD_PRINT_UTYP(wert,DEZ_U5); } } } return 0; } |
Hier die Library zum download :