diff options
Diffstat (limited to 'tmk_core/tool/mbed/mbed-sdk/libraries/tests/libs')
4 files changed, 0 insertions, 262 deletions
diff --git a/tmk_core/tool/mbed/mbed-sdk/libraries/tests/libs/SPIHalfDuplex/SPIHalfDuplex.cpp b/tmk_core/tool/mbed/mbed-sdk/libraries/tests/libs/SPIHalfDuplex/SPIHalfDuplex.cpp deleted file mode 100644 index 5fc6e8568e..0000000000 --- a/tmk_core/tool/mbed/mbed-sdk/libraries/tests/libs/SPIHalfDuplex/SPIHalfDuplex.cpp +++ /dev/null @@ -1,43 +0,0 @@ -/* mbed Microcontroller Library - SPIHalfDuplex - * Copyright (c) 2010-2011 ARM Limited. All rights reserved. - */ -#include "SPIHalfDuplex.h" - -#if DEVICE_SPI - -#include "spi_api.h" -#include "pinmap.h" - -#define GPIO_MODE 0 -#define SPI_MODE 2 - -namespace mbed { - -SPIHalfDuplex::SPIHalfDuplex(PinName mosi, PinName miso, PinName sclk) : SPI(mosi, miso, sclk) { - _mosi = mosi; - _miso = miso; - _sbits = _bits; -} - -void SPIHalfDuplex::slave_format(int sbits) { - _sbits = sbits; -} - -int SPIHalfDuplex::write(int value) { - int t_bits = _bits; - pin_function(_mosi, SPI_MODE); - int ret_val = SPI::write(value); - if (ret_val != value) { - return -1; - } - format(_sbits, _mode); - pin_function(_mosi, GPIO_MODE); - ret_val = SPI::write(0x55); - format(t_bits, _mode); - pin_function(_mosi, SPI_MODE); - return ret_val; -} - -} // end namespace mbed - -#endif diff --git a/tmk_core/tool/mbed/mbed-sdk/libraries/tests/libs/SPIHalfDuplex/SPIHalfDuplex.h b/tmk_core/tool/mbed/mbed-sdk/libraries/tests/libs/SPIHalfDuplex/SPIHalfDuplex.h deleted file mode 100644 index 14633b8555..0000000000 --- a/tmk_core/tool/mbed/mbed-sdk/libraries/tests/libs/SPIHalfDuplex/SPIHalfDuplex.h +++ /dev/null @@ -1,85 +0,0 @@ -/* mbed Microcontroller Library - SPIHalfDuplex - * Copyright (c) 2010-2011 ARM Limited. All rights reserved. - */ -#ifndef MBED_SPIHALFDUPLEX_H -#define MBED_SPIHALFDUPLEX_H - -#include "platform.h" - -#if DEVICE_SPI - -#include "SPI.h" - -namespace mbed { - -/** A SPI half-duplex master, used for communicating with SPI slave devices - * over a shared data line. - * - * The default format is set to 8-bits for both master and slave, and a - * clock frequency of 1MHz - * - * Most SPI devies will also require Chip Select and Reset signals. These - * can be controlled using <DigitalOut> pins. - * - * Although this is for a shared data line, both MISO and MOSI are defined, - * and should be tied together externally to the mbed. This class handles - * the tri-stating of the MOSI pin. - * - * Example: - * @code - * // Send a byte to a SPI half-duplex slave, and record the response - * - * #include "mbed.h" - * - * SPIHalfDuplex device(p5, p6, p7) // mosi, miso, sclk - * - * int main() { - * int respone = device.write(0xAA); - * } - * @endcode - */ - -class SPIHalfDuplex : public SPI { - -public: - - /** Create a SPI half-duplex master connected to the specified pins - * - * Pin Options: - * (5, 6, 7) or (11, 12, 13) - * - * mosi or miso can be specfied as NC if not used - * - * @param mosi SPI Master Out, Slave In pin - * @param miso SPI Master In, Slave Out pin - * @param sclk SPI Clock pin - * @param name (optional) A string to identify the object - */ - SPIHalfDuplex(PinName mosi, PinName miso, PinName sclk); - - /** Write to the SPI Slave and return the response - * - * @param value Data to be sent to the SPI slave - * - * @returns - * Response from the SPI slave - */ - virtual int write(int value); - - /** Set the number of databits expected from the slave, from 4-16 - * - * @param sbits Number of expected bits in the slave response - */ - void slave_format(int sbits); - -protected: - PinName _mosi; - PinName _miso; - int _sbits; -}; // End of class - -} // End of namespace mbed - -#endif - -#endif diff --git a/tmk_core/tool/mbed/mbed-sdk/libraries/tests/libs/SerialHalfDuplex/SerialHalfDuplex.cpp b/tmk_core/tool/mbed/mbed-sdk/libraries/tests/libs/SerialHalfDuplex/SerialHalfDuplex.cpp deleted file mode 100644 index 7594e40473..0000000000 --- a/tmk_core/tool/mbed/mbed-sdk/libraries/tests/libs/SerialHalfDuplex/SerialHalfDuplex.cpp +++ /dev/null @@ -1,52 +0,0 @@ -/* mbed Microcontroller Library - SerialHalfDuplex - * Copyright (c) 2010-2011 ARM Limited. All rights reserved. - */ -#include "SerialHalfDuplex.h" - -#if DEVICE_SERIAL - -#include "pinmap.h" -#include "serial_api.h" - -namespace mbed { - -SerialHalfDuplex::SerialHalfDuplex(PinName tx, PinName rx) - : Serial(tx, rx) { - - gpio_init(&gpio, tx, PIN_INPUT); - gpio_mode(&gpio, PullNone); // no pull -} - -// To transmit a byte in half duplex mode: -// 1. Disable interrupts, so we don't trigger on loopback byte -// 2. Set tx pin to UART out -// 3. Transmit byte as normal -// 4. Read back byte from looped back tx pin - this both confirms that the -// transmit has occurred, and also clears the byte from the buffer. -// 5. Return pin to input mode -// 6. Re-enable interrupts -int SerialHalfDuplex::_putc(int c) { - int retc; - - // TODO: We should not disable all interrupts - __disable_irq(); - - serial_pinout_tx(gpio.pin); - - Serial::_putc(c); - retc = Serial::getc(); // reading also clears any interrupt - - pin_function(gpio.pin, 0); - - __enable_irq(); - - return retc; -} - -int SerialHalfDuplex::_getc(void) { - return Serial::_getc(); -} - -} // End namespace - -#endif diff --git a/tmk_core/tool/mbed/mbed-sdk/libraries/tests/libs/SerialHalfDuplex/SerialHalfDuplex.h b/tmk_core/tool/mbed/mbed-sdk/libraries/tests/libs/SerialHalfDuplex/SerialHalfDuplex.h deleted file mode 100644 index 0ba13d38e5..0000000000 --- a/tmk_core/tool/mbed/mbed-sdk/libraries/tests/libs/SerialHalfDuplex/SerialHalfDuplex.h +++ /dev/null @@ -1,82 +0,0 @@ -/* mbed Microcontroller Library - SerialHalfDuplex - * Copyright (c) 2010-2011 ARM Limited. All rights reserved. - */ -#ifndef MBED_SERIALHALFDUPLEX_H -#define MBED_SERIALHALFDUPLEX_H - -#include "platform.h" - -#if DEVICE_SERIAL - -#include "Serial.h" -#include "gpio_api.h" - -namespace mbed { - -/** A serial port (UART) for communication with other devices using - * Half-Duplex, allowing transmit and receive on a single - * shared transmit and receive line. Only one end should be transmitting - * at a time. - * - * Both the tx and rx pin should be defined, and wired together. - * This is in addition to them being wired to the other serial - * device to allow both read and write functions to operate. - * - * For Simplex and Full-Duplex Serial communication, see Serial() - * - * Example: - * @code - * // Send a byte to a second HalfDuplex device, and read the response - * - * #include "mbed.h" - * - * // p9 and p10 should be wired together to form "a" - * // p28 and p27 should be wired together to form "b" - * // p9/p10 should be wired to p28/p27 as the Half Duplex connection - * - * SerialHalfDuplex a(p9, p10); - * SerialHalfDuplex b(p28, p27); - * - * void b_rx() { // second device response - * b.putc(b.getc() + 4); - * } - * - * int main() { - * b.attach(&b_rx); - * for (int c = 'A'; c < 'Z'; c++) { - * a.putc(c); - * printf("sent [%c]\n", c); - * wait(0.5); // b should respond - * if (a.readable()) { - * printf("received [%c]\n", a.getc()); - * } - * } - * } - * @endcode - */ -class SerialHalfDuplex : public Serial { - -public: - /** Create a half-duplex serial port, connected to the specified transmit - * and receive pins. - * - * These pins should be wired together, as well as to the target device - * - * @param tx Transmit pin - * @param rx Receive pin - */ - SerialHalfDuplex(PinName tx, PinName rx); - -protected: - gpio_object gpio; - - virtual int _putc(int c); - virtual int _getc(void); - -}; // End class SerialHalfDuplex - -} // End namespace - -#endif - -#endif |