@@ -135,38 +135,37 @@ friend class BitBangedSPI;
135
135
};
136
136
137
137
class BitBangedSPI {
138
- public:
139
-
140
- void beginTransaction (SPISettings settings) {
141
- pulseWidth = 1000 / (settings.clock / 1000 );
142
- if (pulseWidth == 0 )
143
- pulseWidth = 1 ;
144
- }
138
+ public:
139
+ void begin () {
140
+ digitalWrite (SCK, LOW);
141
+ digitalWrite (MOSI, LOW);
142
+ pinMode (SCK, OUTPUT);
143
+ pinMode (MOSI, OUTPUT);
144
+ pinMode (MISO, INPUT);
145
+ }
145
146
146
- void begin () {
147
-
148
- pinMode (MISO, INPUT);
149
- pinMode (RESET, OUTPUT);
150
- pinMode (SCK, OUTPUT);
151
- pinMode (MOSI, OUTPUT);
152
- }
147
+ void beginTransaction (SPISettings settings) {
148
+ pulseWidth = 1000 / (settings.clock / 1000 );
149
+ if (pulseWidth == 0 )
150
+ pulseWidth = 1 ;
151
+ }
153
152
154
- void end () {}
153
+ void end () {}
155
154
156
- uint8_t transfer (uint8_t b) {
157
- for (unsigned int i = 0 ; i < 8 ; ++i) {
158
- digitalWrite (MOSI, b & 0x80 );
159
- digitalWrite (SCK, HIGH);
160
- delayMicroseconds (pulseWidth);
161
- b = (b << 1 ) | digitalRead (MISO);
162
- digitalWrite (SCK, LOW); // slow pulse
163
- delayMicroseconds (pulseWidth);
164
- }
165
- return b;
155
+ uint8_t transfer (uint8_t b) {
156
+ for (unsigned int i = 0 ; i < 8 ; ++i) {
157
+ digitalWrite (MOSI, b & 0x80 );
158
+ digitalWrite (SCK, HIGH);
159
+ delayMicroseconds (pulseWidth);
160
+ b = (b << 1 ) | digitalRead (MISO);
161
+ digitalWrite (SCK, LOW); // slow pulse
162
+ delayMicroseconds (pulseWidth);
166
163
}
164
+ return b;
165
+ }
167
166
168
- private:
169
- unsigned long pulseWidth; // in microseconds
167
+ private:
168
+ unsigned long pulseWidth; // in microseconds
170
169
};
171
170
172
171
static BitBangedSPI SPI;
0 commit comments