Forum: Mikrocontroller und Digitale Elektronik Keil ISD51-Debugger über VUSB


von Tom A. (toma)


Angehängte Dateien:

Lesenswert?

Hallo Leute,

ich habe ein kleines MCS51 Lern- und Experimentierboard mit einem 
AT89S8253 Chip. Dieses Board hat im Chiprom einen Bootloader, durch den 
Programme über RS232 im IntelHex-Format ins RAM (von Neumann) geladen 
und dort ausgeführt werden.

Dieses Board habe ich jetzt umgerüstet auf USB. Dazu verwende ich eine 
modifizierte CDC-Software von VUSB "http://www.recursion.jp/avrcdc/";  in 
einem ATTiny2313.

Das downloaden von Programmen funktioniert gut, aber das debuggen mit 
dem Keil-ISD51 hat gezickt. Grund war der schnelle Datentransfer 
zwischen 51er und VUSB (375000Baud). Der CDC bekam die Daten deutlich 
schneller, als er sie über USB wegschicken konnte.

Nun habe ich in der Datei "ISD51.A51" von Keils ISD51 (ist Bestandteil 
von µVision" eine Verzögerung eingebaut und der Debugger läuft damit 
einwandfrei. Im Macro "SBYTE" wird ein Unterprogramm aufgerufen, welches 
vor dem Senden von Zeichen kurz wartet.

   SBYTE    MACRO             ; Transmit Byte in ACC via serial UART
         JNB_TI $
         CLR_TI
         acall UWait  ;Zeitverzögerung aufrufen
         WR_SBUF           ; MOV SBUF,A
         ENDM

Und hier das Unterprogramm:

   UWait:    ; Verzögerung für VUSB
  PUSH 0
  PUSH ACC
  MOV A,#6
   LWLoop:
  MOV r0,#200
  DJNZ R0,$
  DJNZ ACC,LWLoop
  POP ACC
  POP 0
  RET

P.S. Hatte es auch mit billigen RS232-USB Kabeln probiert, da stellten 
sich beide Teilnehmer tod. Mit dem VUSB bin ich jetzt zufrieden, es 
liefert die Versorgung für mein Board und Download wie debuggen laufen 
über die USB-Schnittstelle

Gruß. Tom

von Tom A. (toma)


Lesenswert?

Habe eben den direkten Link zum CDC ausprobiert, funktioniert bei mir 
nicht :(

Alternativ über die Seite von OBDEV 
"https://www.obdev.at/products/vusb/prjall.html";, dort nach "AVR-CDC - a 
USB to Serial Converter" suchen.

Gruß. Tom

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.