mirror of
https://github.com/platformio/platformio-core.git
synced 2025-10-04 09:30:55 +02:00
Add "board_f_flash" option to Project Configuration File // Resolve #501
This commit is contained in:
@@ -7,6 +7,10 @@ PlatformIO 2.0
|
|||||||
2.8.4 (2016-02-??)
|
2.8.4 (2016-02-??)
|
||||||
~~~~~~~~~~~~~~~~~~
|
~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
* Added ``board_f_flash`` option to `Project Configuration File platformio.ini <http://docs.platformio.org/en/latest/projectconf.html>`__
|
||||||
|
which allows to specify `custom flash frequency <http://docs.platformio.org/en/latest/platforms/espressif.html#custom-flash-frequency>`_
|
||||||
|
for Espressif development platform
|
||||||
|
(`issue #501 <https://github.com/platformio/platformio/issues/501>`_)
|
||||||
* Fixed issue with ``CPPDEFINES`` which contain space and break PlatformIO
|
* Fixed issue with ``CPPDEFINES`` which contain space and break PlatformIO
|
||||||
IDE Linter
|
IDE Linter
|
||||||
(`IDE issue #34 <https://github.com/platformio/platformio-atom-ide/issues/34>`_)
|
(`IDE issue #34 <https://github.com/platformio/platformio-atom-ide/issues/34>`_)
|
||||||
@@ -46,7 +50,7 @@ PlatformIO 2.0
|
|||||||
* Added SPL-Framework support for Nucleo F401RE board
|
* Added SPL-Framework support for Nucleo F401RE board
|
||||||
(`issue #453 <https://github.com/platformio/platformio/issues/453>`_)
|
(`issue #453 <https://github.com/platformio/platformio/issues/453>`_)
|
||||||
* Added ``upload_resetmethod`` option to `Project Configuration File platformio.ini <http://docs.platformio.org/en/latest/projectconf.html>`__
|
* Added ``upload_resetmethod`` option to `Project Configuration File platformio.ini <http://docs.platformio.org/en/latest/projectconf.html>`__
|
||||||
and allowed to `change default upload reset method <http://docs.platformio.org/en/latest/platforms/espressif.html#custom-reset-method>`_
|
which allows to specify `custom upload reset method <http://docs.platformio.org/en/latest/platforms/espressif.html#custom-reset-method>`_
|
||||||
for Espressif development platform
|
for Espressif development platform
|
||||||
(`issue #444 <https://github.com/platformio/platformio/issues/444>`_)
|
(`issue #444 <https://github.com/platformio/platformio/issues/444>`_)
|
||||||
* Allowed to force output of color ANSI-codes or to disable progress bar even
|
* Allowed to force output of color ANSI-codes or to disable progress bar even
|
||||||
|
@@ -9,19 +9,33 @@
|
|||||||
See the License for the specific language governing permissions and
|
See the License for the specific language governing permissions and
|
||||||
limitations under the License.
|
limitations under the License.
|
||||||
|
|
||||||
Custom CPU Frequency or Upload Speed
|
Custom CPU Frequency
|
||||||
------------------------------------
|
--------------------
|
||||||
|
|
||||||
See :ref:`projectconf_board_f_cpu` and :ref:`projectconf_upload_speed` options
|
See :ref:`projectconf_board_f_cpu` option from :ref:`projectconf`
|
||||||
from :ref:`projectconf`
|
|
||||||
|
|
||||||
.. code-block:: ini
|
.. code-block:: ini
|
||||||
|
|
||||||
[env:myenv]
|
[env:myenv]
|
||||||
# set frequency to 40MHz
|
# set frequency to 160MHz
|
||||||
board_f_cpu = 40000000L
|
board_f_cpu = 160000000L
|
||||||
|
|
||||||
upload_speed = 9600
|
Custom FLASH Frequency
|
||||||
|
----------------------
|
||||||
|
|
||||||
|
See :ref:`projectconf_board_f_flash` option from :ref:`projectconf`. Possible
|
||||||
|
values:
|
||||||
|
|
||||||
|
* 20000000L
|
||||||
|
* 26000000L
|
||||||
|
* 40000000L
|
||||||
|
* 80000000L
|
||||||
|
|
||||||
|
.. code-block:: ini
|
||||||
|
|
||||||
|
[env:myenv]
|
||||||
|
# set frequency to 80MHz
|
||||||
|
board_f_flash = 80000000L
|
||||||
|
|
||||||
Custom Reset Method
|
Custom Reset Method
|
||||||
-------------------
|
-------------------
|
||||||
@@ -30,10 +44,7 @@ See :ref:`projectconf_upload_resetmethod` option from :ref:`projectconf`
|
|||||||
|
|
||||||
.. code-block:: ini
|
.. code-block:: ini
|
||||||
|
|
||||||
[env:esp12e]
|
[env:myenv]
|
||||||
platform = espressif
|
|
||||||
framework = arduino
|
|
||||||
board = esp12e
|
|
||||||
upload_resetmethod = ck
|
upload_resetmethod = ck
|
||||||
|
|
||||||
.. _platform_espressif_customflash:
|
.. _platform_espressif_customflash:
|
||||||
@@ -66,6 +77,16 @@ To override default LD script please use :ref:`projectconf_build_flags` from
|
|||||||
[env:myenv]
|
[env:myenv]
|
||||||
build_flags = -Wl,-Tesp8266.flash.4m.ld
|
build_flags = -Wl,-Tesp8266.flash.4m.ld
|
||||||
|
|
||||||
|
Custom Upload Speed
|
||||||
|
-------------------
|
||||||
|
|
||||||
|
See :ref:`projectconf_upload_speed` option from :ref:`projectconf`
|
||||||
|
|
||||||
|
.. code-block:: ini
|
||||||
|
|
||||||
|
[env:myenv]
|
||||||
|
upload_speed = 9600
|
||||||
|
|
||||||
.. _platform_espressif_uploadfs:
|
.. _platform_espressif_uploadfs:
|
||||||
|
|
||||||
Uploading files to file system SPIFFS
|
Uploading files to file system SPIFFS
|
||||||
|
@@ -208,6 +208,17 @@ The full list of ``board_f_cpu`` for the popular embedded platforms you can
|
|||||||
find in *Boards* section of :ref:`platforms`. See "Frequency" column. You can
|
find in *Boards* section of :ref:`platforms`. See "Frequency" column. You can
|
||||||
overclock a board by specifying a ``board_f_cpu`` value other than the default.
|
overclock a board by specifying a ``board_f_cpu`` value other than the default.
|
||||||
|
|
||||||
|
.. _projectconf_board_f_flash:
|
||||||
|
|
||||||
|
``board_f_flash``
|
||||||
|
^^^^^^^^^^^^^^^^^
|
||||||
|
|
||||||
|
An option ``board_f_flash`` is used to define FLASH chip frequency (Hertz, Clock). A
|
||||||
|
format of this option is ``C-like long integer`` value with ``L`` suffix. The
|
||||||
|
1 Hertz is equal to ``1L``, then 40 Mhz (Mega Hertz) is equal to ``40000000L``.
|
||||||
|
|
||||||
|
This option isn't available for the all development platforms. The only
|
||||||
|
:ref:`platform_espressif` supports it.
|
||||||
|
|
||||||
Building options
|
Building options
|
||||||
~~~~~~~~~~~~~~~~
|
~~~~~~~~~~~~~~~~
|
||||||
|
@@ -14,7 +14,7 @@
|
|||||||
|
|
||||||
import sys
|
import sys
|
||||||
|
|
||||||
VERSION = (2, 8, "4.dev0")
|
VERSION = (2, 8, "4.dev1")
|
||||||
__version__ = ".".join([str(s) for s in VERSION])
|
__version__ = ".".join([str(s) for s in VERSION])
|
||||||
|
|
||||||
__title__ = "platformio"
|
__title__ = "platformio"
|
||||||
|
@@ -4,6 +4,7 @@
|
|||||||
"core": "esp8266",
|
"core": "esp8266",
|
||||||
"extra_flags": "-DESP8266 -DARDUINO_ARCH_ESP8266 -DARDUINO_ESP8266_ESP01",
|
"extra_flags": "-DESP8266 -DARDUINO_ARCH_ESP8266 -DARDUINO_ESP8266_ESP01",
|
||||||
"f_cpu": "80000000L",
|
"f_cpu": "80000000L",
|
||||||
|
"f_flash": "40000000L",
|
||||||
"ldscript": "esp8266.flash.512k64.ld",
|
"ldscript": "esp8266.flash.512k64.ld",
|
||||||
"mcu": "esp8266",
|
"mcu": "esp8266",
|
||||||
"variant": "generic"
|
"variant": "generic"
|
||||||
@@ -27,6 +28,7 @@
|
|||||||
"core": "esp8266",
|
"core": "esp8266",
|
||||||
"extra_flags": "-DESP8266 -DARDUINO_ARCH_ESP8266 -DARDUINO_ESP8266_ESP01",
|
"extra_flags": "-DESP8266 -DARDUINO_ARCH_ESP8266 -DARDUINO_ESP8266_ESP01",
|
||||||
"f_cpu": "80000000L",
|
"f_cpu": "80000000L",
|
||||||
|
"f_flash": "40000000L",
|
||||||
"ldscript": "esp8266.flash.1m256.ld",
|
"ldscript": "esp8266.flash.1m256.ld",
|
||||||
"mcu": "esp8266",
|
"mcu": "esp8266",
|
||||||
"variant": "generic"
|
"variant": "generic"
|
||||||
@@ -50,6 +52,7 @@
|
|||||||
"core": "esp8266",
|
"core": "esp8266",
|
||||||
"extra_flags": "-DESP8266 -DARDUINO_ARCH_ESP8266 -DARDUINO_ESP8266_ESP12",
|
"extra_flags": "-DESP8266 -DARDUINO_ARCH_ESP8266 -DARDUINO_ESP8266_ESP12",
|
||||||
"f_cpu": "80000000L",
|
"f_cpu": "80000000L",
|
||||||
|
"f_flash": "40000000L",
|
||||||
"ldscript": "esp8266.flash.4m1m.ld",
|
"ldscript": "esp8266.flash.4m1m.ld",
|
||||||
"mcu": "esp8266",
|
"mcu": "esp8266",
|
||||||
"variant": "nodemcu"
|
"variant": "nodemcu"
|
||||||
@@ -73,6 +76,7 @@
|
|||||||
"core": "esp8266",
|
"core": "esp8266",
|
||||||
"extra_flags": "-DESP8266 -DARDUINO_ARCH_ESP8266 -DARDUINO_ESP8266_ESP12",
|
"extra_flags": "-DESP8266 -DARDUINO_ARCH_ESP8266 -DARDUINO_ESP8266_ESP12",
|
||||||
"f_cpu": "80000000L",
|
"f_cpu": "80000000L",
|
||||||
|
"f_flash": "40000000L",
|
||||||
"ldscript": "esp8266.flash.4m1m.ld",
|
"ldscript": "esp8266.flash.4m1m.ld",
|
||||||
"mcu": "esp8266",
|
"mcu": "esp8266",
|
||||||
"variant": "nodemcu"
|
"variant": "nodemcu"
|
||||||
@@ -96,6 +100,7 @@
|
|||||||
"core": "esp8266",
|
"core": "esp8266",
|
||||||
"extra_flags": "-DESP8266 -DARDUINO_ARCH_ESP8266 -DARDUINO_ESP8266_ESP12",
|
"extra_flags": "-DESP8266 -DARDUINO_ARCH_ESP8266 -DARDUINO_ESP8266_ESP12",
|
||||||
"f_cpu": "80000000L",
|
"f_cpu": "80000000L",
|
||||||
|
"f_flash": "40000000L",
|
||||||
"ldscript": "esp8266.flash.4m1m.ld",
|
"ldscript": "esp8266.flash.4m1m.ld",
|
||||||
"mcu": "esp8266",
|
"mcu": "esp8266",
|
||||||
"variant": "adafruit"
|
"variant": "adafruit"
|
||||||
@@ -119,6 +124,7 @@
|
|||||||
"core": "esp8266",
|
"core": "esp8266",
|
||||||
"extra_flags": "-DESP8266 -DARDUINO_ARCH_ESP8266 -DARDUINO_MOD_WIFI_ESP8266",
|
"extra_flags": "-DESP8266 -DARDUINO_ARCH_ESP8266 -DARDUINO_MOD_WIFI_ESP8266",
|
||||||
"f_cpu": "80000000L",
|
"f_cpu": "80000000L",
|
||||||
|
"f_flash": "40000000L",
|
||||||
"ldscript": "esp8266.flash.2m.ld",
|
"ldscript": "esp8266.flash.2m.ld",
|
||||||
"mcu": "esp8266",
|
"mcu": "esp8266",
|
||||||
"variant": "generic"
|
"variant": "generic"
|
||||||
@@ -142,6 +148,7 @@
|
|||||||
"core": "esp8266",
|
"core": "esp8266",
|
||||||
"extra_flags": "-DESP8266 -DARDUINO_ARCH_ESP8266 -DARDUINO_ESP8266_THING",
|
"extra_flags": "-DESP8266 -DARDUINO_ARCH_ESP8266 -DARDUINO_ESP8266_THING",
|
||||||
"f_cpu": "80000000L",
|
"f_cpu": "80000000L",
|
||||||
|
"f_flash": "40000000L",
|
||||||
"ldscript": "esp8266.flash.512k64.ld",
|
"ldscript": "esp8266.flash.512k64.ld",
|
||||||
"mcu": "esp8266",
|
"mcu": "esp8266",
|
||||||
"variant": "thing"
|
"variant": "thing"
|
||||||
@@ -165,6 +172,7 @@
|
|||||||
"core": "esp8266",
|
"core": "esp8266",
|
||||||
"extra_flags": "-DESP8266 -DARDUINO_ARCH_ESP8266 -DARDUINO_ESP8266_ESP210",
|
"extra_flags": "-DESP8266 -DARDUINO_ARCH_ESP8266 -DARDUINO_ESP8266_ESP210",
|
||||||
"f_cpu": "80000000L",
|
"f_cpu": "80000000L",
|
||||||
|
"f_flash": "40000000L",
|
||||||
"ldscript": "esp8266.flash.4m1m.ld",
|
"ldscript": "esp8266.flash.4m1m.ld",
|
||||||
"mcu": "esp8266",
|
"mcu": "esp8266",
|
||||||
"variant": "generic"
|
"variant": "generic"
|
||||||
@@ -188,6 +196,7 @@
|
|||||||
"core": "esp8266",
|
"core": "esp8266",
|
||||||
"extra_flags": "-DESP8266 -DARDUINO_ARCH_ESP8266 -DARDUINO_ESP8266_ESP12",
|
"extra_flags": "-DESP8266 -DARDUINO_ARCH_ESP8266 -DARDUINO_ESP8266_ESP12",
|
||||||
"f_cpu": "80000000L",
|
"f_cpu": "80000000L",
|
||||||
|
"f_flash": "40000000L",
|
||||||
"ldscript": "esp8266.flash.4m1m.ld",
|
"ldscript": "esp8266.flash.4m1m.ld",
|
||||||
"mcu": "esp8266",
|
"mcu": "esp8266",
|
||||||
"variant": "d1"
|
"variant": "d1"
|
||||||
@@ -211,6 +220,7 @@
|
|||||||
"core": "esp8266",
|
"core": "esp8266",
|
||||||
"extra_flags": "-DESP8266 -DARDUINO_ARCH_ESP8266 -DARDUINO_ESP8266_ESP12",
|
"extra_flags": "-DESP8266 -DARDUINO_ARCH_ESP8266 -DARDUINO_ESP8266_ESP12",
|
||||||
"f_cpu": "80000000L",
|
"f_cpu": "80000000L",
|
||||||
|
"f_flash": "40000000L",
|
||||||
"ldscript": "esp8266.flash.4m1m.ld",
|
"ldscript": "esp8266.flash.4m1m.ld",
|
||||||
"mcu": "esp8266",
|
"mcu": "esp8266",
|
||||||
"variant": "d1_mini"
|
"variant": "d1_mini"
|
||||||
@@ -234,6 +244,7 @@
|
|||||||
"core": "esp8266",
|
"core": "esp8266",
|
||||||
"extra_flags": "-DESP8266 -DARDUINO_ARCH_ESP8266 -DARDUINO_ESP8266_ESP12",
|
"extra_flags": "-DESP8266 -DARDUINO_ARCH_ESP8266 -DARDUINO_ESP8266_ESP12",
|
||||||
"f_cpu": "80000000L",
|
"f_cpu": "80000000L",
|
||||||
|
"f_flash": "40000000L",
|
||||||
"ldscript": "esp8266.flash.4m1m.ld",
|
"ldscript": "esp8266.flash.4m1m.ld",
|
||||||
"mcu": "esp8266",
|
"mcu": "esp8266",
|
||||||
"variant": "espino"
|
"variant": "espino"
|
||||||
|
@@ -51,6 +51,7 @@ commonvars.AddVariables(
|
|||||||
("BOARD",),
|
("BOARD",),
|
||||||
("BOARD_MCU",),
|
("BOARD_MCU",),
|
||||||
("BOARD_F_CPU",),
|
("BOARD_F_CPU",),
|
||||||
|
("BOARD_F_FLASH",),
|
||||||
|
|
||||||
# upload options
|
# upload options
|
||||||
("UPLOAD_PORT",),
|
("UPLOAD_PORT",),
|
||||||
|
@@ -42,17 +42,17 @@ def _get_flash_size(env):
|
|||||||
else "%dM" % (board_max_size / 1048576))
|
else "%dM" % (board_max_size / 1048576))
|
||||||
|
|
||||||
|
|
||||||
def _get_board_f_cpu(env):
|
def _get_board_f_flash(env):
|
||||||
f_cpu = env.subst("$BOARD_F_CPU")
|
frequency = env.subst("$BOARD_F_FLASH")
|
||||||
f_cpu = str(f_cpu).replace("L", "")
|
frequency = str(frequency).replace("L", "")
|
||||||
return int(int(f_cpu) / 1000000)
|
return int(int(frequency) / 1000000)
|
||||||
|
|
||||||
|
|
||||||
env = DefaultEnvironment()
|
env = DefaultEnvironment()
|
||||||
|
|
||||||
env.Replace(
|
env.Replace(
|
||||||
__get_flash_size=_get_flash_size,
|
__get_flash_size=_get_flash_size,
|
||||||
__get_board_f_cpu=_get_board_f_cpu,
|
__get_board_f_flash=_get_board_f_flash,
|
||||||
|
|
||||||
AR="xtensa-lx106-elf-ar",
|
AR="xtensa-lx106-elf-ar",
|
||||||
AS="xtensa-lx106-elf-as",
|
AS="xtensa-lx106-elf-as",
|
||||||
@@ -150,7 +150,7 @@ env.Append(
|
|||||||
"eboot", "eboot.elf"),
|
"eboot", "eboot.elf"),
|
||||||
"-bo", "$TARGET",
|
"-bo", "$TARGET",
|
||||||
"-bm", "dio",
|
"-bm", "dio",
|
||||||
"-bf", "${__get_board_f_cpu(__env__)}",
|
"-bf", "${__get_board_f_flash(__env__)}",
|
||||||
"-bz", "${__get_flash_size(__env__)}",
|
"-bz", "${__get_flash_size(__env__)}",
|
||||||
"-bs", ".text",
|
"-bs", ".text",
|
||||||
"-bp", "4096",
|
"-bp", "4096",
|
||||||
|
Reference in New Issue
Block a user