PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Dringent Serielle Daten auf ein Schieberegister bringen wie



AEWE
12.11.2004, 07:12
Hi Leutz brauche dringend eure Allgemeine Hilfe, am besten noch so
schnell wie es geht.

Muss unbedingt ein ein Serielles Schieberegister Daten per PIC 16f877 rein schieben. Habe unendlich lang gegoogelt, also bitte hleft mir.
Verzweiflung ganz nahe :(

Vielleicht, wenn es möglich wäre sogar ne Site oder auch en Code.

Aber bitte schnell,
ich danke euch

stegr
12.11.2004, 08:46
Die Daten hast du schon im PIC drinnen und willst die nur über ein Schieberegister heraus bekommen, oder hab ich da was falsch verstanden?

Dann schließt du bei deinem Schieberegister den Serial-Data-In und den Clock an je einen als Ausgang definierten Pin vom PIC an.

Dein Schieberegister übernimmt immer den Pegel am Serial-Data-In, wenn du eine steigende Clock-Flanke hast. Also musst du nur das Signal anlegen und auf der Clockleitung eine steigende Taktflanke erzeugen.

Dann läuft das nach folgendem Muster:
- Pegel an Serial-Data-In anlegen
- Clock auf HIGH
- Clock auf LOW
- Pegel an Serial-Data-In anlegen
- Clock auf HIGH
- Clock auf LOW
- Pegel an Serial-Data-In anlegen
- ...

Wenn du im PIC die Daten in nem Register stehen hast (als Byte-Wert), dann musst du einfach ne Maske (00000001) nehmen, mit ner Kopie vom Wert ver-UND-en und dann den erzeugten Wert auf dem PIN ausgeben (Abfrage: wenn 1, dann High und dann Clock, wenn 0, dann Low und dann Clock).
Als nächstes dann den Ursprungswert wieder in dein Arbeitsregister kopieren und dort einmal rechtsverschieben. Dann wieder Maske drauf und ausgeben. Und wieder auslesen, rechtsverschieben, usw.
Du solltest dabei noch mitzählen, wieviel Bits du bereits durch hast, damit du nicht zuviele Bits rausgibst; ein Byte darf nur 8 Bit ergeben.

Eventuell musst du noch, je nach Geschwindigkeit von deinem Schieberegister, Verzögerungsschleifen zwischen Pegel anlegen und deinem Clocksignal, sowie zwischen deinem Clock-High und Clock-Low einsetzen.

So, jetzt musst du nur noch mein Geschriebsel in Code umsetzen... ;)

MfG
Stefan

PS: Auch wenn du es eilig hast, wäre es doch sehr angenehm, wenn du zumindest ein wenig die Rechtschreibung beachten könntest.

AEWE
12.11.2004, 09:14
Ich danke dir, aber 2 Sekunden nach dem ich das geschrieben habe is mir auch die Maske eingefallen :), aber jedoch is mir 5 Minuten noch was eingefallen einfach Shiften und Carrybit abfragen und somit Datenübertragung realisieren. :)

LOL manchmal steht man aufm schluach, aber danke für deine schnelle Hilfe, denke werde bei diesem großen Projekt noch öfter Hilfe brauchen :) im Mai werde ich fertig sein und Bilder veröffentlichen :) wird Azubiprojekt is 1 Jahr lang bin nun mein eigener Manager und werde von vorn bis hinten ein eigenes Projekt übernhemen, in dem ich auch andere ma was machen lassen kann :) das is lustig.

16.11.2004, 19:00
ich hab' beim 877 einfach das MSSP Module genommen, geht tadellos.