zu 1)
zu 2) Mein fehler geändert inCode://DDRB #define SPI_MOSI_DDR DDRB #define SPI_CLK_DDR DDRB #define SPI_MISO_DDR DDRB #define SPI_SS_DDR DDRB //PORTB #define SPI_MOSI_PORT PORTB #define SPI_CLK_PORT PORTB #define SPI_MISO_PORT PORTB #define SPI_SS_PORT PORTB // PIN #define SPI_MOSI_PIN0 PINB0 #define SPI_SS_PIN1 PINB1 #define SPI_CLK_PIN2 PINB2 #define SPI_MISO_PIN3 PINB3 //PB #define SPI_MOSI_PB0 PB0 #define SPI_SS_PB1 PB1 #define SPI_CLK_PB2 PB2 #define SPI_MISO_PB3 PB3 //Slave-deklaration void SPI_INIT(void) { // MOSI, CLK und SS auf Eingang setzen SPI_MOSI_DDR = (1<<SPI_MOSI_PB0); SPI_CLK_DDR = (1<<SPI_CLK_PB2); SPI_SS_DDR = (1<<SPI_SS_PB1); // MOSI, CLK und SS Internen Pull-Up aktivieren SPI_MOSI_PORT |=(1<<SPI_MOSI_PB0); SPI_CLK_PORT |=(1<<SPI_CLK_PB2); SPI_SS_PORT |=(1<<SPI_SS_PB1); // MISO auf Ausgang setzen SPI_MISO_DDR |= (1<<SPI_MISO_PB3); //MISO auf High setzten SPI_MISO_PORT |= (1<<SPI_MISO_PB3); }
zu3) Kennst du das nicht im Kopf Klang es logisch, eigentlich wollte ich damit erreichen das er an der stelle warten soll bist der externe Int0 ausgelöst wird.Code:for(uint16_t a =15 ; a > 0; a--)
zu4) Ne es soll nur etwas am miso-pin passieren wenn der der interrupt ausgelöst wird.
zu5) es werden 16-bit ausgegeben habe es nur byte genannt.
MfG Kluski







Zitieren

Lesezeichen