home *** CD-ROM | disk | FTP | other *** search
/ Chip 1998 April / CHIP4_98.ISO / software / ccconrad / basic.exe / CHIP / Programme.Bas / Beispiele_2 / LCDANZ.BAS < prev    next >
Encoding:
BASIC Source File  |  1997-05-28  |  1.5 KB  |  93 lines

  1. '**************************************
  2. '
  3. ' C-Control/BASIC       LCDANZ.BAS
  4. '
  5. ' Aufgabe:
  6. '
  7. ' - Ansteuern einer LCD-Anzeige
  8. ' - 2 Zeilen, Display-Daten ⁿber RS232
  9. '
  10. '**************************************
  11. ' --- Definitionen --------------------
  12.  
  13. define Datenbus byteport[1]
  14. define RS port[9]
  15. define RW port[10]
  16. define E port[11]
  17. define Zeile bit[1]  ' Zeile (0 oder 1)
  18. define Daten byte    ' Pufferbyte
  19. define Position byte ' Ausgabeposition (0...19)
  20.  
  21. define Maxpos 7          ' maximal 20 Zeichen pro Zeile
  22.  
  23. ' --- Programmoperationen -------------
  24.  
  25. #Start
  26.   gosub Init
  27.   Zeile = 0
  28. #Loop
  29.   get Daten
  30.   put Daten
  31.   if Daten = 13 then gosub CR
  32.   if Daten = 13 then goto Loop
  33.   if Daten = 10 then goto Loop
  34.   gosub Zeichen
  35.   if Position > Maxpos then gosub LF
  36.   goto Loop
  37.  
  38. #Init
  39. E=0
  40. Daten = &H38    'Initialisierung
  41. gosub Kommando
  42. Daten = &H0E    'Display einschalten
  43. gosub Kommando
  44. Daten = &H01
  45. gosub Kommando
  46. Position = 0
  47. return
  48.  
  49. #LF       'Zeilenwechsel
  50. Zeile = NOT Zeile
  51. Position = 0
  52. If Zeile then Daten = 64 else Daten = 0
  53. gosub Cursor
  54. return
  55.  
  56. #CR       'Zeilenwechsel
  57. Zeile = NOT Zeile
  58. Position = 0
  59. If Zeile then Daten = 64 else Daten = 0
  60. gosub Cursor
  61. Daten = 13
  62. return
  63.  
  64. #cls      ' Display loeschen
  65.   Daten = &H02
  66.   gosub Kommando
  67.   Position = 0
  68. return
  69.  
  70. #Kommando
  71. RW = 0
  72. RS = 0
  73. Datenbus = Daten
  74. pulse E
  75. return
  76.  
  77. #Zeichen
  78. RW = 0
  79. RS = 1
  80. Datenbus = Daten
  81. pulse E
  82. Position = Position + 1
  83. return
  84.  
  85. #Cursor
  86. RW = 0
  87. RS = 0
  88. Datenbus = Daten + &H80
  89. pulse E
  90. return
  91.  
  92. end
  93.