static void taskWave(void *) {
static float in = 4.712;
float out;
in += 0.1;
if (in > 10.995) {
in = 4.712;
}
out = sin(in) * 2047.5 + 2047.5;
printf("sin():%u\n", (uint16_t) out);
analogWrite(PA4, out);
out = cos(in) * 2047.5 + 2047.5;
printf("cos():%u\n", (uint16_t) out);
analogWrite(PA5, out);
}
void setup(void) {
Serial.begin(115200);
printf("\n*** [ST Nucleo-L152RE] DAC Test ***\n");
}
Timer는 일정 시간 이후에 1회 실행될 작업, 매 일정 시간마다 실행될 작업 등을 위한 기능입니다.
Definition Timer.hpp:61
bool startPeriodic(uint32_t millis, bool interrupt=false)
작업함수를 매 millis 밀리초 주기로 반복하여 실행합니다.
void onFired(void(*func)(void *), void *args=nullptr)
타이머 만료시 실행시킬 작업함수를 지정합니다.
bool pinMode(int8_t pin, enum ioDirection direction)
pin 을 direction 방향을 갖는 디지털 핀으로 동작하도록 설정합니다.
@ OUTPUT
Definition nola-common.h:383