FrontPage

Esp8266-Arduino-Makefile

ツールのインストール先

  • C:\Users\nari\AppData\Local\Arduino15\packages\esp8266
  • リンカースクリプトの在処
    • Tc:/Users/nari/AppData/Local/Arduino15/packages/esp8266/hardware/esp8266/2.3.0/tools/sdk/ld/{eagle.flash.4m.ld, eagle.app.v6.common.ld}

PROGMEM

  • 起点: /c/Users/nari/AppData/Local/Arduino15/packages/esp8266
  • ./hardware/esp8266/2.3.0/cores/esp8266/pgmspace.h:
    #define PROGMEM     ICACHE_RODATA_ATTR
  • ./hardware/esp8266/2.3.0/tools/sdk/include/c_types.h:
    #define ICACHE_RODATA_ATTR  __attribute__((section(".irom.text")))
  • ./hardware/esp8266/2.3.0/cores/esp8266/WString.h:
    #define FPSTR(pstr_pointer) (reinterpret_cast<const __FlashStringHelper *>(pstr_pointer))
  • ./hardware/esp8266/2.3.0/cores/esp8266/WString.h:
    // an abstract class used as a means to proide a unique pointer type
    // but really has no body
    class __FlashStringHelper;
  • ./hardware/esp8266/2.3.0/cores/esp8266/pgmspace.h
    // flash memory must be read using 32 bit aligned addresses else a processor
    // exception will be triggered
    // order within the 32 bit values are
    // --------------
    // b3, b2, b1, b0
    //     w1,     w0
    • pgm_read_byte, pgm_read_wordを使おう

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2017-11-07 (火) 16:58:54 (2363d)