You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
46 lines
678 B
C
46 lines
678 B
C
/*
|
|
* adc.h
|
|
*
|
|
* Created: 09/12/2021 16:31:06
|
|
* Author: n0x
|
|
*/
|
|
|
|
#include <avr/io.h>
|
|
#include <avr/interrupt.h>
|
|
|
|
#ifndef ADC_H_
|
|
#define ADC_H_
|
|
|
|
typedef struct ADC_t ADC_t;
|
|
struct ADC_t{
|
|
/* ADC Data */
|
|
uint16_t uiADC :16;
|
|
|
|
/* ADCSRA */
|
|
uint8_t uiADPS :3;
|
|
uint8_t uiADIE :1;
|
|
uint8_t uiADIF :1;
|
|
uint8_t uiADATE :1;
|
|
uint8_t uiADSC :1;
|
|
uint8_t uiADEN :1;
|
|
|
|
/* ADCSRB */
|
|
uint8_t uiADTS0 :1;
|
|
uint8_t uiADTS1 :1;
|
|
uint8_t uiADTS2 :1;
|
|
uint8_t nui2 :3;
|
|
uint8_t uiACME :1;
|
|
uint8_t nui1 :1;
|
|
|
|
/* ADMUX */
|
|
uint8_t uiMUX :5;
|
|
uint8_t uiADLAR :1;
|
|
uint8_t uiREFS :2;
|
|
};
|
|
|
|
void adc_init(void);
|
|
|
|
uint16_t adc_get_poti(void);
|
|
uint16_t adc_get_LM35(void);
|
|
|
|
#endif /* ADC_H_ */ |