www.mikrocontroller.net

Forum: Mikrocontroller und Elektronik PIC - Adresskennung

Autor: Freedzz (Gast)
Datum:

Werte Programmiergemeinde,
ich hoffe ihr könnt einem Anfänger eine Frage beantworten und
hoffentlich eine Idee bestätigen.

Ich möchte meinen PIC16f690 über eine RS232-SChnittstelle ansteuern.Aber
darum geht es gar nicht. Die Befehlsdaten verstecken sich in einem
kompletten Byte.
Nun möchte ich dem PIC sagen, das er die ersten 5 Bit dieses Bytes mit
einer in ihm gespeicherten Bitfolge vergleicht. Wird das Carryflag
gesetzt, ist er gemeint und er soll den Befehl der in den letzten 3 Bit
codiert ist ausführen. Wenn nicht, soll er das Byte weitersenden.
Nun meine Frage ob die Idee, alles in ein Byte zu packen machbar ist
oder nicht?
Kann ich dem Pic beibringen nur eine Bit des Bytes zu vergleichen?
Vielleicht nach dem Motto, Bit 5 ist HIGH, dann mache dies, oder Bit 2
ist LOW dann mache das?

Ich möchte bitte nur wissen ob dies möglich ist, eventuell einen kleinen
Hinweis wie man dies macht. Auf die Komplettlösung möchte ich dann
selber kommen.

Gruß
Freedzz
Autor: Freedzz (Gast)
Datum:

Verzeihung, aber es handelt sich um Assemblerprogrammierung. Ich
vergass, dies mitzuteilen.

Gruß
Freedzz
Autor: Jens Plappert (Firma: FTSK) (gravewarrior)
Datum:

wenn du eine AND- Funktion ausführst die "Eingelesenes Byte" AND
11111000 verknüpft hast du diesen Wert isoliert. schibest du das ganze 3
mal nach rechts sogar als "wirklicher Wert".

"Eingelesenes Byte" AND 00000111 liefert dann eben die befehlskennung.

Ich habe schon ewig nix mehr in Assembler gemacht auf Pics, aber das
dürfte recht einfach zu realisieren sein.

Gruß,
Jens
Autor: Jens Plappert (Firma: FTSK) (gravewarrior)
Datum:

Jepp, grad geschaut, ANDLW, RRF und eben das ganze MOVLW und MOVWF zeugs
sollten genügen um das hinzubekommen.
Autor: Freedzz (Gast)
Datum:

Vielen Dank für deine Idee Jens . Ich werd dies gleich mal versuchen.

Gruß,
Freedzz
Autor: Jens Plappert (Firma: FTSK) (gravewarrior)
Datum:

biddschee
Autor: Tajas R. (Gast)
Datum:

Wenn du dann tatsächlich nur einzelne Bits prüfen möchtest gibt es da
noch die Befehle BTFSS und BTFSC einfach im Datenblatt die Befehlsliste
anschauen...

Antwort schreiben

Die Angabe einer Email-Adresse ist freiwillig. Wenn Sie automatisch per Email über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel




Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder GIF-Format hochladen.
Siehe Bildformate

Mit dem Abschicken erkennst du die Nutzungsbedingungen an.

webmaster@mikrocontroller.netImpressumNutzungsbedingungenWerbung auf Mikrocontroller.net