| bool AudioStream::update_setup(void) | bool AudioStream::update_setup(void) | ||||
| { | { | ||||
| if (update_scheduled) return false; | if (update_scheduled) return false; | ||||
| NVIC_SET_PRIORITY(IRQ_SOFTWARE, 0xFF); // 0xFF = lowest priority | |||||
| NVIC_SET_PRIORITY(IRQ_SOFTWARE, 208); // 255 = lowest priority | |||||
| NVIC_ENABLE_IRQ(IRQ_SOFTWARE); | NVIC_ENABLE_IRQ(IRQ_SOFTWARE); | ||||
| update_scheduled = true; | update_scheduled = true; | ||||
| return true; | return true; |
| typedef struct audio_block_struct { | typedef struct audio_block_struct { | ||||
| unsigned char ref_count; | unsigned char ref_count; | ||||
| unsigned char memory_pool_index; | unsigned char memory_pool_index; | ||||
| unsigned char reserved1; | |||||
| unsigned char reserved2; | |||||
| int16_t data[AUDIO_BLOCK_SAMPLES]; | int16_t data[AUDIO_BLOCK_SAMPLES]; | ||||
| } audio_block_t; | } audio_block_t; | ||||