RC_Channel: simplify the example
use an array of channels
This commit is contained in:
parent
86b509a609
commit
5642922ca7
@ -60,6 +60,7 @@ RC_Channel rc_5(CH_5);
|
||||
RC_Channel rc_6(CH_6);
|
||||
RC_Channel rc_7(CH_7);
|
||||
RC_Channel rc_8(CH_8);
|
||||
RC_Channel *rc = &rc_1;
|
||||
|
||||
void setup()
|
||||
{
|
||||
@ -72,33 +73,6 @@ void setup()
|
||||
|
||||
// setup radio
|
||||
|
||||
// read eepom or set manually
|
||||
/*
|
||||
* rc_1.radio_min = 1100;
|
||||
* rc_1.radio_max = 1900;
|
||||
*
|
||||
* rc_2.radio_min = 1100;
|
||||
* rc_2.radio_max = 1900;
|
||||
*
|
||||
* rc_3.radio_min = 1100;
|
||||
* rc_3.radio_max = 1900;
|
||||
*
|
||||
* rc_4.radio_min = 1100;
|
||||
* rc_4.radio_max = 1900;
|
||||
*
|
||||
* // or
|
||||
*
|
||||
* rc_1.load_eeprom();
|
||||
* rc_2.load_eeprom();
|
||||
* rc_3.load_eeprom();
|
||||
* rc_4.load_eeprom();
|
||||
* rc_5.load_eeprom();
|
||||
* rc_6.load_eeprom();
|
||||
* rc_7.load_eeprom();
|
||||
* rc_8.load_eeprom();
|
||||
*
|
||||
*/
|
||||
|
||||
// interactive setup
|
||||
setup_radio();
|
||||
|
||||
@ -120,6 +94,12 @@ void setup()
|
||||
rc_7.set_range(0,1000);
|
||||
rc_8.set_range(0,1000);
|
||||
|
||||
#if 0
|
||||
for (byte i=0; i<8; i++) {
|
||||
rc[i].set_reverse(false);
|
||||
}
|
||||
#endif
|
||||
|
||||
for (byte i = 0; i < 30; i++) {
|
||||
read_radio();
|
||||
}
|
||||
@ -138,79 +118,28 @@ void loop()
|
||||
|
||||
void read_radio()
|
||||
{
|
||||
rc_1.set_pwm(APM_RC.InputCh(CH_1));
|
||||
rc_2.set_pwm(APM_RC.InputCh(CH_2));
|
||||
rc_3.set_pwm(APM_RC.InputCh(CH_3));
|
||||
rc_4.set_pwm(APM_RC.InputCh(CH_4));
|
||||
rc_5.set_pwm(APM_RC.InputCh(CH_5));
|
||||
rc_6.set_pwm(APM_RC.InputCh(CH_6));
|
||||
rc_7.set_pwm(APM_RC.InputCh(CH_7));
|
||||
rc_8.set_pwm(APM_RC.InputCh(CH_8));
|
||||
//Serial.printf_P(PSTR("OUT 1: %d\t2: %d\t3: %d\t4: %d \n"), rc_1.control_in, rc_2.control_in, rc_3.control_in, rc_4.control_in);
|
||||
for (byte i=0; i<8; i++) {
|
||||
rc[i].set_pwm(APM_RC.InputCh(CH_1+i));
|
||||
}
|
||||
}
|
||||
|
||||
void print_pwm()
|
||||
{
|
||||
Serial.print("ch1 ");
|
||||
Serial.print(rc_1.control_in, DEC);
|
||||
Serial.print("\tch2: ");
|
||||
Serial.print(rc_2.control_in, DEC);
|
||||
Serial.print("\tch3 :");
|
||||
Serial.print(rc_3.control_in, DEC);
|
||||
Serial.print("\tch4 :");
|
||||
Serial.print(rc_4.control_in, DEC);
|
||||
Serial.print("\tch5 :");
|
||||
Serial.print(rc_5.control_in, DEC);
|
||||
Serial.print("\tch6 :");
|
||||
Serial.print(rc_6.control_in, DEC);
|
||||
Serial.print("\tch7 :");
|
||||
Serial.print(rc_7.control_in, DEC);
|
||||
Serial.print("\tch8 :");
|
||||
Serial.println(rc_8.control_in, DEC);
|
||||
for (byte i=0; i<8; i++) {
|
||||
Serial.printf("ch%u: %4d ", (unsigned)i+1, (int)rc[i].control_in);
|
||||
}
|
||||
Serial.printf("\n");
|
||||
}
|
||||
|
||||
void
|
||||
print_radio_values()
|
||||
{
|
||||
Serial.print("CH1: ");
|
||||
Serial.print(rc_1.radio_min, DEC);
|
||||
Serial.print(" | ");
|
||||
Serial.println(rc_1.radio_max, DEC);
|
||||
|
||||
Serial.print("CH2: ");
|
||||
Serial.print(rc_2.radio_min, DEC);
|
||||
Serial.print(" | ");
|
||||
Serial.println(rc_2.radio_max, DEC);
|
||||
|
||||
Serial.print("CH3: ");
|
||||
Serial.print(rc_3.radio_min, DEC);
|
||||
Serial.print(" | ");
|
||||
Serial.println(rc_3.radio_max, DEC);
|
||||
|
||||
Serial.print("CH4: ");
|
||||
Serial.print(rc_4.radio_min, DEC);
|
||||
Serial.print(" | ");
|
||||
Serial.println(rc_4.radio_max, DEC);
|
||||
|
||||
Serial.print("CH5: ");
|
||||
Serial.print(rc_5.radio_min, DEC);
|
||||
Serial.print(" | ");
|
||||
Serial.println(rc_5.radio_max, DEC);
|
||||
|
||||
Serial.print("CH6: ");
|
||||
Serial.print(rc_6.radio_min, DEC);
|
||||
Serial.print(" | ");
|
||||
Serial.println(rc_6.radio_max, DEC);
|
||||
|
||||
Serial.print("CH7: ");
|
||||
Serial.print(rc_7.radio_min, DEC);
|
||||
Serial.print(" | ");
|
||||
Serial.println(rc_7.radio_max, DEC);
|
||||
|
||||
Serial.print("CH8: ");
|
||||
Serial.print(rc_8.radio_min, DEC);
|
||||
Serial.print(" | ");
|
||||
Serial.println(rc_8.radio_max, DEC);
|
||||
for (byte i=0; i<8; i++) {
|
||||
Serial.printf("CH%u: %u|%u\n",
|
||||
(unsigned)i+1,
|
||||
(unsigned)rc[i].radio_min,
|
||||
(unsigned)rc[i].radio_max);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -218,30 +147,16 @@ void
|
||||
setup_radio()
|
||||
{
|
||||
Serial.println("\n\nRadio Setup:");
|
||||
uint8_t i;
|
||||
|
||||
for(i = 0; i < 100; i++) {
|
||||
for (byte i = 0; i < 100; i++) {
|
||||
delay(20);
|
||||
read_radio();
|
||||
}
|
||||
|
||||
rc_1.radio_min = rc_1.radio_in;
|
||||
rc_2.radio_min = rc_2.radio_in;
|
||||
rc_3.radio_min = rc_3.radio_in;
|
||||
rc_4.radio_min = rc_4.radio_in;
|
||||
rc_5.radio_min = rc_5.radio_in;
|
||||
rc_6.radio_min = rc_6.radio_in;
|
||||
rc_7.radio_min = rc_7.radio_in;
|
||||
rc_8.radio_min = rc_8.radio_in;
|
||||
|
||||
rc_1.radio_max = rc_1.radio_in;
|
||||
rc_2.radio_max = rc_2.radio_in;
|
||||
rc_3.radio_max = rc_3.radio_in;
|
||||
rc_4.radio_max = rc_4.radio_in;
|
||||
rc_5.radio_max = rc_5.radio_in;
|
||||
rc_6.radio_max = rc_6.radio_in;
|
||||
rc_7.radio_max = rc_7.radio_in;
|
||||
rc_8.radio_max = rc_8.radio_in;
|
||||
for (byte i=0; i<8; i++) {
|
||||
rc[i].radio_min = rc[i].radio_in;
|
||||
rc[i].radio_max = rc[i].radio_in;
|
||||
}
|
||||
|
||||
rc_1.radio_trim = rc_1.radio_in;
|
||||
rc_2.radio_trim = rc_2.radio_in;
|
||||
@ -260,14 +175,9 @@ setup_radio()
|
||||
// ----------------------------------------------------------
|
||||
read_radio();
|
||||
|
||||
rc_1.update_min_max();
|
||||
rc_2.update_min_max();
|
||||
rc_3.update_min_max();
|
||||
rc_4.update_min_max();
|
||||
rc_5.update_min_max();
|
||||
rc_6.update_min_max();
|
||||
rc_7.update_min_max();
|
||||
rc_8.update_min_max();
|
||||
for (byte i=0; i<8; i++) {
|
||||
rc[i].update_min_max();
|
||||
}
|
||||
|
||||
if(Serial.available() > 0) {
|
||||
//rc_3.radio_max += 250;
|
||||
|
Loading…
Reference in New Issue
Block a user