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.
Fork of mbed-os-test by
QuadSpi.h
00001 /******************************************************************************* 00002 * Copyright (C) 2016 Maxim Integrated Products, Inc., All Rights Reserved. 00003 * 00004 * Permission is hereby granted, free of charge, to any person obtaining a 00005 * copy of this software and associated documentation files (the "Software"), 00006 * to deal in the Software without restriction, including without limitation 00007 * the rights to use, copy, modify, merge, publish, distribute, sublicense, 00008 * and/or sell copies of the Software, and to permit persons to whom the 00009 * Software is furnished to do so, subject to the following conditions: 00010 * 00011 * The above copyright notice and this permission notice shall be included 00012 * in all copies or substantial portions of the Software. 00013 * 00014 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS 00015 * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 00016 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 00017 * IN NO EVENT SHALL MAXIM INTEGRATED BE LIABLE FOR ANY CLAIM, DAMAGES 00018 * OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, 00019 * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 00020 * OTHER DEALINGS IN THE SOFTWARE. 00021 * 00022 * Except as contained in this notice, the name of Maxim Integrated 00023 * Products, Inc. shall not be used except as stated in the Maxim Integrated 00024 * Products, Inc. Branding Policy. 00025 * 00026 * The mere transfer of this software does not imply any licenses 00027 * of trade secrets, proprietary technology, copyrights, patents, 00028 * trademarks, maskwork rights, or any other form of intellectual 00029 * property whatsoever. Maxim Integrated Products, Inc. retains all 00030 * ownership rights. 00031 ******************************************************************************* 00032 */ 00033 #ifndef _QUADSPI_H_ 00034 #define _QUADSPI_H_ 00035 00036 #include "mbed.h" 00037 00038 00039 00040 00041 /** 00042 * This class provides a Quad SPI interface for quad spi devices 00043 * the class also allows single (4-Wire) communication 00044 */ 00045 class QuadSPI : SPI { 00046 00047 public: 00048 /** Create a QuadSPI master connected to the specified pins 00049 * 00050 * mosi or miso can be specfied as NC if not used 00051 * 00052 * @param mosi QuadSPI Master Out, Slave In pin 00053 * @param miso QuadSPI Master In, Slave Out pin 00054 * @param sclk QuadSPI Clock pin 00055 * @param ssel QuadSPI chip select pin 00056 */ 00057 QuadSPI(PinName mosi, PinName miso, PinName sclk, PinName ssel = NC); 00058 00059 /** Write to the Quad SPI Slave and return the response 00060 * 00061 * @param value Data to be sent to the SPI slave 00062 * 00063 * @returns 00064 * none 00065 */ 00066 int write(int value); 00067 00068 /** Read from the Quad SPI Slave and return the response 00069 * 00070 * @param none 00071 * 00072 * @returns 00073 * Response from the SPI slave 00074 */ 00075 int read(void); 00076 00077 /** Allow switching to and from Single SPI and Quad SPI 00078 * 00079 * @param none 00080 * 00081 * @returns 00082 * Response from the SPI slave 00083 */ 00084 void setSingleMode(); 00085 void setQuadMode(); 00086 }; 00087 00088 #endif /* _QUADSPI_H_ */
Generated on Wed Jul 13 2022 17:00:35 by
1.7.2
