Also die DZ liegen so zwischen 5000U/min und 9000U/min.
Ich habe hier schon mal aus Codeschnipseln und den Hilfe Programmen von Conrad was zusammen gebastelt um das LCD-Display an zu steuern.
Ich komm nur einfach nicht darauf wie ich das mit den Drehzahl pro Minute programmieren muss.
Code:
'********************************************************************
'
' C-Control/BASIC LCD3.BAS
'
' Systemvoraussetzungen:
'
' - Application Board mit angeschlossenem Display
'
' Schwerpunkt:
'
' - Ausgeben von Zahlenwerten am Display
'
'********************************************************************
' *** Daten-Definition ***
define value word
define output word
define lcd_buf byte
define lcd_param byte
define i byte
' *** Definition LCD-Ports ***
define lcd_port byteport[2]
define lcd_rs port[14]
define lcd_rw port[13]
define lcd_e port[15]
'*** ASCII-Codes ***
define A_ &H41
define B_ &H42
define C_ &H43
define D_ &H44
define E_ &H45
define F_ &H46
define G_ &H47
define H_ &H48
define I_ &H49
define J_ &H4A
define K_ &H4B
define L_ &H4C
define M_ &H4D
define N_ &H4E
define O_ &H4F
define P_ &H50
define Q_ &H51
define R_ &H52
define S_ &H53
define T_ &H54
define U_ &H55
define V_ &H56
define W_ &H57
define X_ &H58
define Y_ &H59
define Z_ &H5A
define LEERZ &H20
define MINUS &H2D
define NULL &H30
define GLEICH &H3D
define ccc ad[7]
'*** Programmoperationen ***
gosub LCD_INIT
randomize timer
' Zufallszahlen ausgeben
for i = 1 to 9999999999999999999999999999999999999
pause 5
lcd_param = 1 : gosub LCD_GOTOLINE
lcd_param = D_ : gosub LCD_WRITECHAR
lcd_param = R_ : gosub LCD_WRITECHAR
lcd_param = E_ : gosub LCD_WRITECHAR
lcd_param = H_ : gosub LCD_WRITECHAR
lcd_param = Z_ : gosub LCD_WRITECHAR
lcd_param = A_ : gosub LCD_WRITECHAR
lcd_param = H_ : gosub LCD_WRITECHAR
lcd_param = L_ : gosub LCD_WRITECHAR
lcd_param = LEERZ : gosub LCD_WRITECHAR
lcd_param = GLEICH : gosub LCD_WRITECHAR
lcd_param = LEERZ : gosub LCD_WRITECHAR
value = ccc
gosub WRITEVALUE
next
end
#WRITEVALUE
output = abs(value)
' negatives Vorzeichen oder Leerzeichen
if value < 0 then lcd_param = MINUS else lcd_param = LEERZ
gosub LCD_WRITECHAR
' Zehntausender-Dezimalstelle oder Leerzeichen (Ausblenden fuehrender Nullen)
if abs(value) >= 10000 then lcd_param = NULL + output/10000 else lcd_param = LEERZ
gosub LCD_WRITECHAR
output = output mod 10000
' Tausender-Dezimalstelle oder Leerzeichen
if abs(value) >= 1000 then lcd_param = NULL + output/1000 else lcd_param = LEERZ
gosub LCD_WRITECHAR
output = output mod 1000
' Hunderter-Dezimalstelle oder Leerzeichen
if abs(value) >= 100 then lcd_param = NULL + output/100 else lcd_param = LEERZ
gosub LCD_WRITECHAR
output = output mod 100
' Zehner-Dezimalstelle oder Leerzeichen
if abs(value) >= 10 then lcd_param = NULL + output/10 else lcd_param = LEERZ
gosub LCD_WRITECHAR
' einer Dezimalstelle oder Leerzeichen
lcd_param = NULL + output mod 10
gosub LCD_WRITECHAR
return
'*** LCD_Interface ***
'( muss in jedes Programm mit LCD-Ausgabe eingefuegt werden)
#LCD_INIT
' alle ports 0
lcd_port = OFF
' 8-Bit-Modus aktivieren
lcd_param=&H38 : gosub LCD_WRITECMD
' mit 8-Bit-Command in 4-Bit-Modus umschalten
lcd_port=&B00000010
tog lcd_e
tog lcd_e
' ab jetzt 4-Bit-Modus
lcd_param = &H28 : gosub LCD_WRITECMD
lcd_param = &H0C : gosub LCD_WRITECMD
' Display loeschen
#LCD_CLS
lcd_param = &H02 : gosub LCD_WRITECMD
lcd_param = &H01 : gosub LCD_WRITECMD
return
' Zeilenwechsel
#LCD_GOTOLINE
if lcd_param = 1 then lcd_param = &H80
if lcd_param = 2 then lcd_param = &HC0
goto LCD_WRITECMD
' LCD-Kommando
#LCD_WRITECMD
lcd_buf = OFF
goto LCD_WRITE
' Zeichenausgabe
#LCD_WRITECHAR
lcd_buf = &B00100000
' Kommando oder Zeichen an Display senden
#LCD_WRITE
lcd_port = lcd_buf or (lcd_param shr 4) ' Hi-Nibble
tog lcd_e
tog lcd_e
lcd_port = lcd_buf or (lcd_param and &H0F) ' Lo-Nibble
tog lcd_e
tog lcd_e
return
Lesezeichen