Replacement for regular GPIO (DigitalIn, DigitalOut, DigitalInOut) classes which has superior speed.

Fork of FastIO by Erik -

Committer:
davidr99
Date:
Tue Oct 24 03:00:41 2017 +0000
Revision:
23:929068181dea
Parent:
17:87872fcf8586
Changed Ticker to only send 1 line at a time but interupt every 15us

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Sissors 2:1a6ed4b84590 1 #include "mbed.h"
Sissors 2:1a6ed4b84590 2
Sissors 2:1a6ed4b84590 3 typedef struct {
Sissors 2:1a6ed4b84590 4 DigitalInOut *_pin;
Sissors 2:1a6ed4b84590 5 } fastio_vars;
Sissors 2:1a6ed4b84590 6
Sissors 17:87872fcf8586 7 #define INIT_PIN this->container._pin = new DigitalInOut(pin)
Sissors 17:87872fcf8586 8 #define DESTROY_PIN delete(this->container._pin)
Sissors 2:1a6ed4b84590 9
Sissors 17:87872fcf8586 10 #define SET_DIR_INPUT this->container._pin->input()
Sissors 17:87872fcf8586 11 #define SET_DIR_OUTPUT this->container._pin->output()
Sissors 17:87872fcf8586 12 #define SET_MODE(pull) this->container._pin->mode(pull)
Sissors 2:1a6ed4b84590 13
Sissors 17:87872fcf8586 14 #define WRITE_PIN_SET this->container._pin->write(1)
Sissors 17:87872fcf8586 15 #define WRITE_PIN_CLR this->container._pin->write(0)
Sissors 2:1a6ed4b84590 16
Sissors 17:87872fcf8586 17 #define READ_PIN this->container._pin->read()
Sissors 2:1a6ed4b84590 18