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
-
7Multiprotocol/Multiprotocol.h
-
142Multiprotocol/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