LoginSignup
1
0

STM32C011を使い、無限回転サーボ(360)FS-90Rを角度(-90,0,90)でコントロールして遊ぶ。(map()化)(STM32C011J4M7)

Last updated at Posted at 2024-03-28

目的
360サーボで遊ぶ(FS90R)
===完成202403292015===

o_cop99g.jpg

結果

o_coq001.jpg

プログラム




//PWM_Servo_C011_3


//定義
//左端 -90のステップ
#define V_M_90 2300
//中心の0のステップ
#define V_0    1500
//右端 90 計算値
//#define V_90  700

#define DD PB7    // potentiometer connected to analog pin x


//サーボ関数
//入力は、-90から90 サーボが仕様の端から端まで動く値
void Servo_S(int b) {

  int ii=map(b,-90,0,V_M_90,V_0);  
  int jj=map(ii,0,20000,0,65536);
  analogWrite(DD, jj);   // analogRead values go from 0

} //Servo_S


//初期化
void setup() {

  delay(3000);//マッポの手先、消したら、いかんぜょ(斎藤由紀風)

  //GPIOの初期化
  pinMode(DD, OUTPUT);   // sets the LED pin as output
  analogWriteFrequency(50);   //周波数
  analogWriteResolution(16);  //分解能

} //setup


//メインループ
void loop() {

  Servo_S(-90); delay(2000); //2秒待つ

  Servo_S(0);   delay(2000); //2秒待つ

  Servo_S(90);  delay(2000); //2秒待つ

  Servo_S(0);   delay(2000); //2秒待つ

} //loop


1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0