ich bekomme diese Fehlern,Code:#include <avr/io.h> #include <avr/interrupt.h> #include <stdint.h> #include <util/delay.h> #include <stdio.h> #include <stdlib.h> // PD0 = Taster für Richtung für alle Motoren // PD1 = Taster für Start // PD2 = Taster für Interrupt0 // PD3 = Taster für Interrupt1 // PD4 = Taster für Stop // PD5 = Taster für Reset // PB4 = Richtung für alle Motoren //****************************** // MOTOR 1 Richtung X //****************************** // PB0 = Enable M1 // PB1 = Clock M1 //****************************** // MOTOR 2 Richtung Y //****************************** // PB2 = Enable M2 // PB3 = Clock M2 // PC0 = Trigger // PD2 = Interrupt0 // PD3 = Interrupt1 volatile uint16_t zx,zy,D; void pause(D) { for(uint16_t i=0;i<D;i++) asm volatile ("nop"); } void STOP() { PORTB&=~(1<<PB0);//Mx En löschen PORTB&=~(1<<PB2);//My En löschen } ISR (INT0_vect) { PORTB|=(1<<PB0);//Mx En PORTB|=(1<<PB2);//My En PORTB|=(1<<PB4);// Richtung for(unsigned int i=0;i<10;i++) {zx=0; zy=0; for(unsigned int j=0;j<10;j++) { for(unsigned int k=0;k<10;k++) { PORTB|=(1<<PB1); // pause(1000); // Clk Mx PORTB&=~(1<<PB1); // zx++; } PORTC|=(1<<PC0); // pause(2000); // Triggern 5hz PORTC&=~(1<<PC0); // } for(unsigned int l=0;l<10;l++) { for(unsigned int m=0;m<10;m++) { PORTB|=(1<<PB3); // pause(1000); // Clk My PORTB&=~(1<<PB3); // zy++; } PORTC|=(1<<PC0); // pause(2000); // Triggern 5hz PORTC&=~(1<<PC0); // } PORTB&=~(1<<PB4);// Richtung ändern for(unsigned int n=0;n<10;n++) { for(unsigned int p=0;p<10;p++) { PORTB|=(1<<PB2); // pause(1000); // Clk Mx PORTB&=~(1<<PB2); // zx--; } PORTB|=(1<<PC0); pause(2000); //Triggern 5hz PORTB&=~(1<<PC0); } PORTB|=(1<<PB4);// Richtung for(unsigned int r=0;r<10;r++) { for(unsigned int s=0;s<10;s++) { PORTB|=(1<<PB3); // pause(1000); // Clk My PORTB&=~(1<<PB3); // zy++; } PORTC|=(1<<PC0); // pause(200); // Triggern 5hz PORTC&=~(1<<PC0); // } } ISR (INT1_vect) { void STOP(); pause(1000); PORTB|=(1<<PB0);//Mx En PORTB&=~(1<<PB4);// Richtung if(zy>0) { for(unsigned int q=0;q<zy;q++) { PORTB|=(1<<PB3); // pause(1000); // Clk My PORTB&=~(1<<PB3); // } } if(zx>0) { for(unsigned int q=0;q<zx;q++) { PORTB|=(1<<PB1); // pause(1000); // Clk Mx PORTB&=~(1<<PB1); // } } } //Hauptprogramm START---------- int main(void) { DDRD=0b11100000; // PIN 0-4 als Eingang definieren DDRB=0xb11111111; // PortB als Ausgang definieren DDRC|=(1<<PC0); // PC0 als Ausgang sei(); //Interrupts freigeben //Interrupt initialisieren EIMSK|=(1<<INT0)|(1<<INT1); EICRA|=(1<<ISC01)|(1<<ISC11); while(1) //Endlosschleife { } return 0; }
../M_XY_vers2.c:133: error: static declaration of '__vector_2' follows non-static declaration
../M_XY_vers2.c:133: error: previous declaration of '__vector_2' was here
weißt bitte jemand wo der Fehler ist?
danke
Lesezeichen