test for export
Dependents: F401RE_USBMSD_RAM_copy
Fork of RAM_DISK by
USBMSD_Ram.h
00001 /* mbed USBMSD_Ram Library 00002 * 00003 * Permission is hereby granted, free of charge, to any person obtaining a copy 00004 * of this software and associated documentation files (the "Software"), to deal 00005 * in the Software without restriction, including without limitation the rights 00006 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 00007 * copies of the Software, and to permit persons to whom the Software is 00008 * furnished to do so, subject to the following conditions: 00009 * 00010 * The above copyright notice and this permission notice shall be included in 00011 * all copies or substantial portions of the Software. 00012 * 00013 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 00014 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 00015 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 00016 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 00017 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 00018 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 00019 * THE SOFTWARE. 00020 */ 00021 00022 #ifndef USBMSD_RAM_H 00023 #define USBMSD_RAM_H 00024 00025 #include "mbed.h" 00026 #include "USBMSD.h" 00027 00028 #define NB_SECTORS (20) 00029 00030 /** Use the Ram as mass storage device using the USBMSD class 00031 * 00032 * @code 00033 * #include "mbed.h" 00034 * #include "USBMSD_Ram.h" 00035 * 00036 * USBMSD_Ram sd; 00037 * 00038 * int main() { 00039 * while(1); 00040 * } 00041 * 00042 * @endcode 00043 */ 00044 class USBMSD_Ram : public USBMSD { 00045 public: 00046 00047 00048 USBMSD_Ram(); 00049 virtual int disk_initialize(); 00050 virtual int disk_write(const uint8_t * data, uint64_t block, uint8_t count); 00051 virtual int disk_read(uint8_t * data, uint64_t block, uint8_t count); 00052 virtual int disk_status(); 00053 virtual int disk_sync(); 00054 virtual uint64_t disk_sectors(); 00055 virtual uint64_t disk_size(); 00056 00057 protected: 00058 int _status; 00059 char disk_image[512*NB_SECTORS]; 00060 00061 }; 00062 00063 #endif
Generated on Wed Jul 13 2022 07:19:18 by 1.7.2