Animation demo with MIP8F_SPI_Ver60
Dependencies: mbed MIP8F_SPI_Ver60 MIP8f_FRDM_LineBuffer_sample MIP8f_FRDM_TransferMode_sample
Introduction
Animation Demo. Some Goldfish swin in water, from left to right, from bottom to top. Color and monochrome version
Only for LPM027M128x (400x240) ,JDI DIsplay.
Other information , please refer to https://os.mbed.com/teams/JapanDisplayInc/code/MIP8f_FRDM_sample/
Usage
Copy Setting File and Image to micro SD-CARD. you can NOT use same sample color images of OTHER VERSION SAMPLE.
a) Download the following file corresponding to the target panel, and rename file identifier (.bin -> .zip), and unzip the file on micro SD Card's root directory.
LPM027M128x (400x240) :/media/uploads/JDI_Mbed_Team/goldfish_400x240.bin
b) Insert micro SD-CARD to FRDM-K64F. c) Upload binary file to FRDM-K64F.and push Reset Button.
Other information
refer to Usage on https://os.mbed.com/teams/JapanDisplayInc/code/MIP8f_FRDM_sample/
this Sample Code (.bin)
/media/uploads/JDI_Mbed_Team/mip8f_frdm_animation_sample.k64f.bin
SDFileSystem/FATFileSystem/ChaN/diskio.cpp
- Committer:
- JDI_Mbed_Team
- Date:
- 2018-11-22
- Revision:
- 21:d1beeb6c4a53
- Parent:
- 0:33fe30a2b785
File content as of revision 21:d1beeb6c4a53:
/*-----------------------------------------------------------------------*/ /* Low level disk I/O module skeleton for FatFs (C)ChaN, 2014 */ /*-----------------------------------------------------------------------*/ /* If a working storage control module is available, it should be */ /* attached to the FatFs via a glue function rather than modifying it. */ /* This is an example of glue functions to attach various exsisting */ /* storage control modules to the FatFs module with a defined API. */ /*-----------------------------------------------------------------------*/ #include "diskio.h" #include "mbed_debug.h" #include "FATFileSystem.h" using namespace mbed; /*-----------------------------------------------------------------------*/ /* Get Drive Status */ /*-----------------------------------------------------------------------*/ DSTATUS disk_status ( BYTE pdrv /* Physical drive nmuber to identify the drive */ ) { debug_if(FFS_DBG, "disk_status on pdrv [%d]\n", pdrv); return (DSTATUS)FATFileSystem::_ffs[pdrv]->disk_status(); } /*-----------------------------------------------------------------------*/ /* Inidialize a Drive */ /*-----------------------------------------------------------------------*/ DSTATUS disk_initialize ( BYTE pdrv /* Physical drive nmuber to identify the drive */ ) { debug_if(FFS_DBG, "disk_initialize on pdrv [%d]\n", pdrv); return (DSTATUS)FATFileSystem::_ffs[pdrv]->disk_initialize(); } /*-----------------------------------------------------------------------*/ /* Read Sector(s) */ /*-----------------------------------------------------------------------*/ DRESULT disk_read ( BYTE pdrv, /* Physical drive nmuber to identify the drive */ BYTE* buff, /* Data buffer to store read data */ DWORD sector, /* Sector address in LBA */ UINT count /* Number of sectors to read */ ) { debug_if(FFS_DBG, "disk_read(sector %d, count %d) on pdrv [%d]\n", sector, count, pdrv); if (FATFileSystem::_ffs[pdrv]->disk_read((uint8_t*)buff, sector, count)) return RES_PARERR; else return RES_OK; } /*-----------------------------------------------------------------------*/ /* Write Sector(s) */ /*-----------------------------------------------------------------------*/ #if _USE_WRITE DRESULT disk_write ( BYTE pdrv, /* Physical drive nmuber to identify the drive */ const BYTE* buff, /* Data to be written */ DWORD sector, /* Sector address in LBA */ UINT count /* Number of sectors to write */ ) { debug_if(FFS_DBG, "disk_write(sector %d, count %d) on pdrv [%d]\n", sector, count, pdrv); if (FATFileSystem::_ffs[pdrv]->disk_write((uint8_t*)buff, sector, count)) return RES_PARERR; else return RES_OK; } #endif /*-----------------------------------------------------------------------*/ /* Miscellaneous Functions */ /*-----------------------------------------------------------------------*/ #if _USE_IOCTL DRESULT disk_ioctl ( BYTE pdrv, /* Physical drive nmuber (0..) */ BYTE cmd, /* Control code */ void* buff /* Buffer to send/receive control data */ ) { debug_if(FFS_DBG, "disk_ioctl(%d)\n", cmd); switch(cmd) { case CTRL_SYNC: if(FATFileSystem::_ffs[pdrv] == NULL) { return RES_NOTRDY; } else if(FATFileSystem::_ffs[pdrv]->disk_sync()) { return RES_ERROR; } return RES_OK; case GET_SECTOR_COUNT: if(FATFileSystem::_ffs[pdrv] == NULL) { return RES_NOTRDY; } else { DWORD res = FATFileSystem::_ffs[pdrv]->disk_sectors(); if(res > 0) { *((DWORD*)buff) = res; // minimum allowed return RES_OK; } else { return RES_ERROR; } } case GET_BLOCK_SIZE: *((DWORD*)buff) = 1; // default when not known return RES_OK; } return RES_PARERR; } #endif