Éric Poirier
/
SPI_labo1
Labo APP1 (SPI)
spi.cpp@0:f59252c7524a, 2017-08-30 (annotated)
- Committer:
- BobMorane22
- Date:
- Wed Aug 30 18:44:38 2017 +0000
- Revision:
- 0:f59252c7524a
SPI example working. 7 segment resets itself automatically.
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
BobMorane22 | 0:f59252c7524a | 1 | #include "mbed.h" |
BobMorane22 | 0:f59252c7524a | 2 | |
BobMorane22 | 0:f59252c7524a | 3 | #define ON 0x00 |
BobMorane22 | 0:f59252c7524a | 4 | #define OFF 0x01 |
BobMorane22 | 0:f59252c7524a | 5 | #define ALWAYS 0x01 |
BobMorane22 | 0:f59252c7524a | 6 | #define CLEAR_7SEG 0x76 |
BobMorane22 | 0:f59252c7524a | 7 | |
BobMorane22 | 0:f59252c7524a | 8 | // PC <-USB-> Microcontroller: |
BobMorane22 | 0:f59252c7524a | 9 | Serial pc(USBTX, USBRX); // tx, rx |
BobMorane22 | 0:f59252c7524a | 10 | |
BobMorane22 | 0:f59252c7524a | 11 | // 7segment <-SPI-> Microcontroller: |
BobMorane22 | 0:f59252c7524a | 12 | SPI seg7(p11, p12, p13); |
BobMorane22 | 0:f59252c7524a | 13 | |
BobMorane22 | 0:f59252c7524a | 14 | // Slave select: |
BobMorane22 | 0:f59252c7524a | 15 | DigitalOut cs(p14); |
BobMorane22 | 0:f59252c7524a | 16 | |
BobMorane22 | 0:f59252c7524a | 17 | |
BobMorane22 | 0:f59252c7524a | 18 | int main() |
BobMorane22 | 0:f59252c7524a | 19 | { |
BobMorane22 | 0:f59252c7524a | 20 | int value = 0; |
BobMorane22 | 0:f59252c7524a | 21 | cs = OFF; |
BobMorane22 | 0:f59252c7524a | 22 | |
BobMorane22 | 0:f59252c7524a | 23 | while(ALWAYS) |
BobMorane22 | 0:f59252c7524a | 24 | { |
BobMorane22 | 0:f59252c7524a | 25 | pc.printf("Value: "); |
BobMorane22 | 0:f59252c7524a | 26 | pc.scanf("%d", &value); |
BobMorane22 | 0:f59252c7524a | 27 | pc.printf("%d\r\n", value); |
BobMorane22 | 0:f59252c7524a | 28 | |
BobMorane22 | 0:f59252c7524a | 29 | cs = ON; |
BobMorane22 | 0:f59252c7524a | 30 | |
BobMorane22 | 0:f59252c7524a | 31 | // Clear and write data: |
BobMorane22 | 0:f59252c7524a | 32 | seg7.write(CLEAR_7SEG); |
BobMorane22 | 0:f59252c7524a | 33 | wait(0.2); |
BobMorane22 | 0:f59252c7524a | 34 | seg7.write(value); |
BobMorane22 | 0:f59252c7524a | 35 | |
BobMorane22 | 0:f59252c7524a | 36 | cs = OFF; |
BobMorane22 | 0:f59252c7524a | 37 | } |
BobMorane22 | 0:f59252c7524a | 38 | } |