; Experiment-25-28X2+TB6612FNG+2Motors.bas #picaxe 28X2 ; Begin Declare Variables, Constants and Devices * * * * * * * * * * * * * * * symbol PWMA = C.1 ; B.0 Right Motor Speed Control symbol PWMB = C.2 ; B.1 Left Motor Speed Control symbol STBY = C.0 ; B.2 HIGH Allows the H-Bridge to Operate symbol AIN1 = C.3 ; B.3 Direction Control symbol AIN2 = C.4 ; B.4 Direction Control symbol BIN1 = C.5 ; B.5 Direction Control symbol BIN2 = C.7 ; B.6 Direction Control symbol Speed = w2 symbol RunTime = w3 ; BEGIN Main Body * * * * * * * * * * * * * * * do ; Motor PIN, Period, Duty Cycles ; FAST to SLOW Speed = 25 ; 200 to 25 RunTime = 5 ; 5 to 35 gosub FWD pause 250 gosub STOPP pause 2000 gosub BAK pause 250 gosub STOPP pause 2000 loop do gosub Left pause 250 gosub STOPP pause 2000 gosub Right pause 250 gosub STOPP pause 2000 loop ; END Main Body * * * * * * * * * * * * * * * * end ; BEGIN Subroutines * * * * * * * * * * * * * * * STOPP: low STBY return FWD: high STBY low AIN1 ; Motor1 FWD high AIN2 ; Motor1 FWD high BIN1 ; Motor2 FWD low BIN2 ; Motor2 FWD ; PIN, Period , Duty Cycles pwmout PWMA, RunTime, Speed pwmout PWMB, RunTime, Speed return BAK: high STBY high AIN1 ; Motor1 BAK low AIN2 ; Motor1 BAK low BIN1 ; Motor2 BAK high BIN2 ; Motor2 BAK pwmout PWMA, RunTime, Speed pwmout PWMB, RunTime, Speed return Left: high STBY low AIN1 ; Motor1 FWD high AIN2 ; Motor1 FWD low BIN1 ; Motor2 BAK high BIN2 ; Motor2 BAK pwmout PWMA, RunTime, Speed pwmout PWMB, RunTime, Speed return Right: high STBY high AIN1 ; Motor1 BAK low AIN2 ; Motor1 BAK high BIN1 ; Motor2 FWD low BIN2 ; Motor2 FWD pwmout PWMA, RunTime, Speed pwmout PWMB, RunTime, Speed return ; END Subroutines * * * * * * * * * * * * * * * * end