FastLED 3.9.15
Loading...
Searching...
No Matches
fastspi_nop.h
Go to the documentation of this file.
1#pragma once
2
6
7#ifndef __INC_FASTSPI_NOP_H
8#define __INC_FASTSPI_NOP_H
9
10#if FASTLED_DOXYGEN // Guard against the arduino ide idiotically including every header file
11
12#include "fl/system/fastled.h"
13#include "fl/stl/int.h"
14
15
19template <fl::u8 _DATA_PIN, fl::u8 _CLOCK_PIN, fl::u32 _SPI_CLOCK_DIVIDER>
21 Selectable *mPSelect;
22
23public:
25 NOPSPIOutput() { mPSelect = nullptr; }
26
28 NOPSPIOutput(Selectable *pSelect) { mPSelect = pSelect; }
29
31 void setSelect(Selectable *pSelect) { mPSelect = pSelect; }
32
34 void init() { /* TODO */ }
35
37 void select() { /* TODO */ }
38
40 void release() { /* TODO */ }
41
43 waitFully();
44 release();
45 }
46
48 void waitFully();
49
51 template <fl::u8 BIT> inline static void writeBit(fl::u8 b) { /* TODO */ }
52
54 void writeByte(fl::u8 b) { /* TODO */ }
56 void writeWord(fl::u16 w) { /* TODO */ }
57
59 static void writeBytesValueRaw(fl::u8 value, int len) { /* TODO */ }
60
62 void writeBytesValue(fl::u8 value, int len) { /* TODO */ }
63
65 void writeBytes(fl::u8 *data, int len) { /* TODO */ }
66
68 template <fl::u8 BIT> inline static void writeBit(fl::u8 b) { /* TODO */ }
69
71 template <fl::u8 FLAGS, class D, EOrder RGB_ORDER> void writePixels(PixelController<RGB_ORDER> pixels, void* context = nullptr) { /* TODO */ }
72
73};
74
75
76#endif
77#endif
void release()
release the CS select
Definition fastspi_nop.h:40
void writeBytes(fl::u8 *data, int len)
A full cycle of writing a raw block of data out, including select, release, and waiting.
Definition fastspi_nop.h:65
void writePixels(PixelController< RGB_ORDER > pixels, void *context=nullptr)
write out pixel data from the given PixelController object
Definition fastspi_nop.h:71
NOPSPIOutput()
Default Constructor.
Definition fastspi_nop.h:25
NOPSPIOutput(Selectable *pSelect)
Constructor with selectable.
Definition fastspi_nop.h:28
void writeWord(fl::u16 w)
write a word out via SPI (returns immediately on writing register)
Definition fastspi_nop.h:56
static void writeBytesValueRaw(fl::u8 value, int len)
A raw set of writing byte values, assumes setup/init/waiting done elsewhere (static for use by adjust...
Definition fastspi_nop.h:59
void writeByte(fl::u8 b)
write a byte out via SPI (returns immediately on writing register)
Definition fastspi_nop.h:54
void waitFully()
wait until all queued up data has been written
void setSelect(Selectable *pSelect)
set the object representing the selectable
Definition fastspi_nop.h:31
Selectable * mPSelect
Definition fastspi_nop.h:21
void writeBytesValue(fl::u8 value, int len)
A full cycle of writing a value for len bytes, including select, release, and waiting.
Definition fastspi_nop.h:62
void endTransaction()
Definition fastspi_nop.h:42
static void writeBit(fl::u8 b)
not the most efficient mechanism in the world - but should be enough for sm16716 and friends
Definition fastspi_nop.h:51
void init()
initialize the SPI subssytem
Definition fastspi_nop.h:34
void select()
latch the CS select
Definition fastspi_nop.h:37
Internal FastLED header for implementation files.
unsigned char u8
Definition stdint.h:131
Pixel controller class.