Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
af_utils/mbedSPI.cpp@0:f0de320e23ac, 2017-12-01 (annotated)
- Committer:
- Rhyme
- Date:
- Fri Dec 01 06:16:31 2017 +0000
- Revision:
- 0:f0de320e23ac
OLED display for GAS pressure started working
Who changed what in which revision?
| User | Revision | Line number | New contents of line |
|---|---|---|---|
| Rhyme | 0:f0de320e23ac | 1 | #include "mbed.h" |
| Rhyme | 0:f0de320e23ac | 2 | #include "vt100.h" |
| Rhyme | 0:f0de320e23ac | 3 | #include "afSPI.h" |
| Rhyme | 0:f0de320e23ac | 4 | #include "mbedSPI.h" |
| Rhyme | 0:f0de320e23ac | 5 | |
| Rhyme | 0:f0de320e23ac | 6 | /* |
| Rhyme | 0:f0de320e23ac | 7 | class mbedSPI : public afSPI { |
| Rhyme | 0:f0de320e23ac | 8 | public: |
| Rhyme | 0:f0de320e23ac | 9 | mbedSPI(PinName mosi, PinName miso, PinName sckl, PinName cs) ; |
| Rhyme | 0:f0de320e23ac | 10 | virtual void begin() ; |
| Rhyme | 0:f0de320e23ac | 11 | virtual void beginSPI() ; |
| Rhyme | 0:f0de320e23ac | 12 | virtual void endSPI() ; |
| Rhyme | 0:f0de320e23ac | 13 | virtual void transfer(char *bytes,int len) ; |
| Rhyme | 0:f0de320e23ac | 14 | private: |
| Rhyme | 0:f0de320e23ac | 15 | SPI _spi ; |
| Rhyme | 0:f0de320e23ac | 16 | DigitalOut _cs ; |
| Rhyme | 0:f0de320e23ac | 17 | } ; |
| Rhyme | 0:f0de320e23ac | 18 | */ |
| Rhyme | 0:f0de320e23ac | 19 | |
| Rhyme | 0:f0de320e23ac | 20 | mbedSPI::mbedSPI(PinName mosi, PinName miso, PinName sckl, PinName cs) : |
| Rhyme | 0:f0de320e23ac | 21 | _spi(mosi, miso, sckl), _cs(cs, 1) |
| Rhyme | 0:f0de320e23ac | 22 | { |
| Rhyme | 0:f0de320e23ac | 23 | _spi.format(8, 0) ; |
| Rhyme | 0:f0de320e23ac | 24 | _spi.frequency(1000000) ; /* 1MHz */ |
| Rhyme | 0:f0de320e23ac | 25 | #if defined (TARGET_KL25Z) || defined (TARGET_TEENSY3_1) |
| Rhyme | 0:f0de320e23ac | 26 | #ifndef SPI0_C1 |
| Rhyme | 0:f0de320e23ac | 27 | #define SPI0_C1 (*(uint8_t *)0x40076000) |
| Rhyme | 0:f0de320e23ac | 28 | #endif |
| Rhyme | 0:f0de320e23ac | 29 | SPI0_C1 |= 0x01 ; /* LSB First */ |
| Rhyme | 0:f0de320e23ac | 30 | #endif |
| Rhyme | 0:f0de320e23ac | 31 | } |
| Rhyme | 0:f0de320e23ac | 32 | |
| Rhyme | 0:f0de320e23ac | 33 | void mbedSPI::begin(void) |
| Rhyme | 0:f0de320e23ac | 34 | { |
| Rhyme | 0:f0de320e23ac | 35 | } |
| Rhyme | 0:f0de320e23ac | 36 | |
| Rhyme | 0:f0de320e23ac | 37 | void mbedSPI::beginSPI() |
| Rhyme | 0:f0de320e23ac | 38 | { |
| Rhyme | 0:f0de320e23ac | 39 | // printf("+") ; fflush(stdout) ; |
| Rhyme | 0:f0de320e23ac | 40 | _cs = 0 ; |
| Rhyme | 0:f0de320e23ac | 41 | wait_us(1) ; |
| Rhyme | 0:f0de320e23ac | 42 | } |
| Rhyme | 0:f0de320e23ac | 43 | |
| Rhyme | 0:f0de320e23ac | 44 | void mbedSPI::endSPI() |
| Rhyme | 0:f0de320e23ac | 45 | { |
| Rhyme | 0:f0de320e23ac | 46 | _cs = 1 ; |
| Rhyme | 0:f0de320e23ac | 47 | wait_us(1) ; |
| Rhyme | 0:f0de320e23ac | 48 | // printf("-") ; fflush(stdout) ; |
| Rhyme | 0:f0de320e23ac | 49 | } |
| Rhyme | 0:f0de320e23ac | 50 | |
| Rhyme | 0:f0de320e23ac | 51 | void mbedSPI::transfer(char *bytes, int len) |
| Rhyme | 0:f0de320e23ac | 52 | { |
| Rhyme | 0:f0de320e23ac | 53 | int i ; |
| Rhyme | 0:f0de320e23ac | 54 | for (i = 0 ; i < len ; i++ ) { |
| Rhyme | 0:f0de320e23ac | 55 | bytes[i] = _spi.write(bytes[i]) ; |
| Rhyme | 0:f0de320e23ac | 56 | } |
| Rhyme | 0:f0de320e23ac | 57 | } |
| Rhyme | 0:f0de320e23ac | 58 |