123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117 |
-
- #ifndef MBED_BUSINOUT_H
- #define MBED_BUSINOUT_H
-
- #include "DigitalInOut.h"
-
- namespace mbed {
-
-
- class BusInOut {
-
- public:
-
-
-
- BusInOut(PinName p0, PinName p1 = NC, PinName p2 = NC, PinName p3 = NC,
- PinName p4 = NC, PinName p5 = NC, PinName p6 = NC, PinName p7 = NC,
- PinName p8 = NC, PinName p9 = NC, PinName p10 = NC, PinName p11 = NC,
- PinName p12 = NC, PinName p13 = NC, PinName p14 = NC, PinName p15 = NC);
-
- BusInOut(PinName pins[16]);
-
- virtual ~BusInOut();
-
-
-
-
-
- void write(int value);
-
-
-
- int read();
-
-
-
- void output();
-
-
-
- void input();
-
-
-
- void mode(PinMode pull);
-
-
-
- int mask() {
- return _nc_mask;
- }
-
- #ifdef MBED_OPERATORS
-
-
- BusInOut& operator= (int v);
- BusInOut& operator= (BusInOut& rhs);
-
-
-
- DigitalInOut& operator[] (int index);
-
-
-
- operator int();
- #endif
-
- protected:
- DigitalInOut* _pin[16];
-
-
-
- int _nc_mask;
-
-
- private:
- BusInOut(const BusInOut&);
- BusInOut & operator = (const BusInOut&);
- };
-
- }
-
- #endif
|