sampleProgram

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_fuzi by kusano kiyoshige

headerfile_unuse/cylinder_.h

Committer:
echo_piyo
Date:
2017-10-22
Revision:
76:03475cafb326
Parent:
66:1664ee92539d

File content as of revision 76:03475cafb326:

/*
    ★サイクリック★
サイクリックでピンを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 CYLINDER_H
#define CYLINDER_H

#include "mbed.h"

class Cylinder 
{
  public:
    Cylinder(PinName pin_in,PinName pin_out):cylinder_in(pin_in),cylinder_out(pin_out){
        cylinder_in = 1;
        cylinder_out = 0;
        }
    
    void cyclic(int state)
    {
        if(state)
        {
            if(flag == false)
            {
                cylinder_in = !cylinder_in;
                cylinder_out = !cylinder_out;
            }
            flag = true;
        }
        else flag = false;
    }
    
    int getInState()
    {
        return (int)cylinder_in; 
    }
    
    int getOutState()
    {
        return (int)cylinder_out; 
    }
    
  private:  
    DigitalOut cylinder_in;
    DigitalOut cylinder_out;
    bool flag;
};

#endif