;**********************************************************
;

executeCommand


movlw atdtMsg
movwf strAddr
call strCmp
movwf w_temp
tstf w_temp
skpz
goto caseAtdtEnd

call cmdATDT
goto caseEnd

caseAtdtEnd


movlw atzMsg
movwf strAddr
call strCmp
movwf w_temp
tstf w_temp
skpz
goto caseAtzEnd

call cmdATZ
goto caseEnd

caseAtzEnd

movlw atxzMsg
movwf strAddr
call strCmp
movwf w_temp
tstf w_temp
skpz
goto caseAtxzEnd

call cmdATXZ
goto caseEnd

caseAtxzEnd

movlw atstaMsg
movwf strAddr
call strCmp
movwf w_temp
tstf w_temp
skpz
goto caseAtstaEnd

call cmdATSTA
goto caseEnd

caseAtstaEnd

movlw atvMsg
movwf strAddr
call strCmp
movwf w_temp
tstf w_temp
skpz
goto caseAtvEnd

call cmdATV
goto caseEnd

caseAtvEnd

call printERR ; das komando wurde nicht gefunde n

caseEnd


movlw cmdBuffer
movwf FSR ;- d'1'
call bufferLoeschen


return




;**********************************************************

cmdATRS ; Lese Sensor (<n>)
cmdATRSerrEND
call printERR2
return


;**********************************************************
; Schreibe Wert (<n>) auf Aktor

cmdATWA
cmdATWAerrEND
call printERR2
return

;**********************************************************
; Start Tee brüh Sequ enz


cmdATDT
btfss PORTA,2 ; Ist de r arm überhaupt oben ? - wenn nicht error rausschreiben
goto cmdATDTerrEND

call AktorImpuls

call wait3sec

btfss PORTA,3 ; Ist de r arm unten ? - wenn nicht error rausschreiben
goto cmdATDTerrEND

call printOK

return

cmdATDTerrEND
call printERR1
return


;**********************************************************
; beende Teebrüh Sequ enz soffort ohne schwenken

cmdATXZ

btfss PORTA,3 ; Ist de r arm überhaupt oben ? - wenn nicht error rausschreiben
goto cmdATXZerrEND

call AktorImpuls

call wait3sec
call wait3sec

btfss PORTA,2 ; Ist de r arm unten ? - wenn nicht error rausschreiben
goto cmdATXZerrEND

call printOK

return


cmdATXZerrEND
call printERR1
return

;**********************************************************
; beende Teebrüh Sequ enz

cmdATZ

btfss PORTA,3 ; Ist de r arm überhaupt oben ? - wenn nicht error rausschreiben
goto cmdATZerrEND

call AktorImpuls ; hoch

call wait3sec

call AktorImpuls ; runter

call wait3sec

call AktorImpuls ; hoch

call wait3sec

call AktorImpuls ; runter

call wait3sec

call AktorImpuls ; hoch

call wait3sec
call wait3sec


btfss PORTA,2 ; Ist de r arm unten ? - wenn nicht error rausschreiben
goto cmdATZerrEND

call printOK

return


cmdATZerrEND
call printERR1
return


;**********************************************************


cmdATV ; Status ausgeben
call CRLF
call termStartMsg
return

;**********************************************************


cmdATSTA ; Status ausgeben
call CRLF
call printStatus
return

;**********************************************************


cmdATRESET ; Gerät zurücksetzen
cmdATRESETerrEND
call printERR2
return