kurze Erkärung: mit "SD_auslesen_und_daten_senden();" wird zunächst ein Sektor (512 Bytes) der SD-Karte ausgelesen --> funktioniert mit "empfaenger_festlegen ();" wird Empfängeradresse und -Kanal gesendet mit "wert_an_E32" wird zunächst ein Datenpaket (0 bis <58)an Rx des E32_868T gesendet danach noch einmal das Gleiche (58 bis <97) die <97 wurden durch schrittweises herantasten festgelegt; bei mehr als <97 erscheinen im Empfänger ab Byte 58 nur Nullen, hoffentlich habe ich mich richtig ausgedrückt was habe ich falsch gemacht? bzw. wie ist das Datenblatt zu deuten? void SD_auslesen_und_daten_senden(void) { unsigned int j,n; for ( n=0; n<1; n++ ) //Anzahl der Sektoren { for ( j=0; j<512; j++ ) //auszulesende Bytes pro Sektor { XT2_EIN (); rx_daten[j] = mmcReadSector(sektor, buffer); } XT2_AUS (); loeschenFKA(); sektor_anzeigen(sektor); sektor = sektor+1; wert_an_E32(); } } void empfaenger_festlegen(void) { unsigned char v; txbuffer_daten[0] = 0x02; // Adresse txbuffer_daten[1] = 0x02; // Adresse txbuffer_daten[2] = 0x09; // kanal 09 v=0; while (v < 3) // [0] bis [2] empfängeradresse,kanal { P4OUT &= ~BIT0; //LED rot EIN TXBUF0 = txbuffer_daten[v]; // empfängeradresse while (!(IFG1 & UTXIFG0)); // USART0 TX buffer ready? v++; } } void wert_an_E32(void) { unsigned int i; P4OUT &= ~BIT0; //LED rot EIN empfaenger_festlegen(); for (i=0; i<58; i++) { TXBUF0 = buffer[i]; while (!(IFG1 & UTXIFG0)); // USART0 TX buffer ready? } // __delay_cycles(1); empfaenger_festlegen(); for (i=58; i<97; i++) { TXBUF0 = buffer[i]; while (!(IFG1 & UTXIFG0)); // USART0 TX buffer ready? } P4OUT |= BIT0; //LED rot AUS }