2400 baud optimisations
This commit is contained in:
parent
532e440a3d
commit
07b589fe3f
2
device.h
2
device.h
|
@ -11,7 +11,7 @@
|
|||
// Voltage references
|
||||
// TODO: Determine best defaults
|
||||
#define CONFIG_ADC_REF 255
|
||||
#define CONFIG_DAC_REF 255
|
||||
#define CONFIG_DAC_REF 128
|
||||
|
||||
// TODO: Change this back to default
|
||||
#define CONFIG_LED_INTENSITY 35
|
||||
|
|
|
@ -601,8 +601,11 @@ void AFSK_adc_isr(Afsk *afsk, int8_t currentSample) {
|
|||
|
||||
}
|
||||
|
||||
uint8_t timed_functions_timer = 0;
|
||||
inline void timed_functions(void) {
|
||||
if (_clock % CLOCK_TICKS_PER_10_MS == 0) {
|
||||
timed_functions_timer++;
|
||||
if (timed_functions_timer >= CLOCK_TICKS_PER_10_MS) {
|
||||
timed_functions_timer = 0;
|
||||
sd_scheduler();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -40,7 +40,7 @@ inline static uint8_t sinSample(uint16_t i) {
|
|||
#define CPU_FREQ F_CPU
|
||||
|
||||
|
||||
#define BITRATE 2400
|
||||
#define BITRATE 1200
|
||||
|
||||
#if BITRATE == 300
|
||||
#define CONFIG_ADC_SAMPLERATE 9600UL
|
||||
|
@ -69,7 +69,7 @@ inline static uint8_t sinSample(uint16_t i) {
|
|||
#define CONFIG_AFSK_PREAMBLE_LEN 150UL
|
||||
#define CONFIG_AFSK_TRAILER_LEN 10UL
|
||||
#elif BITRATE == 2400
|
||||
#define CONFIG_AFSK_PREAMBLE_LEN 200UL
|
||||
#define CONFIG_AFSK_PREAMBLE_LEN 230UL
|
||||
#define CONFIG_AFSK_TRAILER_LEN 25UL
|
||||
#endif
|
||||
|
||||
|
|
|
@ -52,15 +52,6 @@ ISR(USART0_RX_vect) {
|
|||
if (!fifo_isfull(&serialFIFO)) {
|
||||
char c = uart0_getchar_nowait();
|
||||
fifo_push(&serialFIFO, c);
|
||||
} else {
|
||||
// TODO: Remove this
|
||||
printf("SERIAL FIFO OVERRUN\r\n");
|
||||
printf("QH: %d", queue_height);
|
||||
while(true) {
|
||||
LED_TX_ON();
|
||||
LED_RX_ON();
|
||||
LED_COM_ON();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -79,10 +79,38 @@ void usrio_4_off(void) {
|
|||
}
|
||||
|
||||
void usrio_1_toggle(void) {
|
||||
if (usrio_1()) {
|
||||
usrio_1_off();
|
||||
if (!bluetooth_enabled()) {
|
||||
if (usrio_1()) {
|
||||
usrio_1_off();
|
||||
} else {
|
||||
usrio_1_on();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void usrio_2_toggle(void) {
|
||||
if (!bluetooth_enabled()) {
|
||||
if (usrio_2()) {
|
||||
usrio_2_off();
|
||||
} else {
|
||||
usrio_2_on();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void usrio_3_toggle(void) {
|
||||
if (usrio_3()) {
|
||||
usrio_3_off();
|
||||
} else {
|
||||
usrio_1_on();
|
||||
usrio_3_on();
|
||||
}
|
||||
}
|
||||
|
||||
void usrio_4_toggle(void) {
|
||||
if (usrio_4()) {
|
||||
usrio_4_off();
|
||||
} else {
|
||||
usrio_4_on();
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -111,22 +111,22 @@ void kiss_csma(void) {
|
|||
}
|
||||
|
||||
// TODO: Remove this
|
||||
void kiss_flushQueueDebug(void) {
|
||||
printf("Queue height %d\r\n", queue_height);
|
||||
for (size_t n = 0; n < queue_height; n++) {
|
||||
size_t start = fifo16_pop(&packet_starts);
|
||||
size_t length = fifo16_pop(&packet_lengths);
|
||||
// void kiss_flushQueueDebug(void) {
|
||||
// printf("Queue height %d\r\n", queue_height);
|
||||
// for (size_t n = 0; n < queue_height; n++) {
|
||||
// size_t start = fifo16_pop(&packet_starts);
|
||||
// size_t length = fifo16_pop(&packet_lengths);
|
||||
|
||||
printf("--- Packet %d, %d bytes ---\r\n", n+1, length);
|
||||
for (size_t i = 0; i < length; i++) {
|
||||
size_t pos = (start+i)%CONFIG_QUEUE_SIZE;
|
||||
printf("%02x", packet_queue[pos]);
|
||||
}
|
||||
printf("\r\n\r\n");
|
||||
}
|
||||
queue_height = 0;
|
||||
queued_bytes = 0;
|
||||
}
|
||||
// printf("--- Packet %d, %d bytes ---\r\n", n+1, length);
|
||||
// for (size_t i = 0; i < length; i++) {
|
||||
// size_t pos = (start+i)%CONFIG_QUEUE_SIZE;
|
||||
// printf("%02x", packet_queue[pos]);
|
||||
// }
|
||||
// printf("\r\n\r\n");
|
||||
// }
|
||||
// queue_height = 0;
|
||||
// queued_bytes = 0;
|
||||
// }
|
||||
|
||||
volatile bool queue_flushing = false;
|
||||
void kiss_flushQueue(void) {
|
||||
|
@ -154,7 +154,6 @@ void kiss_flushQueue(void) {
|
|||
LED_RX_ON();
|
||||
}
|
||||
}
|
||||
//printf("Processed %d\r\n", processed);
|
||||
|
||||
queue_height = 0;
|
||||
queued_bytes = 0;
|
||||
|
@ -176,7 +175,6 @@ void kiss_serialCallback(uint8_t sbyte) {
|
|||
fifo16_push_locked(&packet_lengths, l);
|
||||
|
||||
current_packet_start = queue_cursor;
|
||||
printf("Queue height %d\r\n", queue_height);
|
||||
}
|
||||
|
||||
} else if (sbyte == FEND) {
|
||||
|
@ -217,8 +215,8 @@ void kiss_serialCallback(uint8_t sbyte) {
|
|||
} else if (command == CMD_FLUSHQUEUE) {
|
||||
kiss_flushQueue();
|
||||
// TODO: Remove this
|
||||
} else if (command == CMD_FLUSHQUEUE_DEBUG) {
|
||||
kiss_flushQueueDebug();
|
||||
//} else if (command == CMD_FLUSHQUEUE_DEBUG) {
|
||||
// kiss_flushQueueDebug();
|
||||
} else if (command == CMD_LED_INTENSITY) {
|
||||
if (sbyte == FESC) {
|
||||
ESCAPE = true;
|
||||
|
|
Loading…
Reference in New Issue