mirror of
https://github.com/pascallanger/DIY-Multiprotocol-TX-Module.git
synced 2025-02-04 21:08:12 +00:00
Few changes...
This commit is contained in:
parent
815cf4fd99
commit
e6e4d33847
@ -19,7 +19,7 @@
|
||||
#define VERSION_MAJOR 1
|
||||
#define VERSION_MINOR 3
|
||||
#define VERSION_REVISION 0
|
||||
#define VERSION_PATCH_LEVEL 29
|
||||
#define VERSION_PATCH_LEVEL 30
|
||||
|
||||
//******************
|
||||
// Protocols
|
||||
|
@ -184,7 +184,6 @@ uint8_t packet_in[TELEMETRY_BUFFER_SIZE];//telemetry receiving packets
|
||||
#endif
|
||||
#define INVERT_SERIAL 1
|
||||
#endif
|
||||
uint8_t pass = 0;
|
||||
uint8_t telemetry_in_buffer[TELEMETRY_BUFFER_SIZE];//telemetry receiving packets
|
||||
#ifdef BASH_SERIAL
|
||||
// For bit-bashed serial output
|
||||
@ -583,11 +582,11 @@ void loop()
|
||||
sei(); // Enable global int
|
||||
if((diff&0x8000) && !(next_callback&0x8000))
|
||||
{ // Negative result=callback should already have been called...
|
||||
cli(); // Disable global int due to RW of 16 bits registers
|
||||
debugln("Short CB:%d",next_callback);
|
||||
/* cli(); // Disable global int due to RW of 16 bits registers
|
||||
OCR1A=TCNT1; // Use "now" as new sync point.
|
||||
sei(); // Enable global int
|
||||
debugln("Short CB:%d",next_callback);
|
||||
}
|
||||
*/ }
|
||||
else
|
||||
{
|
||||
if(IS_RX_FLAG_on || IS_PPM_FLAG_on)
|
||||
@ -607,6 +606,11 @@ void loop()
|
||||
{
|
||||
if(diff>900*2)
|
||||
{ //If at least 1ms is available update values
|
||||
if((diff&0x8000) && !(next_callback&0x8000))
|
||||
{//should never be here
|
||||
debugln("Strange");
|
||||
break;
|
||||
}
|
||||
count=0;
|
||||
Update_All();
|
||||
#ifdef DEBUG_SERIAL
|
||||
@ -952,7 +956,6 @@ static void protocol_init()
|
||||
multi_protocols_index = 0xFF;
|
||||
#endif
|
||||
tx_pause();
|
||||
pass=0;
|
||||
init_frskyd_link_telemetry();
|
||||
#ifdef BASH_SERIAL
|
||||
TIMSK0 = 0 ; // Stop all timer 0 interrupts
|
||||
|
@ -31,13 +31,10 @@ uint8_t RetrySequence ;
|
||||
#endif // MULTI_TELEMETRY/MULTI_STATUS
|
||||
|
||||
#if defined SPORT_TELEMETRY
|
||||
#define SPORT_TIME 12000 //12ms
|
||||
#define FRSKY_SPORT_PACKET_SIZE 8
|
||||
#define FX_BUFFERS 4
|
||||
uint32_t last = 0;
|
||||
uint8_t sport_counter=0;
|
||||
uint8_t RxBt = 0;
|
||||
uint8_t sport = 0;
|
||||
uint8_t Sport_Data = 0;
|
||||
uint8_t pktx1[FRSKY_SPORT_PACKET_SIZE*FX_BUFFERS];
|
||||
|
||||
// Store for out of sequence packet
|
||||
@ -64,7 +61,6 @@ uint8_t RetrySequence ;
|
||||
#define STUFF_MASK 0x20
|
||||
#define MAX_PKTX 10
|
||||
uint8_t pktx[MAX_PKTX];
|
||||
uint8_t indx;
|
||||
uint8_t frame[18];
|
||||
|
||||
#if ( defined(MULTI_TELEMETRY) || defined(MULTI_STATUS) )
|
||||
@ -688,7 +684,9 @@ void sportIdle()
|
||||
|
||||
void sportSendFrame()
|
||||
{
|
||||
static uint8_t sport_counter=0;
|
||||
uint8_t i;
|
||||
|
||||
sport_counter = (sport_counter + 1) %36;
|
||||
if(telemetry_lost)
|
||||
{
|
||||
@ -725,14 +723,14 @@ void sportSendFrame()
|
||||
frame[4] = RxBt;//a1;
|
||||
break;
|
||||
default:
|
||||
if(sport)
|
||||
if(Sport_Data)
|
||||
{
|
||||
for (i=0;i<FRSKY_SPORT_PACKET_SIZE;i++)
|
||||
frame[i]=pktx1[i];
|
||||
sport -- ;
|
||||
if ( sport )
|
||||
Sport_Data -- ;
|
||||
if ( Sport_Data )
|
||||
{
|
||||
uint8_t j = sport * FRSKY_SPORT_PACKET_SIZE ;
|
||||
uint8_t j = Sport_Data * FRSKY_SPORT_PACKET_SIZE ;
|
||||
for (i=0;i<j;i++)
|
||||
pktx1[i] = pktx1[i+FRSKY_SPORT_PACKET_SIZE] ;
|
||||
}
|
||||
@ -749,6 +747,7 @@ void sportSendFrame()
|
||||
|
||||
void proces_sport_data(uint8_t data)
|
||||
{
|
||||
static uint8_t pass = 0, indx = 0;
|
||||
switch (pass)
|
||||
{
|
||||
case 0:
|
||||
@ -779,13 +778,13 @@ void proces_sport_data(uint8_t data)
|
||||
} // end switch
|
||||
if (indx >= FRSKY_SPORT_PACKET_SIZE)
|
||||
{//8 bytes no crc
|
||||
if ( sport < FX_BUFFERS )
|
||||
if ( Sport_Data < FX_BUFFERS )
|
||||
{
|
||||
uint8_t dest = sport * FRSKY_SPORT_PACKET_SIZE ;
|
||||
uint8_t dest = Sport_Data * FRSKY_SPORT_PACKET_SIZE ;
|
||||
uint8_t i ;
|
||||
for ( i = 0 ; i < FRSKY_SPORT_PACKET_SIZE ; i++ )
|
||||
pktx1[dest++] = pktx[i] ; // Triple buffer
|
||||
sport += 1 ;//ok to send
|
||||
Sport_Data += 1 ;//ok to send
|
||||
}
|
||||
// else
|
||||
// {
|
||||
|
Loading…
x
Reference in New Issue
Block a user