16 changed files with 171 additions and 208 deletions
-
0Multiprotocol/CC2500_SPI.ino
-
0Multiprotocol/Common.ino
-
0Multiprotocol/FrSkyD_cc2500.ino
-
0Multiprotocol/FrSkyV_cc2500.ino
-
4Multiprotocol/FrSkyX_cc2500.ino
-
9Multiprotocol/Multiprotocol.h
-
144Multiprotocol/Multiprotocol.ino
-
99Multiprotocol/Pins.h
-
0Multiprotocol/SPI.ino
-
0Multiprotocol/TX_Def.h
-
2Multiprotocol/Validate.h
-
36Multiprotocol/_Config.h
-
0Multiprotocol/iface_cc2500.h
-
20Multiprotocol/inputs.ino
-
0Multiprotocol/mi.ino
-
63remote_multiprotocol/Pins.h
@ -0,0 +1,99 @@ |
|||||
|
/* |
||||
|
This project is free software: you can redistribute it and/or modify |
||||
|
it under the terms of the GNU General Public License as published by |
||||
|
the Free Software Foundation, either version 3 of the License, or |
||||
|
(at your option) any later version. |
||||
|
Multiprotocol is distributed in the hope that it will be useful, |
||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of |
||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
||||
|
GNU General Public License for more details. |
||||
|
You should have received a copy of the GNU General Public License |
||||
|
along with Multiprotocol. If not, see <http://www.gnu.org/licenses/>. |
||||
|
*/ |
||||
|
//******************* |
||||
|
//*** Pinouts *** |
||||
|
//******************* |
||||
|
#if 0 |
||||
|
// SDIO MOSI |
||||
|
#define SDI_pin 2 //D5 = PD5 |
||||
|
#define SDI_port PORTB |
||||
|
#define SDI_ipr PINB |
||||
|
#define SDI_ddr DDRB |
||||
|
#define SDI_on SDI_port |= _BV(SDI_pin) |
||||
|
#define SDI_off SDI_port &= ~_BV(SDI_pin) |
||||
|
#define SDI_1 (SDI_ipr & _BV(SDI_pin)) |
||||
|
#define SDI_0 (SDI_ipr & _BV(SDI_pin)) == 0x00 |
||||
|
#define SDI_input SDI_ddr &= ~_BV(SDI_pin) |
||||
|
#define SDI_output SDI_ddr |= _BV(SDI_pin) |
||||
|
|
||||
|
//SDO / MISO |
||||
|
#define SDO_pin 3 //D6 = PD6 |
||||
|
#define SDO_port PORTB |
||||
|
#define SDO_ipr PINB |
||||
|
#define SDO_1 (SDO_ipr & _BV(SDO_pin)) |
||||
|
#define SDO_0 (SDO_ipr & _BV(SDO_pin)) == 0x00 |
||||
|
|
||||
|
// SCLK |
||||
|
#define SCLK_port PORTB |
||||
|
#define SCLK_ddr DDRB |
||||
|
#define SCLK_pin 1 //D4 = PD4 |
||||
|
#define SCLK_output SCLK_ddr |= _BV(SCLK_pin) |
||||
|
#define SCLK_on SCLK_port |= _BV(SCLK_pin) |
||||
|
#define SCLK_off SCLK_port &= ~_BV(SCLK_pin) |
||||
|
|
||||
|
// Chip select CC2500 |
||||
|
#define CC25_CSN_pin 7 //D7 = PD7 |
||||
|
#define CC25_CSN_port PORTE |
||||
|
#define CC25_CSN_ddr DDRE |
||||
|
#define CC25_CSN_output CC25_CSN_ddr |= _BV(CC25_CSN_pin) |
||||
|
#define CC25_CSN_on CC25_CSN_port |= _BV(CC25_CSN_pin) |
||||
|
#define CC25_CSN_off CC25_CSN_port &= ~_BV(CC25_CSN_pin) |
||||
|
|
||||
|
//******************* |
||||
|
//*** Timer *** |
||||
|
//******************* |
||||
|
#define OCF1A_bm _BV(OCF1A) |
||||
|
#define OCF1B_bm _BV(OCF1B) |
||||
|
#define SET_TIMSK1_OCIE1B TIMSK1 |= _BV(OCIE1B) |
||||
|
#define CLR_TIMSK1_OCIE1B TIMSK1 &=~_BV(OCIE1B) |
||||
|
#else |
||||
|
// SDIO MOSI |
||||
|
#define SDI_pin 26 |
||||
|
#define SDI_on digitalWrite(SDI_pin, HIGH) |
||||
|
#define SDI_off digitalWrite(SDI_pin, LOW) |
||||
|
#define SDI_1 (digitalRead(SDI_pin) == HIGH) |
||||
|
#define SDI_0 (digitalRead(SDI_pin) == LOW) |
||||
|
#define SDI_input pinMode(SDI_pin, INPUT); |
||||
|
#define SDI_output pinMode(SDI_pin, OUTPUT); |
||||
|
|
||||
|
//SDO / MISO |
||||
|
#define SDO_pin 25 |
||||
|
#define SDO_on digitalWrite(SDO_pin, HIGH) |
||||
|
#define SDO_off digitalWrite(SDO_pin, LOW) |
||||
|
#define SDO_1 (digitalRead(SDO_pin) == HIGH) |
||||
|
#define SDO_0 (digitalRead(SDO_pin) == LOW) |
||||
|
#define SDO_input pinMode(SDO_pin, INPUT); |
||||
|
#define SDO_output pinMode(SDO_pin, OUTPUT); |
||||
|
|
||||
|
// SCLK |
||||
|
#define SCLK_pin 33 |
||||
|
#define SCLK_on digitalWrite(SCLK_pin, HIGH) |
||||
|
#define SCLK_off digitalWrite(SCLK_pin, LOW) |
||||
|
#define SCLK_1 (digitalRead(SCLK_pin) == HIGH) |
||||
|
#define SCLK_0 (digitalRead(SCLK_pin) == LOW) |
||||
|
#define SCLK_input pinMode(SCLK_pin, INPUT); |
||||
|
#define SCLK_output pinMode(SCLK_pin, OUTPUT); |
||||
|
|
||||
|
// Chip select CC2500 |
||||
|
#define CC25_CSN_pin 32 |
||||
|
#define CC25_CSN_on digitalWrite(CC25_CSN_pin, HIGH) |
||||
|
#define CC25_CSN_off digitalWrite(CC25_CSN_pin, LOW) |
||||
|
#define CC25_CSN_1 (digitalRead(CC25_CSN_pin) == HIGH) |
||||
|
#define CC25_CSN_0 (digitalRead(CC25_CSN_pin) == LOW) |
||||
|
#define CC25_CSN_input pinMode(CC25_CSN_pin, INPUT); |
||||
|
#define CC25_CSN_output pinMode(CC25_CSN_pin, OUTPUT); |
||||
|
#endif |
||||
|
//******************* |
||||
|
//*** EEPROM *** |
||||
|
//******************* |
||||
|
#define EE_ADDR uint8_t* |
@ -0,0 +1,20 @@ |
|||||
|
void update_inputs(void) { |
||||
|
//analogRead()
|
||||
|
static int inc = 1; |
||||
|
#if 1
|
||||
|
if (inc > 0) { |
||||
|
if (Channel_data[THROTTLE] < CHANNEL_MIN_125 + 100) { |
||||
|
Channel_data[THROTTLE] += 1; |
||||
|
}else { |
||||
|
inc = -1; |
||||
|
} |
||||
|
}else { |
||||
|
if (Channel_data[THROTTLE] > CHANNEL_MIN_125) { |
||||
|
Channel_data[THROTTLE] -= 1; |
||||
|
}else { |
||||
|
inc = +1; |
||||
|
} |
||||
|
} |
||||
|
#endif
|
||||
|
} |
||||
|
|
@ -1,63 +0,0 @@ |
|||||
/* |
|
||||
This project is free software: you can redistribute it and/or modify |
|
||||
it under the terms of the GNU General Public License as published by |
|
||||
the Free Software Foundation, either version 3 of the License, or |
|
||||
(at your option) any later version. |
|
||||
Multiprotocol is distributed in the hope that it will be useful, |
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
||||
GNU General Public License for more details. |
|
||||
You should have received a copy of the GNU General Public License |
|
||||
along with Multiprotocol. If not, see <http://www.gnu.org/licenses/>. |
|
||||
*/ |
|
||||
//******************* |
|
||||
//*** Pinouts *** |
|
||||
//******************* |
|
||||
|
|
||||
// SDIO MOSI |
|
||||
#define SDI_pin 2 //D5 = PD5 |
|
||||
#define SDI_port PORTB |
|
||||
#define SDI_ipr PINB |
|
||||
#define SDI_ddr DDRB |
|
||||
#define SDI_on SDI_port |= _BV(SDI_pin) |
|
||||
#define SDI_off SDI_port &= ~_BV(SDI_pin) |
|
||||
#define SDI_1 (SDI_ipr & _BV(SDI_pin)) |
|
||||
#define SDI_0 (SDI_ipr & _BV(SDI_pin)) == 0x00 |
|
||||
#define SDI_input SDI_ddr &= ~_BV(SDI_pin) |
|
||||
#define SDI_output SDI_ddr |= _BV(SDI_pin) |
|
||||
|
|
||||
//SDO / MISO |
|
||||
#define SDO_pin 3 //D6 = PD6 |
|
||||
#define SDO_port PORTB |
|
||||
#define SDO_ipr PINB |
|
||||
#define SDO_1 (SDO_ipr & _BV(SDO_pin)) |
|
||||
#define SDO_0 (SDO_ipr & _BV(SDO_pin)) == 0x00 |
|
||||
|
|
||||
// SCLK |
|
||||
#define SCLK_port PORTB |
|
||||
#define SCLK_ddr DDRB |
|
||||
#define SCLK_pin 1 //D4 = PD4 |
|
||||
#define SCLK_output SCLK_ddr |= _BV(SCLK_pin) |
|
||||
#define SCLK_on SCLK_port |= _BV(SCLK_pin) |
|
||||
#define SCLK_off SCLK_port &= ~_BV(SCLK_pin) |
|
||||
|
|
||||
// Chip select CC2500 |
|
||||
#define CC25_CSN_pin 7 //D7 = PD7 |
|
||||
#define CC25_CSN_port PORTE |
|
||||
#define CC25_CSN_ddr DDRE |
|
||||
#define CC25_CSN_output CC25_CSN_ddr |= _BV(CC25_CSN_pin) |
|
||||
#define CC25_CSN_on CC25_CSN_port |= _BV(CC25_CSN_pin) |
|
||||
#define CC25_CSN_off CC25_CSN_port &= ~_BV(CC25_CSN_pin) |
|
||||
|
|
||||
//******************* |
|
||||
//*** Timer *** |
|
||||
//******************* |
|
||||
#define OCF1A_bm _BV(OCF1A) |
|
||||
#define OCF1B_bm _BV(OCF1B) |
|
||||
#define SET_TIMSK1_OCIE1B TIMSK1 |= _BV(OCIE1B) |
|
||||
#define CLR_TIMSK1_OCIE1B TIMSK1 &=~_BV(OCIE1B) |
|
||||
|
|
||||
//******************* |
|
||||
//*** EEPROM *** |
|
||||
//******************* |
|
||||
#define EE_ADDR uint8_t* |
|
Write
Preview
Loading…
Cancel
Save
Reference in new issue