- 12V Akku mit 280 Ah bauen         
Ergebnis 1 bis 10 von 10

Thema: RP6 mit TTS256 und Speakjet

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Moderator Robotik Visionär Avatar von radbruch
    Registriert seit
    27.12.2006
    Ort
    Stuttgart
    Alter
    62
    Beiträge
    5.799
    Blog-Einträge
    8
    Hallo

    Der TTS256 "spricht" mit 9600 Baud (Datenblatt). Hast du das deinem RP6 mitgeteilt? GND und 5V verbunden?

    Plan B: Chip richtig herum in den Sockel gesteckt?

    Für eine bessere Diagnose braucht man wohl das Programm und einen
    Anschlussplan.

    Gruß

    mic
    Geändert von radbruch (23.04.2013 um 18:21 Uhr)
    Bild hier  
    Atmel’s products are not intended, authorized, or warranted for use
    as components in applications intended to support or sustain life!

  2. #2
    Neuer Benutzer Öfters hier
    Registriert seit
    26.11.2011
    Beiträge
    10
    Klicke auf die Grafik für eine größere Ansicht

Name:	SpeakJetTTS.png
Hits:	6
Größe:	89,6 KB
ID:	25209

    Ja von der Spannung und der Chip ist alles in Ordnung hab mit dem Befehl

    #define BAUD_9600 9600
    #define UBRR_BAUD_9600 ((F_CPU/(16*BAUD_LOW))-1)
    UBRRH = UBRR_BAUD_9600 >> 8;
    UBRRL = (uint8_t) UBRR_BAUD_9600;

    die Baudrate auf 9600 eingestellt.

    Ich weiß nicht ob dem TTS256 ein writeChar('...') Befehl reicht. Noch ob ich ne zusätzliche Lib vom IC brauche.
    Wenn ich den RP6 anschalte bekomm ich schon ein Ready aus dem Lautsprecher. Wird aber wahrscheinlich der Speakjet selber sein weil er ein Reset Signal bekommt. ?

    Danke für die schnell Antwort.

  3. #3
    Moderator Robotik Visionär Avatar von radbruch
    Registriert seit
    27.12.2006
    Ort
    Stuttgart
    Alter
    62
    Beiträge
    5.799
    Blog-Einträge
    8
    #define UBRR_BAUD_9600 ((F_CPU/(16*BAUD_LOW))-1)

    BAUD_LOW stimmt sicher nicht, oder?
    Bild hier  
    Atmel’s products are not intended, authorized, or warranted for use
    as components in applications intended to support or sustain life!

  4. #4
    Neuer Benutzer Öfters hier
    Registriert seit
    26.11.2011
    Beiträge
    10
    Habs mal so reinkopiert aber jetzt seh ich es auch erst. Kannst du mir da bitte weiter helfen? bin mit so was doch leicht überfordert. Bin eher noch ein Einsteiger in der Materie. Wie ist des mit dem writeChar kann man denn TTS IC so ansteuern?

    MFG
    Roandl

  5. #5
    Moderator Robotik Visionär Avatar von radbruch
    Registriert seit
    27.12.2006
    Ort
    Stuttgart
    Alter
    62
    Beiträge
    5.799
    Blog-Einträge
    8
    Hallo

    Da BAUD_LOW in der Library des RP6 definiert wird kommt beim Kompilieren keine Fehlermeldung, aber der RP6 kommuniziert dann nicht mit 9600 sondern mit 38400 Baud. Richtiger wäre es so:

    Code:
    #define BAUD_9600		9600 // 9600 Baud
    #define UBRR_BAUD_9600	((F_CPU/(16*BAUD_9600))-1)
    
    UBRRH = UBRR_BAUD_9600 >> 8;	// Baudrate ist 9600
    UBRRL = (uint8_t) UBRR_BAUD_9600;
    (ungetestet)

    Mit writeChar() kannst du einzelne Zeichen (=Buchstaben) senden, mit writeSting() ist sogar ein ganzes Wort möglich:

    writeString("Hello");

    Gruß

    mic
    Bild hier  
    Atmel’s products are not intended, authorized, or warranted for use
    as components in applications intended to support or sustain life!

  6. #6
    Neuer Benutzer Öfters hier
    Registriert seit
    26.11.2011
    Beiträge
    10
    Servus

    Hab jetzt den Befehl umgeschrieben aber funktionieren tuts immer noch nicht. Hab mir mal des Datasheet von dem TTS256 durchgelesen und da bin ich auf was gestoßen.

    Operation:
    Communications parameters of the serial port are set to 9600 Baud N81. The host
    processors send up to 128 character the TTS256’s serial port on pin 18 (RX).
    Text is spoken when the TTS256 receives a new line character (0x0A)
    or the maximum number of 128 characters has been received.


    Wie soll ich des deiner Meinung nach als Befehl schreiben vielleicht so?

    writeString("Hello");
    writeChar(0x0A);

    Danke für die Antwort.

  7. #7
    Moderator Robotik Visionär Avatar von radbruch
    Registriert seit
    27.12.2006
    Ort
    Stuttgart
    Alter
    62
    Beiträge
    5.799
    Blog-Einträge
    8
    Das sollte so funktionieren. Oder du hängst das Linefeed als Steuerzeichen direkt an die Zeichenkette:

    writeString("Hello\n");
    Bild hier  
    Atmel’s products are not intended, authorized, or warranted for use
    as components in applications intended to support or sustain life!

Ähnliche Themen

  1. BTM222 mit RP6 und RobotLoader
    Von marvin2610 im Forum Robby RP6
    Antworten: 3
    Letzter Beitrag: 05.01.2013, 13:00
  2. BTM222 mit RP6 und RobotLoader
    Von marvin2610 im Forum Elektronik
    Antworten: 0
    Letzter Beitrag: 30.12.2012, 15:01
  3. Antworten: 13
    Letzter Beitrag: 28.06.2012, 15:31
  4. SpeakJet ausverkauft?
    Von Rio im Forum Elektronik
    Antworten: 2
    Letzter Beitrag: 08.06.2006, 11:16
  5. sprechendes IC - Speakjet
    Von avatar im Forum Elektronik
    Antworten: 30
    Letzter Beitrag: 05.09.2005, 13:53

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

Labornetzteil AliExpress