You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

134 lines
2.8 KiB
C++

#include "DebugOpt.h"
uint8_t DebugOpt::led_flow_cnt = 0;
uint8_t DebugOpt::open_road_buf[8] = { 0x55,0x03,0x01,0x01,0x00,0x00,0x00,0xBB };
uint8_t DebugOpt::voive_test_buf[9] = { 0xFD,0x00,0x06,0x01,0x01,0xC4,0xFA,0xBA,0xC3 };
uint8_t DebugOpt::voice_trm_buf[8] = { 0xAF,0x06,0x00,0x02,0x00,0x00,0x01,0xBB };
uint8_t DebugOpt::ir_repo_buf[6] = { 0x03,0x05,0x14,0x45,0xDE,0x92 };
void DebugOpt::DoLEDFlow()
{
switch (led_flow_cnt)
{
case 0:
CoreLED.TurnOn(LED1);
CoreLED.TurnOff(LED2);
CoreLED.TurnOff(LED3);
CoreLED.TurnOff(LED4);
LED.LeftTurnOn();
LED.RightTurnOff();
digitalWrite(LED_BUILTIN, HIGH);
break;
case 1:
CoreLED.TurnOff(LED1);
CoreLED.TurnOn(LED2);
CoreLED.TurnOff(LED3);
CoreLED.TurnOff(LED4);
LED.LeftTurnOff();
LED.RightTurnOn();
digitalWrite(LED_BUILTIN, LOW);
break;
case 2:
CoreLED.TurnOff(LED1);
CoreLED.TurnOff(LED2);
CoreLED.TurnOn(LED3);
CoreLED.TurnOff(LED4);
LED.LeftTurnOn();
LED.RightTurnOff();
digitalWrite(LED_BUILTIN, LOW);
break;
case 3:
CoreLED.TurnOff(LED1);
CoreLED.TurnOff(LED2);
CoreLED.TurnOff(LED3);
CoreLED.TurnOn(LED4);
LED.LeftTurnOff();
LED.RightTurnOn();
digitalWrite(LED_BUILTIN, LOW);
break;
}
led_flow_cnt++;
if (led_flow_cnt >= 4)
led_flow_cnt = 0;
delay(200);
}
void DebugOpt::DebugRun()
{
Serial.println("Hello Accurate DCMotor.");
LED.LeftTurnOn();
LED.RightTurnOn();
BEEP.TurnOn();
delay(100);
BEEP.TurnOff();
/*DCMotor.Go(100, 100);
DCMotor.Stop();
DCMotor.Back(100, 100);
DCMotor.Stop();
DCMotor.TurnLeft_Code(200, 100);
DCMotor.Stop();
DCMotor.TurnRight_Code(200, 100);
DCMotor.Stop();*/
AccurateMotor.RunForward(10);
AccurateMotor.DelayUntilCarStop();
AccurateMotor.RunBackward(10);
AccurateMotor.DelayUntilCarStop();
AccurateMotor.TurnLeft(20);
AccurateMotor.DelayUntilCarStop();
AccurateMotor.TurnRight(20);
AccurateMotor.DelayUntilCarStop();
BEEP.TurnOn();
delay(100);
BEEP.TurnOff();
LED.LeftTurnOff();
LED.RightTurnOff();
}
void DebugOpt::DebugServo()
{
Serial.println("Hello Servo.");
for (int i = -80; i <= 20; i++)
{
OpenMVOpt::Servo_Control(i);
delay(50);
}
OpenMVOpt::Servo_Control(0);
}
void DebugOpt::Road_Gate_Test()
{
Command.Judgment(open_road_buf); //<2F><><EFBFBD><EFBFBD>У<EFBFBD><D0A3><EFBFBD><EFBFBD>
ExtSRAMInterface.ExMem_Write_Bytes(0x6008, open_road_buf, 8);
}
void DebugOpt::Speech_Sounds_Ctr()
{
ExtSRAMInterface.ExMem_Write_Bytes(0x6180, voive_test_buf, 13);
}
void DebugOpt::Speech_Disc()
{
uint8_t sph_id = 0;
/*0Ϊ<30><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>־<EFBFBD><D6BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʶ<EFBFBD><CAB6><EFBFBD><EFBFBD>
2-6Ϊָ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʶ<EFBFBD>𣬾<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD>ɲͨ<EFBFBD><EFBFBD>Э<EFBFBD><EFBFBD>*/
sph_id = BKRC_Voice.BKRC_Voice_Extern(0);
delay(200);
Serial.print("ʶ<EFBFBD>𵽵Ĵ<EFBFBD><EFBFBD><EFBFBD>IDΪ<EFBFBD><EFBFBD>");
Serial.println(sph_id, HEX);
voice_trm_buf[2] = sph_id;
ExtSRAMInterface.ExMem_Write_Bytes(0x6008, voice_trm_buf, 8);//<2F>ϴ<EFBFBD>ʶ<EFBFBD><CAB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ն<EFBFBD>
}
void DebugOpt::Infrared_Test()
{
Infrare.Transmition(ir_repo_buf, 6);
}