Test program for FlashAir with iSDIO

Dependencies:   FlashAir_iSDIO SDFileSystem

Committer:
kenjiArai
Date:
Wed Aug 28 22:48:37 2019 +0000
Revision:
3:fc1908567f3b
Test program for FlashAir/TOSHIBA with iSDIO

Who changed what in which revision?

UserRevisionLine numberNew contents of line
kenjiArai 3:fc1908567f3b 1 /*
kenjiArai 3:fc1908567f3b 2 * mbed Application program for the mbed
kenjiArai 3:fc1908567f3b 3 * FlashAir Check program /monitor part
kenjiArai 3:fc1908567f3b 4 *
kenjiArai 3:fc1908567f3b 5 * Copyright (c) 2015,'19 Kenji Arai / JH1PJL
kenjiArai 3:fc1908567f3b 6 * http://www.page.sannet.ne.jp/kenjia/index.html
kenjiArai 3:fc1908567f3b 7 * https://os.mbed.com/users/kenjiArai/
kenjiArai 3:fc1908567f3b 8 * Created: May 5th, 2015
kenjiArai 3:fc1908567f3b 9 * Revised: August 27th, 2019
kenjiArai 3:fc1908567f3b 10 */
kenjiArai 3:fc1908567f3b 11
kenjiArai 3:fc1908567f3b 12 /*
kenjiArai 3:fc1908567f3b 13 *---------------- REFERENCE ---------------------------------------------------
kenjiArai 3:fc1908567f3b 14 * Original Source Information
kenjiArai 3:fc1908567f3b 15 * 1) FatFs sample program
kenjiArai 3:fc1908567f3b 16 * ChaN FatFs http://elm-chan.org/
kenjiArai 3:fc1908567f3b 17 * http://elm-chan.org/fsw/ff/00index_j.html
kenjiArai 3:fc1908567f3b 18 * 2) FlashAir Arduino sample program
kenjiArai 3:fc1908567f3b 19 * FlashAir Developers site
kenjiArai 3:fc1908567f3b 20 * https://flashair-developers.com/ja/documents/tutorials/arduino/
kenjiArai 3:fc1908567f3b 21 * 3) "mbed+FlashAirで直ツイート!"
kenjiArai 3:fc1908567f3b 22 * by ban4jp - ( https://developer.mbed.org/users/ban4jp/ )
kenjiArai 3:fc1908567f3b 23 * https://developer.mbed.org/users/ban4jp/notebook
kenjiArai 3:fc1908567f3b 24 * /ja-direct-tweet-for-flashair/
kenjiArai 3:fc1908567f3b 25 * https://developer.mbed.org/users/ban4jp/code/FlashAir_Twitter/
kenjiArai 3:fc1908567f3b 26 */
kenjiArai 3:fc1908567f3b 27
kenjiArai 3:fc1908567f3b 28 // Definition -----------------------------------------------------------------
kenjiArai 3:fc1908567f3b 29 #define DW_CHAR sizeof(char)
kenjiArai 3:fc1908567f3b 30 #define DW_SHORT sizeof(short)
kenjiArai 3:fc1908567f3b 31 #define DW_LONG sizeof(long)
kenjiArai 3:fc1908567f3b 32
kenjiArai 3:fc1908567f3b 33 /* These types must be 16-bit, 32-bit or larger integer */
kenjiArai 3:fc1908567f3b 34 typedef int INT;
kenjiArai 3:fc1908567f3b 35 typedef unsigned int UINT;
kenjiArai 3:fc1908567f3b 36
kenjiArai 3:fc1908567f3b 37 /* These types must be 8-bit integer */
kenjiArai 3:fc1908567f3b 38 typedef char CHAR;
kenjiArai 3:fc1908567f3b 39 typedef unsigned char UCHAR;
kenjiArai 3:fc1908567f3b 40 typedef unsigned char BYTE;
kenjiArai 3:fc1908567f3b 41
kenjiArai 3:fc1908567f3b 42 /* These types must be 16-bit integer */
kenjiArai 3:fc1908567f3b 43 typedef short SHORT;
kenjiArai 3:fc1908567f3b 44 typedef unsigned short USHORT;
kenjiArai 3:fc1908567f3b 45 typedef unsigned short WORD;
kenjiArai 3:fc1908567f3b 46 typedef unsigned short WCHAR;
kenjiArai 3:fc1908567f3b 47
kenjiArai 3:fc1908567f3b 48 /* These types must be 32-bit integer */
kenjiArai 3:fc1908567f3b 49 typedef long LONG;
kenjiArai 3:fc1908567f3b 50 typedef unsigned long ULONG;
kenjiArai 3:fc1908567f3b 51 typedef unsigned long DWORD;
kenjiArai 3:fc1908567f3b 52 typedef unsigned long long DDWORD;
kenjiArai 3:fc1908567f3b 53
kenjiArai 3:fc1908567f3b 54 // Function prototypes --------------------------------------------------------
kenjiArai 3:fc1908567f3b 55 static void v_next(char *ptr);
kenjiArai 3:fc1908567f3b 56 static void d_next(char *ptr);
kenjiArai 3:fc1908567f3b 57 static void c_next(char *ptr);
kenjiArai 3:fc1908567f3b 58 static void m_next(char *ptr);
kenjiArai 3:fc1908567f3b 59 static void r_next(char *ptr);
kenjiArai 3:fc1908567f3b 60 static void t_next(char *ptr);
kenjiArai 3:fc1908567f3b 61 static void isdio_mon(char *ptr);
kenjiArai 3:fc1908567f3b 62 static void ap_mon(char *ptr);
kenjiArai 3:fc1908567f3b 63 static void sta_mon(char *ptr);
kenjiArai 3:fc1908567f3b 64
kenjiArai 3:fc1908567f3b 65 static void crlf(void);
kenjiArai 3:fc1908567f3b 66 static FRESULT scan_files(char* path);
kenjiArai 3:fc1908567f3b 67 static void put_rc(FRESULT rc);
kenjiArai 3:fc1908567f3b 68 static void file_inf(char *ptr);
kenjiArai 3:fc1908567f3b 69 static void get_line(char *buff, int len);
kenjiArai 3:fc1908567f3b 70 static void put_dump(void* buff, unsigned long addr, int len, int width);
kenjiArai 3:fc1908567f3b 71 static void chk_and_set_time(char *ptr);
kenjiArai 3:fc1908567f3b 72 static int xatoi(char **str, long *res);
kenjiArai 3:fc1908567f3b 73
kenjiArai 3:fc1908567f3b 74 // iSDIO
kenjiArai 3:fc1908567f3b 75 static void isdio_help_massage(void);
kenjiArai 3:fc1908567f3b 76 void printByte(uint8_t value);
kenjiArai 3:fc1908567f3b 77 void printBytes(uint8_t* p, uint32_t len);
kenjiArai 3:fc1908567f3b 78 void printIPAddress(uint8_t* p);
kenjiArai 3:fc1908567f3b 79 void printHex(uint8_t* p, uint32_t len);
kenjiArai 3:fc1908567f3b 80 uint8_t iSDIO_establish(uint32_t sequenceId);
kenjiArai 3:fc1908567f3b 81 uint8_t iSDIO_connect(uint32_t sequenceId,
kenjiArai 3:fc1908567f3b 82 const char* ssid, const char* networkKey);
kenjiArai 3:fc1908567f3b 83 uint8_t iSDIO_disconnect(uint32_t sequenceId);
kenjiArai 3:fc1908567f3b 84 uint8_t iSDIO_waitResponse(uint32_t sequenceId);
kenjiArai 3:fc1908567f3b 85 uint8_t iSDIO_scan(uint32_t sequenceId);
kenjiArai 3:fc1908567f3b 86 uint8_t iSDIO_showScanResult(void);
kenjiArai 3:fc1908567f3b 87 uint8_t iSDIO_status(void);