retrying spi on frdm (with interrupts)
Dependencies: mbed
main.cpp
- Committer:
- armdran
- Date:
- 2015-04-07
- Revision:
- 1:2ba1eb5da872
- Parent:
- 0:c7c985b76b04
File content as of revision 1:2ba1eb5da872:
#include "mbed.h" //SPI Master Serial pc(USBTX, USBRX); SPI spi(D11, D12, D13); // mosi, miso, sclk DigitalOut cs(D10); InterruptIn ir(D9); uint8_t spi_write(uint8_t write = 0xFF) { cs = 0; uint8_t response = spi.write(write); cs = 1; //printf(" sent: %x; received: %x\r\n", write, response); return response; } void keyboardEvent() { printf("ir received.\r\n"); uint8_t keystroke = spi_write(0xFE); printf(" key %x received.\r\n", keystroke); uint8_t modifier = spi_write(keystroke); printf(" mod %x received.\r\n", modifier); uint8_t dummy = spi_write(modifier); printf(" got dummy %x. done.\r\n", dummy); } int main() { printf("init\r\n"); spi.format(8,1); spi.frequency(1000000); ir.rise(&keyboardEvent); while(1) { } }