Midi - Baud - PIC

OP #1149148
Lesenswert?
• ▲
▼
Hi!

Eine kleine Frage...

Also ich möchte bei einem PIC16F887 mit 20Mhz taktung eine baud von 
31,25Khz einstellen habe aber keine Ahnung wie..
Habe dem Datenballte entnommen, dass es "vorgefehrtigte" Baud gibt die 
man über bitsetzten einstellen kann aber für meine nicht...

Jetzt wollt ich fragen ob mir jemand helfen kann, welche Bit ich setzten 
muss um bei 20MHz eine Baud von 31,25 Khz bekomme...
Die Frage ist für mich seeehr wichtig und ich würde mich über hilfe 
freuen!!

Tausend dank und liebe grüße

Max Berg
#1149170
Lesenswert?
• ▲
▼
Aus Datenblatt Seite 163:
Baud = Fosc/[64*(n+1)]
das Ganze nach n aufgelöst:
n = Fosc/(64*Baudrate) - 1

n = 20000000/(64*31250) - 1 = 9

Also:
SYNC = 0
BRG16 = 0
BRGH = 0
SPBRG = 9

Wenn das Ganze aber synchron laufen soll (ist MIDI synchron?), dann 
sieht es so aus:

Baud = Fosc/[4*(n+1)]
das Ganze nach n aufgelöst:
n = Fosc/(4*Baudrate) - 1

n = 20000000/(4*31250) - 1 = 159

Also:
SYNC = 1
BRG16 = 0
BRGH = 0
SPBRG = 159

Alles klar?

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.