-
So es geht vorwärts.
Das Radiodisplay zeigt was an Tasten werden getriggert und machen dem mpc Beine. Jetzt habe ich nur noch eine Frage zum Filedescriptor im senden.c
Da funktioniert prima so lange ich keine 0x00 senden will. Alles nach 0x00 wird ignoriert. Liegt wohl daran, dass der Filedesprictor die 0x00 als Anlass nimmt die Übertragung einzustellen. Macht ja meistens auch Sinn.
Muss aber leider folgende Nachricht schicken:
Kann mir vielleicht jemand sagen, welche Einstellung ich im filedescriptor setzen muss?
Code:
fd = open(MODEMDEVICE, O_WRONLY | O_NOCTTY);
if (fd < 0){
printf("Fehler beim oeffnen von %s\n", MODEMDEVICE);
exit(-1);
}
memset(&newtio, 0, sizeof(newtio));
newtio.c_cflag = BAUDRATE | CS8 | CLOCAL | CREAD | PARENB; //setzt Einstellungen vom UART auf 8E1
newtio.c_iflag = IGNPAR;
newtio.c_oflag = 0;
newtio.c_lflag = 0; /* set input mode (non-canonical, no echo, ...) */
newtio.c_cc[VTIME] = 0; /* inter-character timer unused */
newtio.c_cc[VMIN] = 1; /* blocking read until 1 chars received */
newtio.c_cc[VSTART] = 0; /* Ctrl-q startet Datenübertragung */
newtio.c_cc[VSTOP] = 0; /* Ctrl-s stoppt Datenübertragung*/
tcflush(fd, TCIFLUSH);
tcsetattr(fd, TCSANOW, &newtio);
return fd;
Ich hab in der man nachgesehen aber leider nichts in der Richtung "ignore 0x00" beim senden gefunden.
Kann mir da vielleicht wer helfen?
Viele Grüße
Rainer
-
Zitat:
Zitat von
gesamtplan
Code:
fd = open(MODEMDEVICE, O_WRONLY | O_NOCTTY);
if (fd < 0){
printf("Fehler beim oeffnen von %s\n", MODEMDEVICE);
exit(-1);
}
memset(&newtio, 0, sizeof(newtio));
newtio.c_cflag = BAUDRATE | CS8 | CLOCAL | CREAD | PARENB; //setzt Einstellungen vom UART auf 8E1
newtio.c_iflag = IGNPAR;
newtio.c_oflag = 1; /* ***********RAW OUTPUT*************** */ <<<<<<<
newtio.c_lflag = 0; /* set input mode (non-canonical, no echo, ...) */
newtio.c_cc[VTIME] = 0; /* inter-character timer unused */
newtio.c_cc[VMIN] = 1; /* blocking read until 1 chars received */
newtio.c_cc[VSTART] = 0; /* Ctrl-q startet Datenübertragung */
newtio.c_cc[VSTOP] = 0; /* Ctrl-s stoppt Datenübertragung*/
tcflush(fd, TCIFLUSH);
tcsetattr(fd, TCSANOW, &newtio);
return fd;
Versuch mal RAW Output auf 1 zu setzen. Probiert habe ich es nicht. :cool:
-
Hallo Peter,
nochmals vielen Dank für deine Unterstützung. Mein MPD-Server fürs Auto ist nun fertig. Ohne deinen RN-Wissen Artikel wäre es nicht so schön gegangen.
Hier eine kurze Beschreibung.
https://www.roboternetz.de/community...t=bmw+unsicher
Grüße
Rainer
-
Einen guten Beitrag zum Thema "Internet Radio" findet man unter https://www.raspberrypi.org/magpi/issues/ in dem Heft "Issue SE1 Special" auf S. 52. Ich habe diesen Artikel als Vorlage benutzt und mir ein Internet Radio (USB-Wlan-Stick mit Antenne und Aktivlautsprecherboxen) mit dem Raspberry Pi 2B gebaut. Funktioniert ausgezeichnet in meinem lokalen Netz.
-
-
Zitat:
Zitat von
ThSteinbauer76
Geil, dankee :)
das Topic ist aus 2013-2015, bitte lass die Toten ruhen - vor allem mit solchen absolut nichtssagenden Posts!