senden über serielle Schnittstelle mit PIC16f877

Gast #50337
Lesenswert?

Hallo!

Ich möchte Messwerte, die ich mit Hilfe des internen ADC ermittelt
habe, über die serielle Schnittstelle an einen Computer weitersenden.

Ich verwende einen PIC 16f877, weiß aber nicht wie ich das Problem am
besten angehen soll.

Kann mir bitte jemand ein paar Tips u. Trick bzw. ein Beispiel posten!
Ich wäre echt dankbar!!!
Gast #50339
Lesenswert?

Hallo,

lies dir mal im Datenblatt Kapitel 10.1 und 10.2 durch. Dort ist sehr
gut verständlich erklärt, wie der UART initialisiert werden muß. Sollte
eigentlich keine Probleme bereiten. Hilft dir das weiter ?

Thorsten
Gast #50340
Lesenswert?

Mit dem Datenblatt habe ich mich soweit schon auseinandergesetzt, das
ist aber leider nur graue Theorie...
Bis jetzt funktioniert die Kommunikation (Übertragung eines fixen,
fiktiven Wertes) auf den Comp. noch nicht.

@Marcel: wäre echt super!

Danke für die Antwort!!!
Gast #50341
Lesenswert?

So viel Theorie ist das nun auch nicht. Eher reine Praxis.
UART (TXSTA,RCSTA,BRG,TRISC) nach Datenblatt initialisieren, zu
sendenden Wert in TXREG laden, TXEN=1 und ab geht die Post.

Ein Beispiel in Assembler findest Du in der Codesammlung unter
Minniterminal mit Nokia 3310 Display. Ist zwar für einen 16F628 aber
das Prinzip ist identisch.

Steffen
Gast #50342
Lesenswert?

Ich hoffe, das hilft dir.
Gruß, Dirk.


#define    FOSC    D'4000000'
#define    BAUDRATE  D'19200'
#define    BAUDRELOAD  (FOSC/(D'16'*BAUDRATE))-1

USART_INIT
  BANK_0
  movlw  B'10010000'
  movwf  RCSTA
  BANK_1
  movlw  B'10100100'
  movwf  TXSTA
  movlw  BAUDRELOAD  ; Wird in "CONST.H" definiert...
  movwf  SPBRG
  BANK_0

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren