


            Ŀ              
                                     
                 ERMINAL  MCS    ķ   
                                         (C) H.-J. Bhling 1997/98/99
                                  Ľ        Rankestr. 8a
               V08.99                            40474 Dsseldorf


                             e-mail: H-Boehling@gmx.de
                    http://www.germany.net/teilnehmer/101.107378   

              ͸
                Ein Terminalprogramm fr alle MCS-51-BASIC-Systeme  
              ;  
                   
                                                              
         Das   Programm   Terminal-MCS-51   ist  ein  Terminalprogramm  fr
         MS-DOS-Rechner,   welches   speziell   fr   die   Verwendung  mit
         MCS-51-BASIC  geschrieben  wurde  und  ermglicht  die komfortable
         MCS-51-BASIC-Programmentwicklung mit folgenden Leistungsmerkmalen:

          - Einfaches Laden und Speichern von MCS-51-BASIC-Programmen
          - Umnummerieren von MCS-51-BASIC-Programmen
          - Integrierter Zeileneditor fr MCS-51-BASIC-Zeilen
          - Einbinden eines beliebigen ASCII-Editors

          Hardware-Voraussetzungen
          ------------------------

         Terminal-MCS-51   bentigt   folgende   minimale  Hardware-Voraus-
         setzungen:

          - Einen MS-DOS-Rechner 
          - Beliebige Grafigkarte 
          - Ein Flopy- oder Festplattenlaufwerk
          - Eine serielle Schnittstelle (COM1: oder COM2:)
          - Ein MCS-51-BASIC-System
            (angeschlossen an die serielle Schnittstelle)

  
          MCS-51-BASIC
          ------------

         Der  MCS-51-BASIC-Interpreter wurde von der Fa. Intel speziell fr
         den  Mikrokontroller 8052-AH  entwickelt und pat mit seiner Gre
         von  nur  8  Kbyte in den internen ROM-Speicher dieses Prozessors.
         Mittlerweile  wurde  dieser  Interpreter  von  der  Fa.  Intel als
         Freeware  zur  Verfgung  gestellt. Der  Interpreter   kann   sich
         selbst  mit  einem  MCS-51-BASIC-Programm  aus  einem  vorhandenen 
         8052-AH  in  ein  EPROM  kopieren  (aber  auch  als  kommentierter 
         Soucecode aus dem  Internet  gezogen  werden!). Dieser Interpreter 
         luft   dann   auch  mit  einer  8032-CPU.  Vom  Autor  wurde  ein 
         80C32-BASIC-Steuer-Computer entwickelt, welcher in der Zeitschrift
         "Elektor"  Ausgaben  2/98  und  3/98   verffentlicht  wurde.  Der 
         Befehlsumfang  von  MCS-51-BASIC  ist  vor  allem  im  Bereich der
         String-Verarbeitung    etwas    eingeschrnkt    jedoch   durchaus
         komfortabel.  Leider  wurde   auch   der   Befehl  "RENUMBER"  zum 
         umnummerieren der BASIC-Zeilennummern eingespart. 

                                       - 1 -




          Arbeiten mit Terminal-MCS-51 
          ----------------------------

         Zum   Ausprobieren   kann   Terminal-MCS-51  direkt  von  Diskette
         gestartet  werden,  spter  sollten  die  Dateien TERM-51D.EXE und
         TERM-51D.INI   in   ein   Unterverzeichnis   zusammen   mit  ihren
         MCS-BASIC-Listings  kopiert  werden.  Von  Diskette wird Terminal-
         MCS-51 mit:

         A:>term-51d 

         aufgerufen.  Terminal-MCS-51  ld  die TERM-51D.INI Datei und geht
         direkt  in  den  Terminal-Modus.  Danach  mu  wie blich erst die
         Leertaste   bettigt   werden   um   die   Baudrate-Erkennung  von
         MCS-51-BASIC zu ermglichen. Das MCS-51-System antwortet mit:

         *MCS-51(tm) BASIC V1.1*
         READY
         >

         Am unteren Bildschirmrand wird eine Infozeile der Funktionstasten-
         belegung  angezeigt.  ber  die  Funktionstasten  -F1-  bis  -F10-
         knnen alle weiteren Funktionen aufgerufen werden:


           -F1-  LIST   Listen von MCS-51-BASIC-Programmen.


           -F2-  RUN    Starten von MCS-51-BASIC-Programmen.


           -F3-  LOAD   Laden von MCS-51-BASIC-Programmen.


           -F4-  SAVE   Speichern von MCS-51-BASIC-Programmen.


           -F5-  STOP   Anhalten von MCS-51-BASIC-Programmen.


           -F6-  CONT   Fortsetzen von MCS-51-BASIC-Programmen.


           -F7-  INFO   Anzeigen von Programmlnge, freiem Speicher 
                        u. gesamter Speichergre (LEN, FREE, MTOP).

           -F8-  EDIT   Editieren von einzelnen MCS-51-BASIC-Zeilen oder
                        Aufruf eines Texteditors ber die Datei EDIT.BAT
                        mit bergabe des aktuellen Dateinamens. 
           -F9-  RENUM  Umnummerieren von MCS-51-BASIC-Programmen.
                        (Nicht in der Shareware-Version!)

          -F10-  MENU   Einstellen von COM-Port und Baudrate, Dateinamen 
                        ndern, Datei senden, Protokolldatei ffnen und
                        schlieen, RENUMBER-Werte einstellen, DOS-Shell
                        und beenden des Programms.




                                       - 2 -




          MCS-51-BASIC-Programme laden
          ----------------------------

         Durch   drcken   der  Taste  -F3-  wird  ein  laufendes  Programm
         angehalten  und  Terminal-MCS-51  zeigt ein Inhaltsverzeichnis des
         aktuellen  Pfad und  fragt nach dem zu ladenden Programm. Achtung!
         Ein  eventuell  im  Speicher des MCS-51-BASIC-Rechners vorhandenes
         Programm   wird   bei   Eingabe  eines  existierenden  Dateinamens
         gelscht!  Wird der  Dateiname  ohne Extension eingegeben, so wird
         die  Extension  "LIS"  fr  Listing  vorausgesetzt  und angehangen
         (Diese Standard-Extension  lt  sich  in  der  TERM-51D.INI-Datei
         beliebig  ndern).  Das  Programm lscht nun zunchst den Speicher
         des MCS-51-BASIC-Systems durch den Befehl "NEW" und bertrgt dann
         das   gewhlte  File.  Das  Echo  des  BASIC-Rechners  wird  dabei
         angezeigt.


          MCS-51-BASIC-Programme speichern
          --------------------------------

         Durch   drcken   der  Taste  -F4-  wird  ein  laufendes  Programm
         angehalten,  Terminal-MCS-51  zeigt  ein   Inhaltsverzeichnis  des
         aktuellen  Pfad  und  fragt  nach  dem  Dateinamen  fr  das abzu-
         speichernde  Programm.  Auch  hier  gilt:  Wird der Dateiname ohne
         Extension  eingegeben, so wird die Standard-Extension fr Listings
         vorausgesetzt  und  angehangen.  Existiert  die  eingegebene Datei
         bereits,   so   folgt   eine  Sicherheitsabfrage.  Danach  schickt
         Terminal-MCS-51  den  Befehl "LIST" an das MCS-51-BASIC-System und
         speichert  das  empfangene  Programm  unter dem zuvor eingegebenen
         Dateinamen.






























                                       - 3 -





           MCS-51-Programme editieren
           --------------------------

         MCS-51-BASIC  bietet  in Verbindung mit einem  standard  Terminal-
         programm nur einen einfachen Zeileneditor mit welchem sich nur das
	  letzte  Zeichen  der Eingabezeile lschen lt. Ist die Zeile erst
	  einmal  mit  der  RETURN-Taste abgeschlossen, so lt sie sich nur
	  noch  durch  erneutes  eingeben berschreiben und somit verndern.
	  Wer so ein greres Programm schreiben mchte, wird daran  schnell
	  verzweifeln. Terminal-MCS-51  bietet  drei  verschiedene  Mglich-
	  keiten eine MCS-51-BASIC-Zeile zu editieren:
          
         1.) Es untersttzt den einfachen  MCS-51-Zeileneditor  denn  durch 
             drcken  der  Backspace-Taste  wird  das  letzte  Zeichen  der
             Eingabezeile gelscht.
             
         2.) Auch das Editieren bereits abgeschlossener Zeilen ist mglich!
             Nach drcken der Taste -F8- fragt Terminal-MCS-51  nach  einer 
             Zeilennummer. Die eingegebene  Zeilennummer  wird  angefordert
             und kann dann in gewohnter Weise mit folgenden Tasten editiert 
             werden:
                 
             Cursor rechts,  Cursor links,  End,  Home,  Backspace, Delete,
             Insert.
             
             Return beendet  den  Zeileneditor  und sendet die Zeile wieder 
             zum MCS-51-BASIC-System.
             
         3.) Wird die Frage nach  der  Zeilennummer  mit  der  RETURN-Taste 
             beantwortet,  wird   das   im   MCS-51-BASIC-Sytem  vorhandene
             Programm unter dem aktuellen Dateinamen (*1) abgespeichert und
             danach die DOS-Stapeldatei EDIT.BAT aufgerufen, der  Dateiname
             des MCS-51-BASIC-Programms wird dabei als Parameter bergeben.
             
         *1) Vor  dem   Editieren  eines   MCS-51-BASIC-Programms  mu  ein
             aktueller  Programmname vorhanden sein! Dieser wird beim Laden
             oder Speichern abgespeichert oder kann im Men eingegeben oder
             auch  verndert  werden.  Durch  drcken  der  Taste -F8-  und 
             anschlieendem   RETURN  wird   dann  ein  laufendes  Programm
             angehalten    und    die   Stapelverarbeitungsdatei   EDIT.BAT 
             aufgerufen.  So  kann   jeder   seinen   Lieblings-Editor  zur 
             MCS-51-BASIC-Programmierung  verwenden! Hierfr eignet sich im
             Prinzip  jeder  Editor,  wenn er den Text als "Text  fr  DOS"
             also reinen ASCII-Code abspeichern kann. Zum Beispiel auch der
             unter DOS 6.2 vorhandene Editor. Die Batch-Datei EDIT.BAT  mu
             dazu nur folgende Befehle enthalten:

             @echo off
             c:\dos\edit.exe %1

             Nach dem Editieren wird der Programmtext automatisch wieder in
             den MCS-51-BASIC-Computer bertragen. Dazu wird ein spezielles
             Textlade-Protokoll verwendet, da nach dem  Senden  einer jeden
             BASIC-Zeile  auf  den  Prompt  des  MCS-51-Computers  gewartet
             werden mu.




                                       - 4 -




          MCS-51-Programme umnummerieren (Nur in der Vollversion)
          ------------------------------

         Vor   dem   Umnummerieren  eines  MCS-51-BASIC-Programms  mu  ein
         aktueller  Programmname  vorhanden  sein!  Dieser  wird beim Laden
         oder Speichern angelegt oder kann im Men   eingegeben  oder  auch
         verndert werden. Durch drcken  der  Taste  -F9-  wird  dann  ein
         laufendes Programm angehalten und Terminal-MCS-51 speichert das im
         MCS-51-BASIC-System  vorhandene Programm unter diesem Namen.  Auch
         eine  Sicherungsdatei mit der Extension "BAK"  wird  unter  diesem
         Namen angelegt (die Extension lt sich in der  TERM-51D.INI-Datei
         beliebig  ndern). Danach startet das Umnummerieren mit den in der
         TERM-51D.INI-Datei oder dem  Men   unter Punkt -7-  eingestellten
         Werten fr Schrittweite und  erste  Zeilennummer.  Terminal-MCS-51
         durchsucht  das  Programm  nach Sprngen und berechnet diese unter
         Beachtung  der MCS-51-BASIC-Syntaxregeln neu. So werden scheinbare
         Sprunganweisungen  in  Strings oder hinter REM-Anweisungen selbst-
         verstndlich  nicht  gendert!  Achtung  die Originaldatei ist fr
         alle  Flle  bis zum nchsten Umnummerieren in der Sicherungsdatei
         mit  der  Endung  "BAK" gesichert. Das umnummerierte Programm wird
         abgespeichert und wieder in das MCS-51-BASIC-System geladen.



          Das Terminal-MCS-51 Men
          ------------------------
	    
         ber Taste -F10- gelangt man in das Men von Terminal-MCS-51, dort
         lassen  sich  das  COM-Port  und  die  Baudrate  einstellen,   der 
         Dateiname der aktuellen Programmdatei ndern, eine  Datei  senden,
         eine Protokolldatei ffnen oder schlieen,  die RENUMBER-Werte fr
         die erste Zeilennummer und den Zeilenabstand  einstellen, die DOS-
         Shell aufrufen und Terminal-MCS-51 beenden.
         Mit den Menpunkten -4-  bis  -5-  (Datei  senden,  Protokolldatei
         ffnen  oder  schlieen)   lst   sich   z.B.   ein  EPROM-Brenner
         verwirklichen  bei  welchem  die  zu  brennenden  Daten   in   das 
         MCS-51-BASIC-System   bertragen oder  vom  BASIC-System  gesendet
         werden. Terminal-MCS-51 bertrgt  eine  Datei  dabei  zeilenweise
         und   wartet   nach   jeder   Zeile   auf   ein   ">"-Zeichn   vom
         MCS-51-BASIC-System.  Im  Prinzip  unterscheidet  sich  die  Funk-
         tion "Datei senden"  nur  gering von der Funktion "Programm laden"
         (Taste -F3- im Terminal-Modus)  jedoch  wird  hier  ein  laufendes 
         Programm nicht abgebrochen und gelscht! Mit "Datei senden" lassen
         sich deshalb auch MCS-51-BASIC-Programme laden, und  weil  ein  im 
         Speicher   des   MCS-51-BASIC-System  vorhandenes  Programm  nicht
         gelscht wird, kann man auf diese Art auch Progamme mischen!

         Alle  Einstellungen  im  Terminal-MCS-51-Men  gelten  nur fr die 
         momentane Sitzung beim nchsten Starten von Terminal-MCS-51 werden
         wieder   die   Standardeinstellungen  aus  der  TERM-51D.INI-Datei
         eingestellt.









                                       - 5 -



          Die TERM-51D.INI-DATEI
          ----------------------

         In  der  Datei  TERM-51D.INI  knnen die Standardeinstellungen von
         Terminal-MCS-51  mit  einem  ASCII-Editor eingestellt werden. Dies
         sind im einzelnen:

          - Das Kommunikationsport (COM1: oder COM2:)
          - Die Baudrate (300 bis 9600 Baud)
          - Die Schrittweite beim Umnummerieren (nur in der Vollversion)
          - Die erste Zeilennummer beim Umnummerieren (nur Vollwersion)
          - Die Dateinamenserweiterung fr die MCS-51-BASIC-Listings
          - Die Dateinamenerweiterung fr Sicherungsdateien
          - Die Dateinamenerweiterung fr Protokolldateien

         Achtung! Die Einstellungen in der  TERM-51D.INI-Datei  werden  von
         Terminal-MCS-51  nicht  vollstndig  berprft  und   knnen   bei
         unzulssigen  Werten  zu  Fehlfunktionen  fhren!  Auf  jeden Fall
         sollte  vor   nderungen   eine   Sicherungskopie   der   original
         TERM-51D.INI-Datei angelegt werden. Wird die INI-Datei verndert,
         so ist darauf  zu  achten,  da  hinter den einzelnen Werten nicht
         versehentlich ein (unsichtbares)  Leerzeichen  angefgt  wird,  da
         sonst   beim   Laden   ein   INI-Datei-Fehler   auftritt.  Weitere
         Erklrungen zu den Einstellmglichkeiten  finden   sich   in   dem
         Bemerkungszeilen der TERM-51D.INI-Datei. 

 
           Probleme mit Terminal-MCS-51 ?
           ------------------------------

         Der  Autor  gewhrt  keinerlei  Garantie  fr  Fehlerfreiheit  des
         Programms.  Im  Falle  von  Datenverlust  oder  Beschdigung  wird
         keinerlei  Verantwortung  vom Autor bernommen. Die Nutzung dieses
         Programms geschieht auf eigene Gefahr!  Dieses Programm wurde nach
         bestem  Wissen  und  Gewissen  programmiert und vielfach getestet.
         Trotzdem  lassen sich Programmierfehler nie ganz ausschlieen. Fr
         Hinweise auf Fehler bin ich deshalb sehr dankbar.

         Sollte   bei  hoher  Baudrate-Einstellung  und  langsamen  Floppy-
         Laufwerk   die   Fehlermeldung   "Kommunikationsbuffer   berlauf"
         erscheinen,  mu  entweder  auf  der  Festplatte gearbeitet werden
         oder eine geringere Baudrate eingestellt werden.


          Registrierung von Terminal-MCS-51
          ---------------------------------

         Zur Registrierung benutzen Sie bitte das  Formular  in  der  Datei
         REGISTER.TXT und senden es an:

                            Hans-Jrgen Bhling 
                            Blowstr. 2
                            40476 Dsseldorf
                            Tel. : 0211/462482
 






                                       - 6 -


