Dependents:   ShootingSystem

AmmoPusher.h

Committer:
inst
Date:
2015-08-21
Revision:
1:42d2772575c5
Parent:
0:fac139a6b77c
Child:
2:5ec2a3097d4c

File content as of revision 1:42d2772575c5:

#ifndef INCLUDED_AMMO_PUSHER_H
#define INCLUDED_AMMO_PUSHER_H

#include "mbed.h"
class I2CMotor;

class AmmoPusher {
public:
    AmmoPusher( I2CMotor* drawerMotor );
    
    void update();
    void draw();
    void push();
    
    bool hasPusherFinishedDrawing();
    bool hasPusherFinishedPushing();
    
private:
    static const float mDuty;
    static const PinName mDrawingLimitSwitchPinName;
    static const PinName mPushingLimitSwitchPinName;

    DigitalIn* mDrawingLimitSwitch;
    DigitalIn* mPushingLimitSwitch;
    I2CMotor* mDrawerMotor;
};

#endif