www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik PIC - Adresskennung


Autor: Freedzz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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:

Bewertung
0 lesenswert
nicht lesenswert
Verzeihung, aber es handelt sich um Assemblerprogrammierung. Ich 
vergass, dies mitzuteilen.

Gruß
Freedzz

Autor: Jens Plappert (Firma: FTSK) (gravewarrior)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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:

Bewertung
0 lesenswert
nicht lesenswert
Jepp, grad geschaut, ANDLW, RRF und eben das ganze MOVLW und MOVWF zeugs 
sollten genügen um das hinzubekommen.

Autor: Freedzz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Vielen Dank für deine Idee Jens . Ich werd dies gleich mal versuchen.

Gruß,
Freedzz

Autor: Jens Plappert (Firma: FTSK) (gravewarrior)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
biddschee

Autor: Tajas R. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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 E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail ü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
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
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.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.