【マイクロビット応用】[2.1] プラモの飛行機のプロペラのプログラム:最初のバージョン

マイクロビット

 飛行機のプロペラのプログラムですよ。う~ん、長いな~

  • 1行目 from microbit import *
  • 2行目 
  • 3行目 STATE_STOP = 0
  • 4行目 STATE_CELL_MOTOR = 1
  • 5行目 STATE_ENGINE = 2
  • 6行目
  • 7行目 RPM_STOP = 0
  • 8行目 RPM_CELL = 350
  • 9行目 RPM_ENGINE = 950
  • 10行目
  • 11行目 def StateStop():
  • 12行目  nextState = STATE_STOP
  • 13行目  display.show(‘S’)
  • 14行目  pin1.write_analog(RPM_STOP)
  • 15行目  pin13.write_digital(0)
  • 16行目  while True:
  • 17行目   if button_a.get_presses():
  • 18行目    nextState = STATE_CELL_MOTOR
  • 19行目    break
  • 20行目   if button_b.get_presses():
  • 21行目    nextState = STATE_STOP
  • 22行目 return nextState
  • 23行目
  • 24行目 def StateCellMotor():
  • 25行目  nextState = STATE_CELL_MOTOR
  • 26行目  display.show(‘C’)
  • 27行目  pin1.write_analog(RPM_CELL)
  • 28行目  pin13.write_digital(1)
  • 29行目  while True:
  • 30行目   if button_a.get_presses():
  • 31行目    nextState = STATE_ENGINE
  • 32行目    break
  • 33行目   if button_b.get_presses():
  • 34行目    nextState = STATE_STOP
  • 35行目    break
  • 36行目 return nextState
  • 37行目
  • 38行目 def StateEngine():
  • 39行目  nextState = STATE_ENGINE
  • 40行目  display.show(‘E’)
  • 41行目  pin1.write_analog(RPM_ENGINE)
  • 42行目  pin13.write_digital(1)
  • 43行目  while True:
  • 44行目   if button_a.get_presses():
  • 45行目    nextState = STATE_ENGINE
  • 46行目   if button_b.get_presses():
  • 47行目    nextState = STATE_STOP
  • 48行目    break
  • 49行目 return nextState
  • 50行目
  • 51行目 state = STATE_STOP
  • 52行目
  • 53行目 pin14.write_digital(1)
  • 54行目 pin1.write_analog(RPM_STOP)
  • 55行目 pin12.write_digital(0)
  • 56行目 
  • 57行目 while True:
  • 58行目  if state == STATE_CELL_MOTOR:
  • 59行目   state = StateCellMotor()
  • 60行目  elif state == STATE_ENGINE:
  • 61行目   state = StateEngine()
  • 62行目  else:
  • 63行目   state = StateStop()

 プログラムの内容については、以下の記事を見てね。

【マイクロビット応用】[2] プラモの飛行機のプロペラ(1)

【マイクロビット応用】[3] プラモの飛行機のプロペラ(2)

 飛行機のプラモはこっちだよ。

【プラモ】ハセガワ1/32「F6F-3/5ヘルキャット」

コメント

タイトルとURLをコピーしました