#include // (1) #include #ifndef F_CPU #warning "F_CPU war noch nicht definiert, wird nun mit 3686400 definiert" // #define F_CPU 3686400UL /* Quarz mit 3.6864 Mhz */ #define F_CPU 1000000UL /* Quarz mit 3.6864 Mhz */ #endif #include #include // set bit static inline void BIT_SET(volatile uint8_t *target, uint8_t bit) __attribute__((always_inline)); static inline void BIT_SET(volatile uint8_t *target, uint8_t bit){ *target |= (1<SPI Blocksende Routine mit optimierungen auf Speed. // * \param buffer Zeiger auf den Puffer der gesendet werden soll. // * \param Datalenght Anzahl der Bytes die gesedet werden soll. // */ ///* -----------------------------------------------------------------------------------------------------------*/ //void SPI_FastMem2Write( unsigned char * buffer, unsigned int Datalenght ) //{ // unsigned int Counter = 0; // unsigned char data; // // // erten Wert senden // SPDR = buffer[ Counter++ ]; // while( Counter < Datalenght ) // { // // Wert schon mal in Register holen, schneller da der Wert jetzt in einem Register steht und nicht mehr aus dem RAM geholt werden muss // // nachdem das senden des vorherigen Wertes fertig ist, // data = buffer[ Counter ]; // // warten auf fertig // while(!(SPSR & (1<>i); /* char data = 1; for(; data<128; data++) { // clear register (reset) print_data(data); _delay_ms(1000); } */ // spi_transfer(0x10101010b); } return 0; }