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

  1. '**************************************
  2. '
  3. ' C-Control/BASIC       TIMELCD.BAS
  4. '
  5. ' Aufgabe:
  6. '
  7. ' - Auslesen der Echtzeituhr
  8. ' - Anzeige auf einem LCD-Modul
  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 Daten byte    ' Pufferbyte
  18.  
  19. define Sekunde byte
  20. define Zahl byte
  21.  
  22. ' --- Programmoperationen -------------
  23.  
  24. gosub Init
  25. #Loop
  26.   print hour, minute, second
  27.   print day, month, year
  28.   Daten = 0
  29.   gosub Cursor
  30.   Zahl = hour
  31.   gosub Ausgabe
  32.   Daten = 58  '":"
  33.   gosub Zeichen
  34.   Zahl = minute
  35.   gosub Ausgabe
  36.   Daten = 58  '":"
  37.   gosub Zeichen
  38.   Zahl = second
  39.   gosub Ausgabe
  40.   Daten = 64  'Zeile 2
  41.   gosub Cursor
  42.   Zahl = day
  43.   gosub Ausgabe
  44.   Daten = 46  '"."
  45.   gosub Zeichen
  46.   Zahl = month
  47.   gosub Ausgabe
  48.   Daten = 46  '"."
  49.   gosub Zeichen
  50.   Zahl = year
  51.   gosub Ausgabe
  52.   Zahl = second
  53.   #Loop2
  54.   if Sekunde = second then goto Loop2
  55.   Sekunde = second
  56.   goto Loop
  57.  
  58. #Init
  59. E=0
  60. Daten = &H38    'Initialisierung
  61. gosub Kommando
  62. Daten = &H0E    'Display einschalten
  63. gosub Kommando
  64. Daten = &H01
  65. gosub Kommando
  66. return
  67.  
  68. #Kommando
  69. RW = 0
  70. RS = 0
  71. Datenbus = Daten
  72. pulse E
  73. return
  74.  
  75. #Zeichen
  76. RW = 0
  77. RS = 1
  78. Datenbus = Daten
  79. pulse E
  80. return
  81.  
  82. #Cursor
  83. RW = 0
  84. RS = 0
  85. Datenbus = Daten + &H80
  86. pulse E
  87. return
  88.  
  89. #Ausgabe     'zweistellige Zahl
  90. Daten = (Zahl / 10) + 48
  91. gosub Zeichen
  92. Daten = (Zahl mod 10) + 48
  93. gosub Zeichen
  94. return
  95. end
  96.  
  97.  
  98.  
  99.