ライブラリ化を行った後

Dependencies:   QEI accelerator bit_test cyclic_io cyclic_var cylinder event_var limit mbed mecanum motor_drive pid pid_encoder rs422_put sbdbt servo

Fork of 17robo_Practice1 by kusano kiyoshige

cyclic_IO.h

Committer:
echo_piyo
Date:
2017-08-04
Revision:
14:aac2f18f6779
Parent:
cyclick.h@ 13:dfae731e239f

File content as of revision 14:aac2f18f6779:

/*
    ★サイクリック★
サイクリックでピンをHigh/Lowするクラスです。
①定義方法
    Cyclic_IO [name]( pin );
                    |
                    +--サイクリックでHigh/LowさせたいDigitalOutピン 
                    
②関数
    その1
      void cyclic(int state)  :  ピンをサイクリックでHigh/Lowさせる関数。
                        |
                        +-- ボタンの入力状況を1 or 0で入れてください。
                            DigitalInのRead()を入れると一発で動きます。
     
     その2               
     int getState() :   ピンの出力状況を1 or 0で返す関数。
                        出力されてたら1、されてなかったら0を返します
*/

#ifndef CYCLIC_H
#define CYCLIC_H

#include "mbed.h"

class Cyclic_IO 
{
  public:
    Cyclic_IO(PinName pin) : gpio(pin){}
    
    void cyclic(int state)
    {
        if(state)
        {
            if(flag == false)
            {
                gpio = !gpio; 
            }
            flag = true;
        }
        else flag = false;
    }
    
    int getState()
    {
        return (int)gpio; 
    }
    
  private:  
    DigitalOut gpio;
    bool flag;
};

#endif