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.
Dependents: STM32L452_Nucleo_ticker
Fork of mbed-dev by
Diff: drivers/SPI.cpp
- Revision:
- 170:19eb464bc2be
- Parent:
- 169:e3b6fe271b81
- Child:
- 174:b96e65c34a4d
--- a/drivers/SPI.cpp Wed Jul 19 17:31:21 2017 +0100
+++ b/drivers/SPI.cpp Thu Aug 03 13:13:39 2017 +0100
@@ -32,7 +32,8 @@
#endif
_bits(8),
_mode(0),
- _hz(1000000) {
+ _hz(1000000),
+ _write_fill(SPI_FILL_CHAR) {
// No lock needed in the constructor
spi_init(&_spi, mosi, miso, sclk, ssel);
@@ -102,7 +103,7 @@
int SPI::write(const char *tx_buffer, int tx_length, char *rx_buffer, int rx_length) {
lock();
_acquire();
- int ret = spi_master_block_write(&_spi, tx_buffer, tx_length, rx_buffer, rx_length);
+ int ret = spi_master_block_write(&_spi, tx_buffer, tx_length, rx_buffer, rx_length, _write_fill);
unlock();
return ret;
}
@@ -115,6 +116,12 @@
_mutex->unlock();
}
+void SPI::set_default_write_value(char data) {
+ lock();
+ _write_fill = data;
+ unlock();
+}
+
#if DEVICE_SPI_ASYNCH
int SPI::transfer(const void *tx_buffer, int tx_length, void *rx_buffer, int rx_length, unsigned char bit_width, const event_callback_t& callback, int event)
