mirror of
https://github.com/pascallanger/DIY-Multiprotocol-TX-Module.git
synced 2025-07-03 12:07:52 +00:00
avr code fixes
This commit is contained in:
parent
dd81132386
commit
7d805c4283
@ -52,7 +52,8 @@ enum PROTOCOLS
|
|||||||
MODE_SFHSS = 21, // =>CC2500
|
MODE_SFHSS = 21, // =>CC2500
|
||||||
MODE_J6PRO = 22, // =>CYRF6936
|
MODE_J6PRO = 22, // =>CYRF6936
|
||||||
MODE_FQ777 = 23, // =>NRF24L01
|
MODE_FQ777 = 23, // =>NRF24L01
|
||||||
MODE_ASSAN=24 // =>NRF24L01
|
MODE_ASSAN = 24, // =>NRF24L01
|
||||||
|
MODE_FRSKY1 = 25 // =>CC2500
|
||||||
};
|
};
|
||||||
|
|
||||||
enum Flysky
|
enum Flysky
|
||||||
@ -67,7 +68,8 @@ enum Hisky
|
|||||||
Hisky = 0,
|
Hisky = 0,
|
||||||
HK310 = 1
|
HK310 = 1
|
||||||
};
|
};
|
||||||
enum DSM2{
|
enum DSM2
|
||||||
|
{
|
||||||
DSM2 = 0,
|
DSM2 = 0,
|
||||||
DSMX = 1
|
DSMX = 1
|
||||||
};
|
};
|
||||||
@ -118,7 +120,8 @@ enum MJXQ
|
|||||||
WLH08 = 0,
|
WLH08 = 0,
|
||||||
X600 = 1,
|
X600 = 1,
|
||||||
X800 = 2,
|
X800 = 2,
|
||||||
H26D = 3
|
H26D = 3,
|
||||||
|
E010 = 4
|
||||||
};
|
};
|
||||||
|
|
||||||
enum FRSKYX
|
enum FRSKYX
|
||||||
@ -146,42 +149,41 @@ struct PPM_Parameters
|
|||||||
//*******************
|
//*******************
|
||||||
//*** Pinouts ***
|
//*** Pinouts ***
|
||||||
//*******************
|
//*******************
|
||||||
//#define BIND_pin 13
|
#define LED_pin 5 //D13 = PB5
|
||||||
#define LED_pin 13 //Promini original led on B5
|
#define BIND_pin 5 //D13 = PB5
|
||||||
//
|
#define PPM_pin 3 //D3 = PD3
|
||||||
#define PPM_pin 3 //PPM -D3
|
|
||||||
#ifdef XMEGA
|
#ifdef XMEGA
|
||||||
#define SDI_pin 6 //SDIO-D6
|
#define SDI_pin 6 //SDIO-D6
|
||||||
#else
|
#else
|
||||||
#define SDI_pin 5 //SDIO-D5
|
#define SDI_pin 5 //D5 = PD5
|
||||||
#endif
|
#endif
|
||||||
#define SCLK_pin 4 //SCK-D4
|
#define SCLK_pin 4 //D4 = PD4
|
||||||
#define CS_pin 2 //CS-D2
|
#define A7105_CS_pin 2 //D2 = PD2
|
||||||
#define SDO_pin 6 //D6
|
#define SDO_pin 6 //D6 = PD6
|
||||||
//
|
#define CC25_CSN_pin 7 //D7 = PD7
|
||||||
#define CTRL1 1 //C1 (A1)
|
#define NRF_CSN_pin 0 //D8 = PB0
|
||||||
#define CTRL2 2 //C2 (A2)
|
#define CYRF_CSN_pin 1 //D9 = PB1
|
||||||
|
#define CTRL1_pin 1 //A1 = PC1
|
||||||
|
#define CTRL2_pin 2 //A2 = PC2
|
||||||
//
|
//
|
||||||
#ifdef XMEGA
|
#ifdef XMEGA
|
||||||
#define CTRL1_on
|
#define CTRL1_on
|
||||||
#define CTRL1_off
|
#define CTRL1_off
|
||||||
//
|
|
||||||
#define CTRL2_on
|
#define CTRL2_on
|
||||||
#define CTRL2_off
|
#define CTRL2_off
|
||||||
#else
|
#else
|
||||||
#define CTRL1_on PORTC |= _BV(1)
|
#define CTRL1_on PORTC |= _BV(1)
|
||||||
#define CTRL1_off PORTC &= ~_BV(1)
|
#define CTRL1_off PORTC &= ~_BV(1)
|
||||||
//
|
|
||||||
#define CTRL2_on PORTC |= _BV(2)
|
#define CTRL2_on PORTC |= _BV(2)
|
||||||
#define CTRL2_off PORTC &= ~_BV(2)
|
#define CTRL2_off PORTC &= ~_BV(2)
|
||||||
#endif
|
#endif
|
||||||
//
|
//
|
||||||
#ifdef XMEGA
|
#ifdef XMEGA
|
||||||
#define CS_on PORTD.OUTSET = _BV(4) //D4
|
#define A7105_CS_on PORTD.OUTSET = _BV(4) //D4
|
||||||
#define CS_off PORTD.OUTCLR = _BV(4) //D4
|
#define A7105_CS_off PORTD.OUTCLR = _BV(4) //D4
|
||||||
#else
|
#else
|
||||||
#define CS_on PORTD |= _BV(2) //D2
|
#define A7105_CS_on PORTD |= _BV(2) //D2
|
||||||
#define CS_off PORTD &= ~_BV(2) //D2
|
#define A7105_CS_off PORTD &= ~_BV(2) //D2
|
||||||
#endif
|
#endif
|
||||||
//
|
//
|
||||||
#ifdef XMEGA
|
#ifdef XMEGA
|
||||||
@ -199,23 +201,17 @@ struct PPM_Parameters
|
|||||||
#define SDI_on PORTD |= _BV(5) //D5
|
#define SDI_on PORTD |= _BV(5) //D5
|
||||||
#define SDI_off PORTD &= ~_BV(5) //D5
|
#define SDI_off PORTD &= ~_BV(5) //D5
|
||||||
#endif
|
#endif
|
||||||
|
//
|
||||||
#ifdef XMEGA
|
#ifdef XMEGA
|
||||||
#define SDI_1 (PORTD.IN & (1<<SDI_pin)) == (1<<SDI_pin) //D5
|
#define SDI_1 (PORTD.IN & _BV(SDI_pin)) == _BV(SDI_pin) //D5
|
||||||
#define SDI_0 (PORTD.IN & (1<<SDI_pin)) == 0x00 //D5
|
#define SDI_0 (PORTD.IN & _BV(SDI_pin)) == 0x00 //D5
|
||||||
#else
|
#else
|
||||||
#define SDI_1 (PIND & (1<<SDI_pin)) == (1<<SDI_pin) //D5
|
#define SDI_1 (PIND & _BV(SDI_pin)) == _BV(SDI_pin) //D5
|
||||||
#define SDI_0 (PIND & (1<<SDI_pin)) == 0x00 //D5
|
#define SDI_0 (PIND & _BV(SDI_pin)) == 0x00 //D5
|
||||||
#endif
|
#endif
|
||||||
//
|
//
|
||||||
#define SDI_SET_INPUT DDRD &= ~_BV(5) //D5
|
#define SDI_SET_INPUT DDRD &= ~_BV(5) //D5
|
||||||
#define SDI_SET_OUTPUT DDRD |= _BV(5) //D5
|
#define SDI_SET_OUTPUT DDRD |= _BV(5) //D5
|
||||||
//Hisky /CC2500/CYRF aditional pinout
|
|
||||||
#define CC25_CSN_pin 7
|
|
||||||
#define NRF_CSN_pin 8
|
|
||||||
#define CYRF_CSN_pin 9
|
|
||||||
//
|
|
||||||
#define CYRF_RST_pin A5 //reset pin
|
|
||||||
//
|
//
|
||||||
#ifdef XMEGA
|
#ifdef XMEGA
|
||||||
#define CC25_CSN_on PORTD.OUTSET = _BV(7) //D7
|
#define CC25_CSN_on PORTD.OUTSET = _BV(7) //D7
|
||||||
@ -234,26 +230,24 @@ struct PPM_Parameters
|
|||||||
#endif
|
#endif
|
||||||
//
|
//
|
||||||
#ifdef XMEGA
|
#ifdef XMEGA
|
||||||
#define CYRF_CSN_on PORTD.OUTSET = _BV(4) //D9
|
#define CYRF_CSN_on PORTD.OUTSET = _BV(4)
|
||||||
#define CYRF_CSN_off PORTD.OUTCLR = _BV(4) //D9
|
#define CYRF_CSN_off PORTD.OUTCLR = _BV(4)
|
||||||
#else
|
#else
|
||||||
#define CYRF_CSN_on PORTB |= _BV(1) //D9
|
#define CYRF_CSN_on PORTB |= _BV(1) //D9
|
||||||
#define CYRF_CSN_off PORTB &= ~_BV(1) //D9
|
#define CYRF_CSN_off PORTB &= ~_BV(1) //D9
|
||||||
#define CYRF_RST_HI PORTC |=_BV(5) //reset cyrf
|
#define CYRF_RST_HI PORTC |= _BV(5) //A5
|
||||||
#define CYRF_RST_LO PORTC &= ~_BV(5) //
|
#define CYRF_RST_LO PORTC &= ~_BV(5) //A5
|
||||||
|
#define CYRF_RST_pin 5
|
||||||
#endif
|
#endif
|
||||||
//
|
//
|
||||||
#ifdef XMEGA
|
#ifdef XMEGA
|
||||||
#define SDO_1 (PORTD.IN & (1<<SDO_pin)) == (1<<SDO_pin) //D6
|
#define SDO_1 (PORTD.IN & _BV(SDO_pin)) == _BV(SDO_pin) //D6
|
||||||
#define SDO_0 (PORTD.IN & (1<<SDO_pin)) == 0x00 //D6
|
#define SDO_0 (PORTD.IN & _BV(SDO_pin)) == 0x00 //D6
|
||||||
#else
|
#else
|
||||||
#define SDO_1 (PIND & (1<<SDO_pin)) == (1<<SDO_pin) //D6
|
#define SDO_1 (PIND & _BV(SDO_pin)) == _BV(SDO_pin) //D6
|
||||||
#define SDO_0 (PIND & (1<<SDO_pin)) == 0x00 //D6
|
#define SDO_0 (PIND & _BV(SDO_pin)) == 0x00 //D6
|
||||||
#endif
|
#endif
|
||||||
//
|
//
|
||||||
#define RS_HI PORTC|=_BV(5) //reset pin cyrf
|
|
||||||
#define RX_LO PORTB &= ~_BV(5)//
|
|
||||||
//
|
|
||||||
//
|
//
|
||||||
|
|
||||||
// LED
|
// LED
|
||||||
@ -271,6 +265,7 @@ struct PPM_Parameters
|
|||||||
#define IS_LED_on ( (PORTB & _BV(5)) != 0x00 )
|
#define IS_LED_on ( (PORTB & _BV(5)) != 0x00 )
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
//BIND
|
||||||
#ifdef XMEGA
|
#ifdef XMEGA
|
||||||
#define IS_BIND_BUTTON_on ( (PORTD.IN & _BV(2)) == 0x00 )
|
#define IS_BIND_BUTTON_on ( (PORTD.IN & _BV(2)) == 0x00 )
|
||||||
#else
|
#else
|
||||||
@ -280,6 +275,7 @@ struct PPM_Parameters
|
|||||||
#define BIND_SET_OUTPUT DDRB |= _BV(5)
|
#define BIND_SET_OUTPUT DDRB |= _BV(5)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
// TX
|
||||||
#ifdef DEBUG_TX
|
#ifdef DEBUG_TX
|
||||||
#define TX_ON PORTD |= _BV(1)
|
#define TX_ON PORTD |= _BV(1)
|
||||||
#define TX_OFF PORTD &= ~_BV(1)
|
#define TX_OFF PORTD &= ~_BV(1)
|
||||||
@ -460,7 +456,7 @@ enum CYRF_POWER
|
|||||||
#define CYRF_HIGH_POWER CYRF_POWER_7
|
#define CYRF_HIGH_POWER CYRF_POWER_7
|
||||||
#define CYRF_LOW_POWER CYRF_POWER_3
|
#define CYRF_LOW_POWER CYRF_POWER_3
|
||||||
#define CYRF_RANGE_POWER CYRF_POWER_1 // 1/30 of the full power distance
|
#define CYRF_RANGE_POWER CYRF_POWER_1 // 1/30 of the full power distance
|
||||||
#define CYRF_BIND_POWER CYRF_POWER_0
|
#define CYRF_BIND_POWER CYRF_POWER_1
|
||||||
|
|
||||||
enum TXRX_State {
|
enum TXRX_State {
|
||||||
TXRX_OFF,
|
TXRX_OFF,
|
||||||
@ -474,6 +470,7 @@ enum {
|
|||||||
PKT_ACKED,
|
PKT_ACKED,
|
||||||
PKT_TIMEOUT
|
PKT_TIMEOUT
|
||||||
};
|
};
|
||||||
|
|
||||||
// baudrate defines for serial
|
// baudrate defines for serial
|
||||||
#define SPEED_100K 0
|
#define SPEED_100K 0
|
||||||
#define SPEED_9600 1
|
#define SPEED_9600 1
|
||||||
@ -513,6 +510,10 @@ Serial: 100000 Baud 8e2 _ xxxx xxxx p --
|
|||||||
SHENQI 19
|
SHENQI 19
|
||||||
FY326 20
|
FY326 20
|
||||||
SFHSS 21
|
SFHSS 21
|
||||||
|
J6PRO 22
|
||||||
|
FQ777 23
|
||||||
|
ASSAN 24
|
||||||
|
FRSKY1 25
|
||||||
BindBit=> 0x80 1=Bind/0=No
|
BindBit=> 0x80 1=Bind/0=No
|
||||||
AutoBindBit=> 0x40 1=Yes /0=No
|
AutoBindBit=> 0x40 1=Yes /0=No
|
||||||
RangeCheck=> 0x20 1=Yes /0=No
|
RangeCheck=> 0x20 1=Yes /0=No
|
||||||
@ -559,11 +560,13 @@ Serial: 100000 Baud 8e2 _ xxxx xxxx p --
|
|||||||
MT99 0
|
MT99 0
|
||||||
H7 1
|
H7 1
|
||||||
YZ 2
|
YZ 2
|
||||||
|
LS 3
|
||||||
sub_protocol==MJXQ
|
sub_protocol==MJXQ
|
||||||
WLH08 0
|
WLH08 0
|
||||||
X600 1
|
X600 1
|
||||||
X800 2
|
X800 2
|
||||||
H26D 3
|
H26D 3
|
||||||
|
E010 4
|
||||||
sub_protocol==FRSKYX
|
sub_protocol==FRSKYX
|
||||||
CH_16 0
|
CH_16 0
|
||||||
CH_8 1
|
CH_8 1
|
||||||
|
Loading…
x
Reference in New Issue
Block a user