Optisk dataoverførsel til en microcontroller - Danmarks Tekniske ...
Optisk dataoverførsel til en microcontroller - Danmarks Tekniske ...
Optisk dataoverførsel til en microcontroller - Danmarks Tekniske ...
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
normal operation<br />
extern unsigned char pulse_count;<br />
// ADC manipulation<br />
extern signed int mean_signal;<br />
extern signed int mean_signal_old;<br />
// square wave detection<br />
extern unsigned int period_time;<br />
extern unsigned int period_detected;<br />
extern unsigned char virtual_clock;<br />
// digital values<br />
extern unsigned char digital_value_ready;<br />
extern unsigned int idle_time;<br />
// debugging<br />
extern unsigned char led_refresh;<br />
void interrupt my_isr(void){<br />
// ADC<br />
static unsigned int raw_signal;<br />
static unsigned int raw_signal_buffer[RAW_SIGNAL_BUFFER_LENGTH];<br />
static unsigned char raw_signal_buffer_next = 0;<br />
// Timer 1<br />
static unsigned char pulse_count_time = 0;<br />
static unsigned int led_delay = 0;<br />
static unsigned int signal_measure_time = 0;<br />
static unsigned char signal_measure_ready = false;<br />
unsigned int i,sum;<br />
if((ADIE)&&(ADIF)){ // ADC interrupted<br />
// read A/D-signal from scre<strong>en</strong><br />
raw_signal = (ADRESH