![](/media/cache/profiles/5d9c5ea2d5950e8ea2d01cdc092ffe29.jpg.50x50_q85.png)
esptool
esptool.h@0:f6a51823dfa8, 2015-04-06 (annotated)
- Committer:
- TuanPM
- Date:
- Mon Apr 06 06:43:53 2015 +0000
- Revision:
- 0:f6a51823dfa8
ok
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
TuanPM | 0:f6a51823dfa8 | 1 | #ifndef _ESPTOOL_H_ |
TuanPM | 0:f6a51823dfa8 | 2 | #define _ESPTOOL_H_ |
TuanPM | 0:f6a51823dfa8 | 3 | #include "mbed.h" |
TuanPM | 0:f6a51823dfa8 | 4 | #define ESP_FLASH_BEGIN 0x02 |
TuanPM | 0:f6a51823dfa8 | 5 | #define ESP_FLASH_DATA 0x03 |
TuanPM | 0:f6a51823dfa8 | 6 | #define ESP_FLASH_END 0x04 |
TuanPM | 0:f6a51823dfa8 | 7 | #define ESP_MEM_BEGIN 0x05 |
TuanPM | 0:f6a51823dfa8 | 8 | #define ESP_MEM_END 0x06 |
TuanPM | 0:f6a51823dfa8 | 9 | #define ESP_MEM_DATA 0x07 |
TuanPM | 0:f6a51823dfa8 | 10 | #define ESP_SYNC 0x08 |
TuanPM | 0:f6a51823dfa8 | 11 | #define ESP_WRITE_REG 0x09 |
TuanPM | 0:f6a51823dfa8 | 12 | #define ESP_READ_REG 0x0a |
TuanPM | 0:f6a51823dfa8 | 13 | |
TuanPM | 0:f6a51823dfa8 | 14 | //# Maximum block sized for RAM and Flash writes, respectively. |
TuanPM | 0:f6a51823dfa8 | 15 | #define ESP_RAM_BLOCK 0x1800 |
TuanPM | 0:f6a51823dfa8 | 16 | #define ESP_FLASH_BLOCK 0x400 |
TuanPM | 0:f6a51823dfa8 | 17 | |
TuanPM | 0:f6a51823dfa8 | 18 | //# Default baudrate. The ROM auto-bauds, so we can use more or less whatever we want. |
TuanPM | 0:f6a51823dfa8 | 19 | #define ESP_ROM_BAUD 115200 |
TuanPM | 0:f6a51823dfa8 | 20 | |
TuanPM | 0:f6a51823dfa8 | 21 | //# First byte of the application image |
TuanPM | 0:f6a51823dfa8 | 22 | #define ESP_IMAGE_MAGIC 0xe9 |
TuanPM | 0:f6a51823dfa8 | 23 | |
TuanPM | 0:f6a51823dfa8 | 24 | //# Initial state for the checksum routine |
TuanPM | 0:f6a51823dfa8 | 25 | #define ESP_CHECKSUM_MAGIC 0xef |
TuanPM | 0:f6a51823dfa8 | 26 | |
TuanPM | 0:f6a51823dfa8 | 27 | //# OTP ROM addresses |
TuanPM | 0:f6a51823dfa8 | 28 | #define ESP_OTP_MAC0 0x3ff00050 |
TuanPM | 0:f6a51823dfa8 | 29 | #define ESP_OTP_MAC1 0x3ff00054 |
TuanPM | 0:f6a51823dfa8 | 30 | |
TuanPM | 0:f6a51823dfa8 | 31 | //# Sflash stub: an assembly routine to read from spi flash and send to host |
TuanPM | 0:f6a51823dfa8 | 32 | #define SFLASH_STUB "\x80\x3c\x00\x40\x1c\x4b\x00\x40\x21\x11\x00\x40\x00\x80" \ |
TuanPM | 0:f6a51823dfa8 | 33 | "\xfe\x3f\xc1\xfb\xff\xd1\xf8\xff\x2d\x0d\x31\xfd\xff\x41\xf7\xff\x4a" \ |
TuanPM | 0:f6a51823dfa8 | 34 | "\xdd\x51\xf9\xff\xc0\x05\x00\x21\xf9\xff\x31\xf3\xff\x41\xf5\xff\xc0" \ |
TuanPM | 0:f6a51823dfa8 | 35 | "\x04\x00\x0b\xcc\x56\xec\xfd\x06\xff\xff\x00\x00" |
TuanPM | 0:f6a51823dfa8 | 36 | class ESPTOOL { |
TuanPM | 0:f6a51823dfa8 | 37 | |
TuanPM | 0:f6a51823dfa8 | 38 | public: |
TuanPM | 0:f6a51823dfa8 | 39 | ESPTOOL(Serial& serial, PinName pinEnable, PinName pinProgram) |
TuanPM | 0:f6a51823dfa8 | 40 | private: |
TuanPM | 0:f6a51823dfa8 | 41 | Serial& _serial; |
TuanPM | 0:f6a51823dfa8 | 42 | DigitalOut _pinEn, _pinPro; |
TuanPM | 0:f6a51823dfa8 | 43 | uint8_t read(); |
TuanPM | 0:f6a51823dfa8 | 44 | void read(uint8_t *data, uint32_t len); |
TuanPM | 0:f6a51823dfa8 | 45 | void write(uint8_t *data, uint32_t len); |
TuanPM | 0:f6a51823dfa8 | 46 | } |
TuanPM | 0:f6a51823dfa8 | 47 | #endif |