Skip to content

Commit 11d1c01

Browse files
Laurence BankLaurence Bank
Laurence Bank
authored and
Laurence Bank
committed
Added gif_from_spi_flash example sketch
1 parent 96fcd4c commit 11d1c01

File tree

7 files changed

+7878
-1
lines changed

7 files changed

+7878
-1
lines changed
911 KB
Loading

examples/gif_from_spi_flash/diskio.h

+77
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,77 @@
1+
/*-----------------------------------------------------------------------/
2+
/ Low level disk interface modlue include file (C)ChaN, 2014 /
3+
/-----------------------------------------------------------------------*/
4+
5+
#ifndef _DISKIO_DEFINED
6+
#define _DISKIO_DEFINED
7+
8+
#ifdef __cplusplus
9+
extern "C" {
10+
#endif
11+
12+
/* Status of Disk Functions */
13+
typedef BYTE DSTATUS;
14+
15+
/* Results of Disk Functions */
16+
typedef enum {
17+
RES_OK = 0, /* 0: Successful */
18+
RES_ERROR, /* 1: R/W Error */
19+
RES_WRPRT, /* 2: Write Protected */
20+
RES_NOTRDY, /* 3: Not Ready */
21+
RES_PARERR /* 4: Invalid Parameter */
22+
} DRESULT;
23+
24+
25+
/*---------------------------------------*/
26+
/* Prototypes for disk control functions */
27+
28+
29+
DSTATUS disk_initialize (BYTE pdrv);
30+
DSTATUS disk_status (BYTE pdrv);
31+
DRESULT disk_read (BYTE pdrv, BYTE* buff, DWORD sector, UINT count);
32+
DRESULT disk_write (BYTE pdrv, const BYTE* buff, DWORD sector, UINT count);
33+
DRESULT disk_ioctl (BYTE pdrv, BYTE cmd, void* buff);
34+
35+
36+
/* Disk Status Bits (DSTATUS) */
37+
38+
#define STA_NOINIT 0x01 /* Drive not initialized */
39+
#define STA_NODISK 0x02 /* No medium in the drive */
40+
#define STA_PROTECT 0x04 /* Write protected */
41+
42+
43+
/* Command code for disk_ioctrl fucntion */
44+
45+
/* Generic command (Used by FatFs) */
46+
#define CTRL_SYNC 0 /* Complete pending write process (needed at FF_FS_READONLY == 0) */
47+
#define GET_SECTOR_COUNT 1 /* Get media size (needed at FF_USE_MKFS == 1) */
48+
#define GET_SECTOR_SIZE 2 /* Get sector size (needed at FF_MAX_SS != FF_MIN_SS) */
49+
#define GET_BLOCK_SIZE 3 /* Get erase block size (needed at FF_USE_MKFS == 1) */
50+
#define CTRL_TRIM 4 /* Inform device that the data on the block of sectors is no longer used (needed at FF_USE_TRIM == 1) */
51+
52+
/* Generic command (Not used by FatFs) */
53+
#define CTRL_POWER 5 /* Get/Set power status */
54+
#define CTRL_LOCK 6 /* Lock/Unlock media removal */
55+
#define CTRL_EJECT 7 /* Eject media */
56+
#define CTRL_FORMAT 8 /* Create physical format on the media */
57+
58+
/* MMC/SDC specific ioctl command */
59+
#define MMC_GET_TYPE 10 /* Get card type */
60+
#define MMC_GET_CSD 11 /* Get CSD */
61+
#define MMC_GET_CID 12 /* Get CID */
62+
#define MMC_GET_OCR 13 /* Get OCR */
63+
#define MMC_GET_SDSTAT 14 /* Get SD status */
64+
#define ISDIO_READ 55 /* Read data form SD iSDIO register */
65+
#define ISDIO_WRITE 56 /* Write data to SD iSDIO register */
66+
#define ISDIO_MRITE 57 /* Masked write data to SD iSDIO register */
67+
68+
/* ATA/CF specific ioctl command */
69+
#define ATA_GET_REV 20 /* Get F/W revision */
70+
#define ATA_GET_MODEL 21 /* Get model name */
71+
#define ATA_GET_SN 22 /* Get serial number */
72+
73+
#ifdef __cplusplus
74+
}
75+
#endif
76+
77+
#endif

examples/gif_from_spi_flash/ff.c

+6,554
Large diffs are not rendered by default.

0 commit comments

Comments
 (0)