Archiv verlassen und diese Seite im Standarddesign anzeigen : 300 Bout bei USART
Hallo,
Bei dem unten angeführten Link sind die Register super erklärt, allerdings habe ich eine Funkuhr welche bit einer geschwindigkeit von nur 300 Bout mir die Daten an meine USART weiterleitet.
Mit welcher Zahl soll ich mein SPBRG Register setzen ?
Gibt es hierfür eine Formel, wenn ich mit 20MHz Takte?
http://www.sprut.de/electronic/pic/grund/rs232.htm
da macht nach der beschreibung dir der 20#er nen strich durch die rechnung du kommst ihm minimal auf 1200 baud
wenn du 0 und 255 einträgst
um auf 300 runterzukommen brauchst nen 4 MHz quarz und
spbrg auf 190-200 (wahrscheinlich193) einstellen
Hallo Winne
Gibt es hierfür auch eine berechnungsformel?
Mein Problem:
muss an RX mit 300 Bout die Funkuhr einlesen
und an TX mit möglichst hoher boutrate eine 256MB MMC auslesen
--> das heisst wenn ich einen 4 MHz resonator verwende (für die 300 bout der uhr), kann ich mit maximal 28.8 kbout zum auslesen fahren!
gibt es keine anderen möglichkeiten?
Was macht der vorteiler? Zeitteilungsverhältniss zum takten?
Hallo Winne
Gibt es hierfür auch eine berechnungsformel?
Mein Problem:
muss an RX mit 300 Bout die Funkuhr einlesen
und an TX mit möglichst hoher boutrate eine 256MB MMC auslesen
--> das heisst wenn ich einen 4 MHz resonator verwende (für die 300 bout der uhr), kann ich mit maximal 28.8 kbout zum auslesen fahren!
gibt es keine anderen möglichkeiten?
Was macht der vorteiler? Zeitteilungsverhältniss zum takten?
weis nicht takt zurückschalte eher nicht
aber nen anderes bein dafür frei machen du willst doch nur bei bedarf ne Uhrzeit ausm continuierlichen datenstrom ziehen Oder?
du willst ne eierlegende wollmilchsau aha und nur ein chip und nix drann da hast dich shön angeschmiert .
1. hast du noch ein bein frei?
2. hast du noch platz im speicher bzw was macht der timer
dann schau mal hier
http://www.sprut.de/electronic/pic/programm/rs232.htm
jaja alles auf einmal und das gestern bitte
kannste die uhr net a bisserl antreiben hihi
Habe ich mir auch schon überlegt,
einen I/O pin zum einlesen und das asynchrone datenpaket softwaremässig entschlüsseln
Nur der Takt bleibt immer noch der gleiche!
funzts auch mit zwei Resonatoren?
Für was ist der Vorteiler im µC denn gut? was tut dieses Ding?
bleib lieber beim extra bein
dann kannste mit softwarzähler runterteilen
Habe ich mir auch schon überlegt,
einen I/O pin zum einlesen und das asynchrone datenpaket softwaremässig entschlüsseln
Nur der Takt bleibt immer noch der gleiche!
funzts auch mit zwei Resonatoren?
Für was ist der Vorteiler im µC denn gut? was tut dieses Ding?
der vorteile erweiter deine Möglichkeiten bei der daten übertragung
mo´ment mir fällt noch was ein
ja ne war nichts hast e schon ausgeschöpft
warum solls denn auf der MMC schneller gehen mehr als 2 k hat der PIC doch eh nicht
also in schwupp voll
die meiste zeit brauchst eh zum schaufeln
mir schent da eh was unkoscher mit dem vorteiler hast nicht nen Originaldatenblatt?
normalerweise dachte ich würde das baudratenregiser aus nemn high und low byte bestehen aber den stimmt was auf der seite von deinem ersten link nicht mit der zuordnug der tabellen.
softwaretimer?
mit schleifen abfragen? bzw interupts?
Ich lese insgesamt 3 verschiedene Daten ein
zweimal ueber je einen A/D eingang
einmal die funkuhr
Gemeinsan werden sie auf die mmc via spi geschrieben und wenn die voll ist
über die spi ein und über die usart-->max232 ausgelesen
Das wird sich mit dem zeitmanagement nicht ausgehen
oder?
wenn der speicher fast voll ist --> mittelwert bilden--> zeit einlesen und rüberschaufeln auf die mmc
http://ww1.microchip.com/downloads/en/DeviceDoc/30487c.pdf
seite 102 baudratentabelle
sagt eindeutig
anders geht nichts
der link von dir erleutert es korrekt
wie oft willste die zeit stempeln?
ich fürcht da willst ne kombination die wo der nen Spagat machen muß
aber die software line in isnen ausweg
nur ober sichdann nicht totschaufelt hihi und zählt
wenns auf zeit nicht ankommt alle 10s auf die uhr schauen ?
könnts gehen aber wen während er auf die uhr schaut das ganze in die Hose geht haste gelust
[wenns auf zeit nicht ankommt alle 10s auf die uhr schauen ?]
wenn ich alle 10 sec. die zeit einlese über einen I/O pin (hab noch genug frei)
und die serielle über die software implementiere, sollte es funzen!
bei 20MHz ist eine zykluszeit ziemlich genau 50nsec.
Problem:
<TABLE><TBODY><TR><TD>Baudrate</TD><TD>Bitlänge</TD></TR><TR><TD>300 Baud</TD><TD>3,33 ms</TD></TR><TR><TD>2400 Baud</TD><TD>417 µs</TD></TR><TR><TD>9600 Baud</TD><TD>104 µs</TD></TR><TR><TD>38400 Baud </TD><TD>26,04 µs</TD></TR></TBODY></TABLE>
Wie soll ich das "uhrByte" mit soeiner langsamen Steinzeituhr einlesen? da verliere ich ja die hälfte
mit nem softwarezähler der durch den Timer getriggert wird
hab dir ja gesagt is nen Spagat für deinen flinken Wiesel
der schläft ein, bis mal ne Bitflanke von der Uhr vorbeikommt
lass ne interne Uhr laufen und nen interrupt beim Flankenwechsel stattfinden
oder lass den pic nebenher als Uhr laufen und nimm nur die Synchronsignale von der Uhr (sekundentakt)
[oder lass den pic nebenher als Uhr laufen und nimm nur die Synchronsignale von der Uhr (sekundentakt)]
überlegt hab ichs mir eh schon, wenn ich nicht das Datum auch noch dazu brauchen würde!
(Daten werden später mit einer wetterstation verglichen)
Schaft irgend ein anderer PIC mit 40 Pins eine butrate von 300 ?
(sollte ziemlich ident mit einem 16F877 sein, da ich die hardware schon am probeaufbau fertig habe!)
Powered by vBulletin® Version 4.1.12 Copyright ©2012 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.