39 lines
683 B
C
39 lines
683 B
C
#include "drivers/rcc.h"
|
|
#include "drivers/io.h"
|
|
#include "drivers/adc.h"
|
|
|
|
Clock_t sysclks;
|
|
|
|
#include "drivers/timer.h"
|
|
|
|
int val = 0;
|
|
uint16_t data = 0;
|
|
|
|
static void timeout_cb(void) {
|
|
io_write(GPIOC, val, PIN_13);
|
|
val = !val;
|
|
}
|
|
|
|
int main(void) {
|
|
|
|
rcc_config_clock(CLOCK_CONFIG_PERFORMANCE, &sysclks);
|
|
|
|
if(io_configure(GPIOC, PIN_13, IO_MODE_OUTPUT | IO_OUT_PUSH_PULL, 0))
|
|
return 0;
|
|
io_write(GPIOC, 1, PIN_13);
|
|
|
|
timer_tick_init(TIM2, 1000, timeout_cb);
|
|
timer_start(TIM2);
|
|
|
|
if(io_configure(GPIOA, PIN_4 | PIN_5, IO_MODE_INPUT | IO_IN_ANALOG, 0))
|
|
return 0;
|
|
if(adc_init(ADC1)) return 0;
|
|
|
|
for(;;){
|
|
data = adc_read(ADC1, 5);
|
|
data -= adc_read(ADC1, 4);
|
|
}
|
|
|
|
return 0;
|
|
}
|