Sollte so aussehen:
Code:
'Zeigt an der Position 1,1 das Wort "Hallo" an.
'by jon
'--------------------------
'------ I/O PORTS ---------
'--------------------------
'- INTERFACE LCD/EXTPORT --
Define Sdio Port[1]
Define Sclio Port[3]
Define Strobe Port[4]
Define Lstrobe Port[7]
'-- INTERFACE COM/NAV -----
Define Dataline Port[1]
Define Clockline Port[2]
'-- CC2 INTERFACE -------
Define Cc2power Port[8]
'------ LCD INTERFACE ------
Define Lcd_port Byteport[2]
Define Lcd_rs Port[14]
Define Lcd_rw Port[13]
Define Lcd_e Port[15]
'--------------------------
'------ SENSORS ---------
'--------------------------
Define Light_l Ad[7]
Define Light_r Ad[6]
Define Sys_volts Ad[3]
Define Chrg_current Ad[2]
Define Sys_current Ad[1]
Define Mic Ad[4]
Define Touch Ad[5]
'---------------------------
'------ DRIVE -------------
'---------------------------
Define Speed_l Da[1]
Define Speed_r Da[2]
Define Rev_l Port[6]
Define Rev_r Port[5]
'--------------------------
'---- SYSTEM MEMORY -------
'--------------------------
'--- INTERFACE BUFFER ----
Define Lbyte Byte[1]
Define Hbyte Byte[2]
Define Subcmd Byte[3]
'---- OPERATION DATA ------
Define Extport Byte[4]
Define Led1_f Bit[29]
Define Led2_f Bit[30]
Define Led3_f Bit[31]
Define Led4_f Bit[32]
Define System_status Byte[5]
Define Ledport Byte[6]
Define L1_f Bit[41]
Define L2_f Bit[42]
Define L3_f Bit[43]
Define L4_f Bit[44]
Define L5_f Bit[45]
Define L6_f Bit[46]
Define L7_f Bit[47]
Define L8_f Bit[48]
'---- LCD DRIVER -------------
Define Lcd_buf Byte[7]
Define Lcd_param Byte[8]
'--------------------------
'---- USER MEMORY -------
'--------------------------
'--- BIN-DEZIMAL-CONVERTER ---
Define Hunderter Byte [10]
Define Zehner Byte[11]
Define Einer Byte[12]
Define Value Byte[13]
Define Value16 Word [12]
'--- SYSTEMROUTINEN -----------
Define Plm_slow &H01C2
Define System &H01C7
Define Led_drive &H01CA
Define Comnav &H0144
'- ERWEITERTE SYSTEM ROUTINEN -
Define Revr &H0101 'ANTRIEB RECHTS RÜCKWÄRTS
Define Revl &H0106 'ANTRIEB LINKS RÜCKWÄRTS
Define Fwdr &H010B 'ANTRIEG RECHTS VORWÄRTS
Define Fwdl &H0110 'ANTRIEB LINKS VORWÄRTS
Define Rotr &H0115 'RECHTS DREHEN
Define Rotl &H0119 'LINKS DREHEN
Define Rev &H011D 'RÜCKWÄRTS
Define Fwd &H0121 'VORWÄRTS
Define Comnav_status &H0125 'UPDATED ALLE FLAGS IM STATUS-REGISTER
Define Acs_lo &H01E0 'ACS POWER LO
Define Acs_hi &H01E8 '
Define Acs_max &H01F0 '
Define Send_tlm &H013A 'SENDET TELEMETRIE (CH=HBYTE,DATEN=LBYTE)
Define Send_sysstat &H0134 'SENDET TLM KANAL 0,SYSTEM STATUS
'(FLAGS für ACS,FWD/REV, ACS_LO/HI/MAX)
'---------- INIT---------------
Lstrobe = Off : Cc2power = On
Gosub Subsys_pwr_on : Rev_l = Off : Rev_r = Off
Gosub Lcd_init : Gosub Message1
Beep 368 , 10 , 0 : Pause 50
'--------------------------------------------
'- DEMO IR CODES AM LCD ANZEIGWEN --
'--------------------------------------------
'---------------- GET IR DATA ------------
#Anfang
Gosub Lcd_cls
Lcd_param = 1 : Gosub Lcd_gotoline
Lcd_param = &H48 : Gosub Lcd_writechar 'H
Lcd_param = &H41 : Gosub Lcd_writechar 'A
Lcd_param = &H4C : Gosub Lcd_writechar 'L
Lcd_param = &H4C : Gosub Lcd_writechar 'L
Lcd_param = &H4F : Gosub Lcd_writechar 'O
Goto Anfang
'IIIIIIIIIII LED DRIVER IIIIIIIIIIIIIIIII
#led1on
Led1_f = On : Goto Extport_write
#led1off
Led1_f = Off : Goto Extport_write
#led2on
Led2_f = On : Goto Extport_write
#led2off
Led2_f = Off : Goto Extport_write
#led3on
Led3_f = On : Goto Extport_write
#led3off
Led3_f = Off : Goto Extport_write
#led4on
Led4_f = On : Goto Extport_write
#led4off
Led4_f = Off : Goto Extport_write
#ledsoff
Extport = Extport And &H0F
#extport_write
Sys System : Pulse Strobe : Return
'--- LEDS AUF DER BASIS ERWEITERUNG ------
#l1on
L1_f = On : Goto Ledport_write
#l1off
L1_f = Off : Goto Ledport_write
#l2on
L2_f = On : Goto Ledport_write
#l2off
L2_f = Off : Goto Ledport_write
#l3on
L3_f = On : Goto Ledport_write
#l3off
L3_f = Off : Goto Ledport_write
#l4on
L4_f = On : Goto Ledport_write
#l4off
L4_f = Off : Goto Ledport_write
#l5on
L5_f = On : Goto Ledport_write
#l5off
L5_f = Off : Goto Ledport_write
#l6on
L6_f = On : Goto Ledport_write
#l6off
L6_f = Off : Goto Ledport_write
#l7on
L7_f = On : Goto Ledport_write
#l7off
L7_f = Off : Goto Ledport_write
#l8on
L8_f = On : Goto Ledport_write
#l8off
L8_f = Off : Goto Ledport_write
#loff
Ledport = 0
#ledport_write
Sys Led_drive : Pulse Lstrobe : Return
'---------------------------------------
'------------- LCD ROUTINES -------------
'----------------------------------------
#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
'IIIIII SYSTEMROUTINEN COMM/NAV SYSTEM IIIII
#get_irdata
Subcmd = 1 : Sys Comnav : Return
#send_irdata
Subcmd = 0 : Sys Comnav : Return
#rc5
Subcmd = 4 : Sys Comnav : Lbyte = Hbyte And &HFC
Hbyte = 00 : Subcmd = 2 : Sys Comnav : Return
#rc5_int
Subcmd = 4 : Sys Comnav : Lbyte =(hbyte And &HFE)OR 2
Hbyte = 00 : Subcmd = 2 : Sys Comnav : Return
#rec80
Subcmd = 4 : Sys Comnav : Lbyte =(hbyte Or &H01)AND&HFD
Hbyte = 00 : Subcmd = 2 : Sys Comnav : Return
#rec80_int
Subcmd = 4 : Sys Comnav : Lbyte =(hbyte Or &H03)
Hbyte = 00 : Subcmd = 2 : Sys Comnav : Return
'IIIIII SYSTEMROUTINEN SYSTEM IIIIIIIIIIII
#no_acs_int
Subcmd = 4 : Sys Comnav : Lbyte = Hbyte And &HFB
Hbyte = 00 : Subcmd = 2 : Sys Comnav : Return
#acs_int_200
Subcmd = 4 : Sys Comnav : Lbyte = Hbyte Or &H04
Hbyte = 50 : Subcmd = 2 : Sys Comnav : Return
#subsys_pwr_on
Sdio = On : Sclio = On : Strobe = Off : Extport =(extport And &HFE)OR 8
Sys System : Return
#subsys_pwr_off
Extport =(extport And &HF7)OR 1 : Sys System
Deact Sdio : Deact Sclio : Return
#clr_distance
Subcmd = 3 : Sys Comnav : Return
#l_distance
Subcmd = 6 : Sys Comnav : Return
#r_distance
Subcmd = 7 : Sys Comnav : Return
'---------COM/NAV GERÄTEREIBER -------------
syscode "p5driv12.s19"
Keine Garantie!
Ob das H stimmt weiß ich nicht.
jon
Lesezeichen