デザイン演習Ⅲ・Ⅳ dot 4~最終課題~

「逆オルゴール」作成

作成過程・結果の失敗

作業過程の試行錯誤・分かったこと




プログラミングコード

  1. // 音センサ(アナログ生値表示)
  2. const int DIR = 8;
  3. const int STEP = 9;
  4.  
  5. // ポート指定用変数設定
  6. int a0_in_port = A0; // センサ デジタル情報入力
  7.  
  8. // 受信データ用変数設定
  9. int a0_data; // analogデータ用
  10.  
  11. void setup() {
  12.   // put your setup code here, to run once:
  13.   // シリアルモニタ通信速度設定
  14.   Serial.begin(9600);
  15.    pinMode(DIR, OUTPUT);
  16.   pinMode(STEP, OUTPUT);
  17. }
  18.  
  19. void loop() {
  20.   // put your main code here, to run repeatedly:
  21.   // 音センサからの情報取得
  22.   a0_data = analogRead(a0_in_port); // アナログデータ
  23.    
  24.   // シリアルモニタへ出力
  25.   Serial.println( a0_data );
  26.   if (a0_data>500){
  27.     for (int i=0; i <= 80000; i++){
  28.       clockwise(900);
  29.     }
  30.   }
  31.   
  32.   // 1m秒待機
  33.   delay(1);
  34. }
  35. void clockwise(int delaytime){
  36.   digitalWrite(DIR, HIGH);//HIGHは時計回り
  37.   digitalWrite(STEP, HIGH);
  38.   delayMicroseconds(delaytime);
  39.   digitalWrite(STEP, LOW);
  40.   delayMicroseconds(delaytime);
  41. }
  42. void counter_clockwise(int delaytime){
  43.   digitalWrite(DIR, LOW);//はLOWは反時計回り
  44.   digitalWrite(STEP, HIGH);
  45.   delayMicroseconds(delaytime);
  46.   digitalWrite(STEP, LOW);
  47.   delayMicroseconds(delaytime);
  48. }

使用材料・機材・道具