forked from StopPointTeam/TaiChi
sensor 库增加闪烁灰度传感器的功能
This commit is contained in:
parent
654a7cde22
commit
81687a0a7f
@ -7,9 +7,66 @@ Sensor::Sensor()
|
|||||||
{
|
{
|
||||||
pinMode(BUTTON_1_OUT, INPUT);
|
pinMode(BUTTON_1_OUT, INPUT);
|
||||||
pinMode(BUTTON_2_OUT, INPUT);
|
pinMode(BUTTON_2_OUT, INPUT);
|
||||||
|
|
||||||
|
pinMode(GRAY_1_VCC, OUTPUT);
|
||||||
|
digitalWrite(GRAY_1_VCC, HIGH);
|
||||||
|
|
||||||
|
pinMode(GRAY_2_VCC, OUTPUT);
|
||||||
|
digitalWrite(GRAY_2_VCC, HIGH);
|
||||||
|
|
||||||
|
pinMode(GRAY_3_VCC, OUTPUT);
|
||||||
|
digitalWrite(GRAY_3_VCC, HIGH);
|
||||||
|
|
||||||
|
pinMode(GRAY_4_VCC, OUTPUT);
|
||||||
|
digitalWrite(GRAY_4_VCC, HIGH);
|
||||||
|
|
||||||
|
pinMode(GRAY_5_VCC, OUTPUT);
|
||||||
|
digitalWrite(GRAY_5_VCC, HIGH);
|
||||||
|
|
||||||
|
pinMode(GRAY_6_VCC, OUTPUT);
|
||||||
|
digitalWrite(GRAY_6_VCC, HIGH);
|
||||||
|
|
||||||
|
pinMode(BUTTON_1_VCC, OUTPUT);
|
||||||
|
digitalWrite(BUTTON_1_VCC, HIGH);
|
||||||
|
|
||||||
|
pinMode(BUTTON_2_VCC, OUTPUT);
|
||||||
|
digitalWrite(BUTTON_2_VCC, HIGH);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
//使灰度传感器闪烁
|
||||||
|
void Sensor::FlashGraySensor(uint8_t gray_sensor_num)
|
||||||
|
{
|
||||||
|
switch (gray_sensor_num)
|
||||||
|
{
|
||||||
|
case GRAY_1: digitalWrite(GRAY_1_VCC, LOW); break;
|
||||||
|
case GRAY_2: digitalWrite(GRAY_2_VCC, LOW); break;
|
||||||
|
case GRAY_3: digitalWrite(GRAY_3_VCC, LOW); break;
|
||||||
|
case GRAY_4: digitalWrite(GRAY_4_VCC, LOW); break;
|
||||||
|
case GRAY_5: digitalWrite(GRAY_5_VCC, LOW); break;
|
||||||
|
case GRAY_6: digitalWrite(GRAY_6_VCC, LOW);
|
||||||
|
}
|
||||||
|
|
||||||
|
#ifdef SENSOR_DEBUG
|
||||||
|
//调试输出闪烁信息
|
||||||
|
switch (gray_sensor_num)
|
||||||
|
{
|
||||||
|
case GRAY_1: Serial.println("#SENSOR: FLASH GRAY_1 NOW!"); break;
|
||||||
|
case GRAY_2: Serial.println("#SENSOR: FLASH GRAY_2 NOW!"); break;
|
||||||
|
case GRAY_3: Serial.println("#SENSOR: FLASH GRAY_3 NOW!"); break;
|
||||||
|
case GRAY_4: Serial.println("#SENSOR: FLASH GRAY_4 NOW!"); break;
|
||||||
|
case GRAY_5: Serial.println("#SENSOR: FLASH GRAY_5 NOW!"); break;
|
||||||
|
case GRAY_6: Serial.println("#SENSOR: FLASH GRAY_6 NOW!");
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
delay(GRAY_FLASH_TIME);
|
||||||
|
Sensor();
|
||||||
|
delay(GRAY_FLASH_TIME);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
//灰度传感器判断下方是否为白色
|
||||||
bool Sensor::IsWhite(uint8_t gray_sensor_num)
|
bool Sensor::IsWhite(uint8_t gray_sensor_num)
|
||||||
{
|
{
|
||||||
uint8_t gray_out_pin;
|
uint8_t gray_out_pin;
|
||||||
@ -48,6 +105,7 @@ bool Sensor::IsWhite(uint8_t gray_sensor_num)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
//碰撞传感器(开关)判断是否闭合
|
||||||
bool Sensor::IsPushed(uint8_t button_num)
|
bool Sensor::IsPushed(uint8_t button_num)
|
||||||
{
|
{
|
||||||
uint8_t button_out_pin;
|
uint8_t button_out_pin;
|
||||||
|
|||||||
@ -6,7 +6,7 @@
|
|||||||
#define SENSOR_DEBUG
|
#define SENSOR_DEBUG
|
||||||
|
|
||||||
|
|
||||||
//灰度传感器接口定义
|
//灰度传感器 OUT 接口定义
|
||||||
#define GRAY_1_OUT A0
|
#define GRAY_1_OUT A0
|
||||||
#define GRAY_2_OUT A1
|
#define GRAY_2_OUT A1
|
||||||
#define GRAY_3_OUT A2
|
#define GRAY_3_OUT A2
|
||||||
@ -14,9 +14,20 @@
|
|||||||
#define GRAY_5_OUT A4
|
#define GRAY_5_OUT A4
|
||||||
#define GRAY_6_OUT A5
|
#define GRAY_6_OUT A5
|
||||||
|
|
||||||
|
//灰度传感器 VCC 接口定义
|
||||||
|
#define GRAY_1_VCC 48
|
||||||
|
#define GRAY_2_VCC 49
|
||||||
|
#define GRAY_3_VCC 50
|
||||||
|
#define GRAY_4_VCC 51
|
||||||
|
#define GRAY_5_VCC 52
|
||||||
|
#define GRAY_6_VCC 53
|
||||||
|
|
||||||
//灰度传感器临界值
|
//灰度传感器临界值
|
||||||
#define GRAY_GATE_VAL 800
|
#define GRAY_GATE_VAL 800
|
||||||
|
|
||||||
|
//灰度传感器闪烁时间
|
||||||
|
#define GRAY_FLASH_TIME 200
|
||||||
|
|
||||||
//灰度传感器标识定义
|
//灰度传感器标识定义
|
||||||
#define GRAY_1 0
|
#define GRAY_1 0
|
||||||
#define GRAY_2 1
|
#define GRAY_2 1
|
||||||
@ -25,10 +36,14 @@
|
|||||||
#define GRAY_5 4
|
#define GRAY_5 4
|
||||||
#define GRAY_6 5
|
#define GRAY_6 5
|
||||||
|
|
||||||
//碰撞传感器接口定义
|
//碰撞传感器 OUT 接口定义
|
||||||
#define BUTTON_1_OUT 2
|
#define BUTTON_1_OUT 2
|
||||||
#define BUTTON_2_OUT 3
|
#define BUTTON_2_OUT 3
|
||||||
|
|
||||||
|
//碰撞传感器 VCC 接口定义
|
||||||
|
#define BUTTON_1_VCC 46
|
||||||
|
#define BUTTON_2_VCC 47
|
||||||
|
|
||||||
//碰撞传感器标识定义
|
//碰撞传感器标识定义
|
||||||
#define BUTTON_1 0
|
#define BUTTON_1 0
|
||||||
#define BUTTON_2 1
|
#define BUTTON_2 1
|
||||||
@ -39,8 +54,13 @@ class Sensor
|
|||||||
public:
|
public:
|
||||||
Sensor();
|
Sensor();
|
||||||
|
|
||||||
|
//使灰度传感器闪烁
|
||||||
|
void FlashGraySensor(uint8_t gray_sensor_num);
|
||||||
|
|
||||||
|
//灰度传感器判断下方是否为白色
|
||||||
bool IsWhite(uint8_t gray_sensor_num);
|
bool IsWhite(uint8_t gray_sensor_num);
|
||||||
|
|
||||||
|
//碰撞传感器(开关)判断是否闭合
|
||||||
bool IsPushed(uint8_t button_num);
|
bool IsPushed(uint8_t button_num);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user