look
Dependencies: mbed-STM32F103C8T6 mbed
main.cpp
00001 #include "mbed.h" 00002 #include "stm32f103c8t6.h" 00003 #define val 0.05 // percents in step / 100 00004 #define pi 3.141592653589793115997963468544185161590576171875 00005 00006 PwmOut Servo (PA_8); 00007 DigitalOut myled(PC_13); 00008 Ticker timer; 00009 00010 00011 double f = 0; //first period 00012 double i = 0; 00013 00014 void sinus (){ 00015 Servo = (float)f * val; // duty-cycle, perсents 0..1; посчитанное значение вставится в следующее прерывание 00016 i += 0.1; 00017 if (i > 2) i = 0; 00018 f = (sin(i * pi) + 1.0) / 2 + 1; //1..2 00019 } 00020 00021 int main() { 00022 confSysClock(); 00023 Servo.period_ms(20); 00024 timer.attach(&sinus, val); //sine period, sec 00025 while(1) { 00026 myled = !myled; 00027 wait(0.5); 00028 } 00029 }
Generated on Thu Jul 21 2022 04:23:48 by
1.7.2