;***************************************************************************
;*                              mowayWorld                                 *
;***************************************************************************
;*Description:                                                             *
;*Automatically generated code                                             *
;***************************************************************************
;***************************************************************************
	list p=18F86j50
   ;*	Include mOways microcontroller
   #include "inc\P18F86j50.INC"

;****************************************
;*   Variables                          *
;****************************************
vitesse        EQU    0x7E 

;*	Reset Vector
  org		0x1000
  goto	INIT
;*	Program memory	*
  org		0x102A
;************************
;***************************[MOWAY LIBRARIES]*********************************************
  #include "inc\lib_sen_moway_GUI.inc"
  #include "inc\lib_rf2gh4_GUI.inc"
  #include "inc\lib_mot_moway_GUI.inc"
  #include "inc\lib_cam_moway_GUI.inc"
;*************************************

INIT:

;#####################################
  ;*************************[MOWAY CONFIGURATION]***********************
  ;Sensor configuration
  call    SEN_CONFIG
  ;Motor configuration
  call    MOT_CONFIG

;****************************************
;*   Variables initialization           *
;****************************************
  movlw   .0
  movwf    vitesse

;************Module Pause***********************************************

;***********************************************************************

  banksel	    AUX_00	 
  movlw   .60
  movwf   AUX_00
  call    Delay_50ms_mOwayGUI

;***********************************************************************


label0:
;*****************Module Compare Noise*********************************

;**********************************************************************

  call    SEN_MIC_ANALOG
  movf    SEN_MIC,W
  movwf   AUX_01
  clrf    AUX_00
  addlw   .205
  btfss   STATUS,C
  incf    AUX_00,F
  movf    AUX_01,W
  sublw   .50
  btfss   STATUS,Z
  incf    AUX_00,F
  btfsc   AUX_00,1
  goto    label0

;***********************************************************************
;************Module Assigned********************************************

;***********************************************************************

  movlw   .0
  movwf   vitesse

;***********************************************************************
;************Module Leds************************************************

;***********************************************************************

  call    LED_FRONT_ON

;***********************************************************************


label1:
;************Module Maths***********************************************

;***********************************************************************

  movlw   .1
  addwf   vitesse,F

;***********************************************************************

;************Module Move*************************************************

;***********************************************************************

  movf   vitesse,W
  movwf   MOT_VEL
  bsf     MOT_CON,COMTYPE
  movlw   .0
  movwf   MOT_T_DIST_ANG
  bsf     MOT_CON,FWDBACK
  call    MOT_STR

;***********************************************************************

;************Module Pause***********************************************

;***********************************************************************

  banksel	    AUX_00	 
  movlw   .3
  movwf   AUX_00
  call    Delay_50ms_mOwayGUI

;***********************************************************************

;************Module Comparative*******************************************

;************************************************************************

  movf   vitesse,W
  sublw   .100
  btfsc   STATUS,Z
  goto    label2

;***********************************************************************

  goto    label1


label2:
;************Module Leds************************************************

;***********************************************************************

  call    LED_FRONT_OFF
  call    LED_BRAKE_ON

;***********************************************************************


label3:
;************Module Maths***********************************************

;***********************************************************************

  movlw   .1
  subwf   vitesse,F

;***********************************************************************

;************Module Move*************************************************

;***********************************************************************

  movf   vitesse,W
  movwf   MOT_VEL
  bsf     MOT_CON,COMTYPE
  movlw   .0
  movwf   MOT_T_DIST_ANG
  bsf     MOT_CON,FWDBACK
  call    MOT_STR

;***********************************************************************

;************Module Pause***********************************************

;***********************************************************************

  banksel	    AUX_00	 
  movlw   .3
  movwf   AUX_00
  call    Delay_50ms_mOwayGUI

;***********************************************************************

;************Module Comparative*******************************************

;************************************************************************

  movf   vitesse,W
  sublw   .0
  btfsc   STATUS,Z
  goto    label4

;***********************************************************************

  goto    label3


label4:
;************Module Leds************************************************

;***********************************************************************

  call    LED_BRAKE_OFF

;***********************************************************************

;************Module Stop************************************************

;***********************************************************************

;   Call STOP 
    call    MOT_STOP

;***********************************************************************

loopEnd:
  goto    loopEnd

END
