Libraries/HardwareSPI/src/include/HSPI/Device.h
Go to the documentation of this file.
Manages access to SPI hardware.
Definition: HardwareSPI/src/include/HSPI/Controller.h:52
virtual void execute(Request &request)
void configChanged(Device &dev)
Devices call this method to tell the Controller about configuration changes. Internally,...
IoModes getSupportedIoModes(const Device &dev) const
Determine which IO modes are supported for the given device.
virtual bool startDevice(Device &dev, PinSet pinSet, uint8_t chipSelect, uint32_t clockSpeed)
Assign a device to a CS# using a specific pin set. Only one device may be assigned to any CS.
void wait(Request &request)
Manages a specific SPI device instance attached to a controller.
Definition: Libraries/HardwareSPI/src/include/HSPI/Device.h:45
size_t getBitsPerClock() const
Definition: Libraries/HardwareSPI/src/include/HSPI/Device.h:154
bool transferComplete(Request &request)
Definition: Libraries/HardwareSPI/src/include/HSPI/Device.h:207
virtual bool setIoMode(IoMode mode)
Definition: Libraries/HardwareSPI/src/include/HSPI/Device.h:140
void setClockMode(ClockMode mode)
Definition: Libraries/HardwareSPI/src/include/HSPI/Device.h:113
uint8_t getChipSelect() const
Definition: Libraries/HardwareSPI/src/include/HSPI/Device.h:86
void wait(Request &request)
Definition: Libraries/HardwareSPI/src/include/HSPI/Device.h:188
virtual ~Device()
Definition: Libraries/HardwareSPI/src/include/HSPI/Device.h:51
void transferStarting(Request &request)
Definition: Libraries/HardwareSPI/src/include/HSPI/Device.h:200
virtual IoModes getSupportedIoModes() const =0
Return set of IO modes supported by a device implementation.
bool isSupported(IoMode mode) const
Determine if the device/controller combination supports an IO mode Must be called after begin() as ot...
Definition: Libraries/HardwareSPI/src/include/HSPI/Device.h:135
bool begin(PinSet pinSet, uint8_t chipSelect, uint32_t clockSpeed)
Register device with controller and prepare for action.
Definition: Libraries/HardwareSPI/src/include/HSPI/Device.h:62
Device(Controller &controller)
Definition: Libraries/HardwareSPI/src/include/HSPI/Device.h:47
friend Controller
Definition: Libraries/HardwareSPI/src/include/HSPI/Device.h:198
bool isReady() const
Determine if the device is initialised.
Definition: Libraries/HardwareSPI/src/include/HSPI/Device.h:76
uint32_t getSpeed() const
Definition: Libraries/HardwareSPI/src/include/HSPI/Device.h:91
Controller & controller
Definition: Libraries/HardwareSPI/src/include/HSPI/Device.h:195
ClockMode getClockMode() const
Definition: Libraries/HardwareSPI/src/include/HSPI/Device.h:121
PinSet getPinSet() const
Definition: Libraries/HardwareSPI/src/include/HSPI/Device.h:81
BitOrder getBitOrder() const
Definition: Libraries/HardwareSPI/src/include/HSPI/Device.h:108
void setBitOrder(BitOrder bitOrder)
Definition: Libraries/HardwareSPI/src/include/HSPI/Device.h:100
void onTransfer(Callback callback)
Set a callback to be invoked before a request is started, and when it has finished.
Definition: Libraries/HardwareSPI/src/include/HSPI/Device.h:183
IoMode getIoMode() const
Definition: Libraries/HardwareSPI/src/include/HSPI/Device.h:149
void execute(Request &request)
Definition: Libraries/HardwareSPI/src/include/HSPI/Device.h:173
bool(*)(Request &request) Callback
SPI completion callback routine.
Definition: HardwareSPI/src/include/HSPI/Request.h:41
Definition: Common.h:35
Device * device
Target device for this request.
Definition: HardwareSPI/src/include/HSPI/Request.h:58
Callback callback
Completion routine.
Definition: HardwareSPI/src/include/HSPI/Request.h:71
volatile uint8_t busy
Request in progress.
Definition: HardwareSPI/src/include/HSPI/Request.h:64