You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

49 lines
1.2 KiB

#include <stdio.h>
#include <stdlib.h>
#include "platform/porting.h"
#include "drivers/dac101c085.h"
#include "platform/ext_interrupt.h"
#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wunused-parameter"
#pragma GCC diagnostic ignored "-Wmissing-declarations"
#pragma GCC diagnostic ignored "-Wreturn-type"
static char* args_task_3= "task 3";
void task3(void* ptr)
{
static uint32_t wakeup = 0;
static int cnt = 0;
char* args = (char*)ptr;
wakeup = osSchedulerGetSysT();
if (cnt*10 >= 1023) {
cnt = 0;
} else {
cnt += 10;
}
osPrintf("Writing DAC: %d\n\r", cnt*10);
setDAC(cnt*10);
uint16_t dac_val = readDAC();
osPrintf("Reading DAC: %d\n\r", dac_val);
osPrintf("This is %s\n\r", args);
osTaskDelayUntil(wakeup, MS_2_TICKS(1000));
}
int main(int argc, char* argv[])
{
char args[] = "number 3";
initClock();
initAliveLED();
usart2Init();
RCC_ClocksTypeDef RCC_Clocks;
RCC_GetClocksFreq (&RCC_Clocks);
osPrintf("System Core Clock: %d\n\r", SystemCoreClock);
osPrintf("HCLK: %d\n\r", RCC_Clocks.HCLK_Frequency);
initExtInt();
//osTaskCreate(*task3, "task 3", args, 1, NULL);
while (1);
// Infinite loop, never return.
}
#pragma GCC diagnostic pop