82 lines
2.0 KiB
C
82 lines
2.0 KiB
C
// device presenti
|
|
#define SQUEOW_SYNTH
|
|
#define SQUEOW_PWM
|
|
#define SQUEOW_SONDA_TEMPERATURA
|
|
#define SQUEOW_SONDA_DIRETTA
|
|
#define SQUEOW_SONDA_RIFLESSA
|
|
// #define SQUEOW_SONDA_CORRENTE
|
|
|
|
// secondo l'ordine di rank dell'ADC
|
|
#define SQUEOW_ADC_CORRENTE 0 // IN4 (pin 12, A2)
|
|
#define SQUEOW_ADC_TEMPERATURA 1 // IN3 (pin 11, A3)
|
|
#define SQUEOW_ADC_DIRETTA 2 // IN13 (pin 10, A4)
|
|
#define SQUEOW_ADC_RIFLESSA 3 // IN17 (pin 9, A5)
|
|
|
|
// soglie
|
|
#define SOGLIA_CORRENTE 3096
|
|
#define SOGLIA_TEMPERATURA 3096
|
|
#define SOGLIA_DIRETTA 3096
|
|
#define SOGLIA_RIFLESSA 3096
|
|
|
|
// base dei tempi per operazioni lente, la base dei tempi è 100hz
|
|
#define SYS_TICK_PRESCALE_10HZ 10
|
|
#define SYS_TICK_PRESCALE_1HZ 100
|
|
|
|
// modalità di blocco
|
|
#define MODALITA_BLOCCO_PERMANENTE
|
|
// #define MODALITA_BLOCCO_TEMPORANEO
|
|
// #define MODALITA_BLOCCO_BASSA_POTENZA
|
|
|
|
#define TEMPO_BLOCCO_TEMPORANEO 1000
|
|
#define DIVISORE_BLOCCO_BASSA_POTENZA 2
|
|
|
|
#define DEFAULT_SYNTH_FREQUENCY 1359000UL
|
|
|
|
|
|
// ################################################
|
|
|
|
#define max(x,y) (((x) >= (y)) ? (x) : (y))
|
|
|
|
// SYS
|
|
extern volatile uint8_t sys_tick, sys_tick_prescale;
|
|
|
|
// UART
|
|
int serial_write(char *ptr, size_t len);
|
|
|
|
extern UART_HandleTypeDef huart1;
|
|
#define UART_RX_BUF_SIZE 256
|
|
extern uint8_t UART_RX_buf[UART_RX_BUF_SIZE];
|
|
|
|
#define UART_TX_BUF_SIZE 256
|
|
extern uint8_t UART_TX_buf[UART_TX_BUF_SIZE];
|
|
extern uint8_t UART_TX_buf_lenght;
|
|
|
|
|
|
// SYNTH
|
|
extern uint32_t freq;
|
|
|
|
// ADC2
|
|
// per usare buffer da 32 settare WORD nel canale DMA
|
|
extern uint32_t adc2_valori[4];
|
|
extern uint8_t adc2_done, blocco, blocco_fatto, codice_allarme;
|
|
|
|
// ADC
|
|
void adc_rileva_soglie(uint32_t *adc_valori);
|
|
void processa_blocco(void);
|
|
|
|
|
|
extern UART_HandleTypeDef huart1;
|
|
extern ADC_HandleTypeDef hadc1;
|
|
extern ADC_HandleTypeDef hadc2;
|
|
|
|
|
|
// funzie
|
|
void squeow_init(void);
|
|
void squeow_synth_init(void);
|
|
void squeow_synth_set(uint32_t freq);
|
|
void squeow_synth_on(void);
|
|
void squeow_synth_off(void);
|
|
|
|
uint32_t sat_sub(uint16_t x, uint16_t y);
|
|
uint32_t ringbuf_increment(uint32_t *index, uint32_t buff_size_mask);
|