www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik SIO beim STK200 (terminal-funtion) - PROBLEM


Autor: Falk W. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hallo,

ich möchte an meinem STK200 über die serielle schnittstelle eine 
zeichenkette senden, die ich dann an einem anderen gerät (pc, hyper 
terminal) empfange und umgekehrt emfangene zeichen anschließend als echo 
zurückschicken.

hier die daten der verbindung:
baud: 9k6
bits: 8
parität: keine
stopbits: 1
protokoll: hardware
verbindung: nullmodemkabel (rs232-subd-9pol)

und hier das problem: es tut sich nichts

frage: woran kann das liegen?

und hier der sourcecode:
; Testet die Serielle Schnittstelle
;
; Sendet auf der Schnittstelle mit 9k6 8N1 einen
; Text und echot dann eingehende Zeichen zurück.
;
; Hardware: Verbindung zwischen Schnittstellen
; Win-Ansteuerung: mit HyperTerminal (siehe Anleitung)
;
.NOLIST
.INCLUDE "8515def.inc"
.LIST
;
; Konstanten
;
.EQU  fq=4000000 ; Quarzfrequenz
.EQU  baud=9600 ; Baudrate
.EQU  bdteiler=(fq/(16*baud))-1 ; Baud-Teiler
;
; Register
;
.DEF  mpr=R16 ; Universalregister
.DEF  nc=R17 ; Zähler
.DEF  c=R18 ; Zeichen
;
;Reset-/Interrupt-Vektoren
  RJMP  main
;
main:  LDI  mpr,bdteiler ; Baudgenerator
  OUT  UBRR,mpr ; Teiler setzen
  LDI  mpr,0b00011000 ; Enable TX und RX
  OUT  UCR,mpr ; an UART Control Register
;
; Sende alle Grossbuchstaben
;
  LDI  c,'A' ; erster Buchstabe
  LDI  nc,90-65+1 ; Anzahl Buchstaben
tloop:  SBIS  USR,UDRE ; Springe, wenn Senderegister leer
  RJMP  tloop ; Warte noch ein Weilchen
  OUT  UDR,c ; Buchstabe an Senderegister übergeben
  INC  c ; nächster Buchstabe
  DEC  nc ; Zähler Anzahl Buchstaben zu senden abwärts
  BRNE  tloop ; nächster Buchstabe
;
; Warte bis Zeichen empfangen, Echo zurück, für immer
;
rloop:  SBIS  USR,RXC ; Teste RXC-bit auf vorliegendes Zeichen
  RJMP  rloop ; Kein Zeichen vorhanden, warte
  IN  c,UDR ; Hole Zeichen vom UART ab
rwait:  SBIS  USR,UDRE ; Warte bis Sender bereit
  RJMP  rwait ; Sender noch nicht frei
  OUT  UDR,c ; Sende Zeichen aus
  CPI  c,0x0D ; Return-Zeichen?
  BRNE  rloop ; Kein Return, einfach weiter
  LDI  c,0x0A ; Lade Linefeed
  RJMP  rwait ; Sende noch Linefeed hinterher

Autor: Falk W. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Merke: immer erst dieses dongle entfernen ;-)

naja, jetzt wird auf jeden fall schonmal was übertragen aber die 26 
zeichen (a-z) werden nicht so übertragen wie es sein sollte und 
anschließend gibt das ein dauer-echo obwol ich nichts übertrage (und für 
störungen ist das zu periodisch).

hier mal das protokoll:

_¯^W×®®«k+ë 
Öþ¬Õµ•uU5õªjª5-õ5-õ5-õ5-õ5-õ5-õ5-õ5-õ5-õ5-õ5-õ5-õ5-õ5-õ5-õ5-õ5-õ5-õ
5-õ5-õ5-õ5-õ5-õ5-õ5-õ5-õ5-õ5-õ5-õ5-õ5-õ5-õ5-õ5-õ5-õ5-õ5-õ5-õ5-õ5-õ5-õ5-õ 
5-õ5-õ5-
õ5-õ5-õ5-õ5-õ5-õ5-õ5-õ5-õ5-õ5-õ5-õ5-õ5-õ5-õ5-õ5-õ5-õ5-õ5-õ5-õ5-õ5-õ5-õ5- 
õ5-õ5-õ5
-õ5-õ5-õ5-õ5-õ5-õ5-õ5-õ5-õ5-õ5-õ5-õ5-õ5-õ5-õ5-õ5-õ5-õ5-õ5-õ5-õ5-õ5-õ5-õ5 
-õ5-õ5-õ
5-õ5-õ5-õ5-õ5-õ5-õ5-õ5-õ5-õ5-õ5-õ5-õ5-õ5

die ascii-zeichen werden hier wohl anders interpretiert, aber man kann 
erkennen das die a-z nicht gleichmäßig verändert sind (bei wiederholung 
aber das gleiche bild geben) und das echo ist auch zu sehen.

Autor: W.Meyer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi.

In der Beschreibung zu meinem STK300-Board steht fogendes.
A standard (straight-throug) lead is required, NOT a null-modem
cable. Auf Deutsch: Ein 1:1-Kabel ist gefordert, kein Null-Modem.
Vielleicht liegt's daran. Jedenfalls hat das bei mir geholfen.

Wolfgang.

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.