Markus Sattler
|
2eea25873d
|
fix SPI speed calculation @160Mhz Clock
|
2015-05-15 13:42:30 +02:00 |
|
Markus Sattler
|
e0c1b47937
|
add some notes to the SPI functions (aligned to 32Bit)
- Fatal exception (9)
|
2015-05-13 19:03:21 +02:00 |
|
Markus Sattler
|
27f45a205a
|
SD:
- optimize SPI usage 148% write speed (24kB/s -> 37kB/s) and 127% read speed (121kB/s -> 155kB/s) at 8MHz
- add clock frequency as parameter for begin(csPin, frequency)
- SD @80MHz write: 84kB/s read: 231kB/s
SPI add functions:
- void write32(uint32_t data);
- void write32(uint32_t data, bool msb);
- void transferBytes(uint8_t * out, uint8_t * in, uint32_t size);
Adafruit_ILI9341:
- code clean
|
2015-05-10 17:34:16 +02:00 |
|
Markus Sattler
|
070f2b3a14
|
many speed optimizations in Adafruit_ILI9341 lib (3x times faster)
add new SPI function:
void write(uint8_t data);
void write16(uint16_t data);
void write16(uint16_t data, bool msb);
void writeBytes(uint8_t * data, uint32_t size);
void writePattern(uint8_t * data, uint8_t size, uint32_t repeat);
Adafruit_ILI9341:
| Benchmark | Old (ms) | New (ms) | Speedup |
| ------------------------- | -------- | -------- | ----------- |
| Screen fill | 1248369 | 278707 | +347,91% |
| Text | 86102 | 53785 | +60,09% |
| Lines | 825400 | 536374 | +53,89% |
| Horiz/Vert Lines | 101875 | 24653 | +313,24% |
| Rectangles (outline) | 65720 | 17295 | +279,99% |
| Rectangles (filled) | 2592250 | 579157 | +347,59% |
| Circles (filled) | 411475 | 179454 | +129,29% |
| Circles (outline) | 360002 | 233584 | +54,12% |
| Triangles (outline) | 261772 | 170118 | +53,88% |
| Triangles (filled) | 866951 | 246237 | +252,08% |
| Rounded rects (outline) | 154131 | 81570 | +88,96% |
| Rounded rects (filled) | 2828112 | 660983 | +327,86% |
| | | | |
| Total | 9802159 | 3061917 | +220,13% |
|
2015-05-09 16:19:32 +02:00 |
|
Markus Sattler
|
dcc899a1b5
|
some speed optimizations
|
2015-05-08 15:33:48 +02:00 |
|
Markus Sattler
|
7c33efc3d8
|
fix SPI run on system clock
|
2015-05-08 15:30:27 +02:00 |
|
Markus Sattler
|
d7a88c3ea3
|
use a function to calculate best match clock register for SPI
TEST:
Frequency: 1000000 -> [0x009C1001] EQU: 0 Pre: 39 N: 1 H: 0 L: 1 - Back Calculated Frequency: 1000000
Frequency: 4000000 -> [0x00001001] EQU: 0 Pre: 0 N: 1 H: 0 L: 1 - Back Calculated Frequency: 40000000
Frequency: 2000000 -> [0x00041001] EQU: 0 Pre: 1 N: 1 H: 0 L: 1 - Back Calculated Frequency: 20000000
Frequency: 1600000 -> [0x00004002] EQU: 0 Pre: 0 N: 4 H: 0 L: 2 - Back Calculated Frequency: 16000000
Frequency: 1610000 -> [0x00004002] EQU: 0 Pre: 0 N: 4 H: 0 L: 2 - Back Calculated Frequency: 16000000
Frequency: 1000000 -> [0x000C1001] EQU: 0 Pre: 3 N: 1 H: 0 L: 1 - Back Calculated Frequency: 10000000
Frequency: 8000000 -> [0x00101001] EQU: 0 Pre: 4 N: 1 H: 0 L: 1 - Back Calculated Frequency: 8000000
Frequency: 5000000 -> [0x001C1001] EQU: 0 Pre: 7 N: 1 H: 0 L: 1 - Back Calculated Frequency: 5000000
Frequency: 4000000 -> [0x00241001] EQU: 0 Pre: 9 N: 1 H: 0 L: 1 - Back Calculated Frequency: 4000000
Frequency: 2000000 -> [0x004C1001] EQU: 0 Pre: 19 N: 1 H: 0 L: 1 - Back Calculated Frequency: 2000000
Frequency: 1000000 -> [0x009C1001] EQU: 0 Pre: 39 N: 1 H: 0 L: 1 - Back Calculated Frequency: 1000000
Frequency: 500000 -> [0x013C1001] EQU: 0 Pre: 79 N: 1 H: 0 L: 1 - Back Calculated Frequency: 500000
Frequency: 250000 -> [0x027C1001] EQU: 0 Pre: 159 N: 1 H: 0 L: 1 - Back Calculated Frequency: 250000
Frequency: 125000 -> [0x04FC1001] EQU: 0 Pre: 319 N: 1 H: 0 L: 1 - Back Calculated Frequency: 125000
Frequency: 6666666 -> [0x00141001] EQU: 0 Pre: 5 N: 1 H: 0 L: 1 - Back Calculated Frequency: 6666666
Frequency: 6000000 -> [0x00181001] EQU: 0 Pre: 6 N: 1 H: 0 L: 1 - Back Calculated Frequency: 5714285
Frequency: 3000000 -> [0x00202001] EQU: 0 Pre: 8 N: 2 H: 0 L: 1 - Back Calculated Frequency: 2962962
Frequency: 100 -> [0x7FFFF020] EQU: 0 Pre: 8191 N: 63 H: 0 L: 32 - Back Calculated Frequency: 152
Frequency: 125000 -> [0x04FC1001] EQU: 0 Pre: 319 N: 1 H: 0 L: 1 - Back Calculated Frequency: 125000
Frequency: 16457 -> [0x25F81001] EQU: 0 Pre: 2430 N: 1 H: 0 L: 1 - Back Calculated Frequency: 16454
|
2015-05-08 00:48:08 +02:00 |
|
Markus Sattler
|
7f4a10062b
|
update README
add some docu and todo
|
2015-05-07 20:48:59 +02:00 |
|
Markus Sattler
|
ee5def9c8c
|
add CPHA support for SPI
- tested with logic analyzer
|
2015-05-07 19:48:55 +02:00 |
|
Markus Sattler
|
163858dc44
|
fix use SPI.beginTransaction crash
|
2015-05-07 19:25:25 +02:00 |
|
Markus Sattler
|
6599a9f52a
|
add SPIClass::transfer16 (needed by some display libs)
|
2015-05-04 18:11:46 +02:00 |
|
ficeto
|
fbec557ddb
|
Importing my changes
|
2015-04-30 20:48:50 +03:00 |
|
Ivan Grokhotkov
|
dfbc499627
|
Fix slashes in SPI library
|
2015-04-03 08:18:23 +03:00 |
|
Andrey Filimonov
|
4626a9df80
|
Initial ESP8266 HW SPI implementation
ILI9341 lib as a client for SPI lib
|
2015-04-01 07:10:31 +03:00 |
|
Ivan Grokhotkov
|
ee762f3150
|
Add WIP SPI library
|
2015-01-21 04:19:04 +03:00 |
|