探検
MicroPythonのスレ Part 01
1774ワット発電中さん
2020/02/09(日) 02:38:33.79ID:8pfKKO4u 無かったので立ててみました
2020/02/09(日) 03:23:18.95ID:8pfKKO4u
ESP32-DevKitC-VBなら8MBのPSRAMが使えてPSRAM対応のMicroPythonを使うことで
4MのPSRAMをMicroPython上でヒープとして扱えます
ESP32-DevKitC-VB
https://www.mouser.jp/ProductDetail/Espressif-Systems/ESP32-DevKitC-VB?qs=sGAEpiMZZMu3sxpa5v1qrgLFJPTQ7Q2r3NVYy33eqEo%3D
MicroPythonの派生版のloboris(PSRAM対応版もある)
https://github.com/loboris
4MのPSRAMをMicroPython上でヒープとして扱えます
ESP32-DevKitC-VB
https://www.mouser.jp/ProductDetail/Espressif-Systems/ESP32-DevKitC-VB?qs=sGAEpiMZZMu3sxpa5v1qrgLFJPTQ7Q2r3NVYy33eqEo%3D
MicroPythonの派生版のloboris(PSRAM対応版もある)
https://github.com/loboris
2020/02/09(日) 03:25:14.83ID:8pfKKO4u
MaixduinoやMaixbit、M5StickVならRAMが6MBもあるので
これも大容量のヒープが扱えます
また、MaixPy、M5StickV専用のMicroPythonの派生版のMaixPyが使えます
MaixduinoならMaixPyからWiFiが使えます
Maxiduino、MaixBit、M5StickVはQVGAのカラー液晶LCDやカメラが標準装備なので
MaixPyから簡単にLCDやカメラが扱えます
これも大容量のヒープが扱えます
また、MaixPy、M5StickV専用のMicroPythonの派生版のMaixPyが使えます
MaixduinoならMaixPyからWiFiが使えます
Maxiduino、MaixBit、M5StickVはQVGAのカラー液晶LCDやカメラが標準装備なので
MaixPyから簡単にLCDやカメラが扱えます
2020/02/09(日) 04:54:21.52ID:8pfKKO4u
プログラム板に立てなかったのは電子工作も含めた内容にしたいからです
MicroPythonの派生版もここでOKです
MicroPythonの派生版もここでOKです
2020/02/09(日) 06:26:58.09ID:jyZ9gt/2
--~~~-~-~~~--~---~~~-~---~---~-~~-~~-~~----~-~~~--~~--~-~-~~~-~-~~~~-~---~--
--~~~--~~~~~~~---~~~-~--~~---~~-~-~--~-~-~--~~-~~~-~~-~~~---~--~~-----~-~---
~-~--~~~-~~---~~~--~----~-~-~~-~--~~-~~----~---~~~~---~--~-~-~~-~-~---~~~~~~
-~-~~~~--~-~-~~-~-~~---~~~~-~--~-~~~-~-~---~----~~~--~~---~-~--~~-~~--~--~-~
--~-~~~-~-~---~-~--~~----~~~~-~-~~--~~~--~~~-~-~--~~~~~----~~~-~~--~----~-~-
~----~~-~~~~--~~--~~-~---~-~~~~~~-~---~~-~~-~-~~-------~-~~-~~~~~~-~----~---
~~---~-~~~~---~--~-~~~~~--~-~~~-~-~-~-~~~~~~---~-~-~~-~------~-~--~--~-~~---
~-----~--~~~~--~-~~~-~-~~--~-~~--------~~-~-~~~~~------~~-~-~~-~-~-~~~-~-~~~
-~~--~-~~--~~~-~-~~~-~~-~-~~--~---~-~~~~~--~--~---~~~-----~-~--~~~-~~--~-~--
~~--~-~--~-~~-~--~~--~---~~~---~---~-------~~~~~--~--~-~-~~~--~~~--~~~~~~-~~
-~-~~~---~--~-~~~-~~-~~~---~~~--~~~-~~-~--~~~~--~-~--~~-~---~~~~-~----~-----
~--~~-~~-~~-~~~--~~~--~-~----~---~--~~~--~-~--~~---~~~-~~-~~-~~-~----~-~~-~-
--~---~~--~---~--~~--~--~---~-~~~-~~~~~~----~~~~---~---~~~~~~--~~~~-----~~~~
----~~-~--~--~~-~~~~--~~~~----~~---~~---~-~-~~~-~-~--------~~~~--~~~~--~~~~~
-----~----~~-~~~~-~--~-~~-~---~~~~~~~--~-~~~~--~-~--~~~-~-~~~-~-~-~-~-~-----
~~--~-------~~~~~-~~-~~~---~~~--~~-~~~~------~~---~~-~~---~-~-~--~~-~-~~--~~
~~~~----~--~~~~-~-~~~-~~----~-~~-~~~~-~-----~--~~-~--~~----~~------~~--~~~~~
--~-----~~~~----~~-~~~~-~~-~-~~~~~-~~~--~~~-~-~-~-~-----~-----~-~--~~~-~-~-~
-------~----~~~---~~~----~~~-~~~-~--~~--~~--~---~---~~~-~~~~--~-~-~~~~-~~~~~
-----~--~-~--~--~-~~~~-~~~-~--~~~~--~-~--~--~-~-~~~~--~-~~~~-~-~-~~---~~-~--
-~-~~~~--~~~--~~--~-~~---~~~~--~-~-~~~--~--~~-~-~~~-~---~~~---~~~~---~------
-~~--~----~~-~~~-~--~~~--~-~~~~--~~----~---~~~~~---~~-~~-~--~---~-~---~~~-~~
--~--~~---~~----~~~-~~~~~~~--~~-~~-~---~~~---~~-----~-~-~~--~--~~~~-~--~--~~
-~~--~~~~-----~----~-~-~--~~~-~~-~~-~~~----~~~-~~--~~--~~----~~~---~~---~~~~
~-~-~-~----~~~~---~--~----~----~--~~~~-~-~-~---~~--~~-~-~~~-~~~~----~~~~-~~~
-~~~-----~-~~---~~-~~-------~~-~~-~-~--~-~~-~-~~~-------~-~~~~~~~~--~~--~~~~
---~~-~~-~-~~-----~----~~~~~~~~-~~~--~-~--~---~--~-~---~~-~~~--~~~~~--~---~~
-~~-~--~~~--~~----~~~~--~--~~~-~~~~-~~-~~~--~---~~----~~---~~-~-~-~~~~------
~--~--~~---~-~~---~-~--~~~-~~----~--~---~~~~---~-~~~~~~~-~~~-~~--~~~~-----~-
--~~--~~~~~~~~~~---~-~~~~~~-----~~~-~------~-~----~--~~-~~~~-------~-~~-~~~-
-~~-----~--~-~~-~-~---~~---~~~-~-~----~~-~~----~~~~~---~-~~-~--~--~~~~-~~~~~
-~---~~~~~~--~~-~~~~~~-~--~--~~-~~~-~~------~----~-~~--~-~-~--~~~-~~-~-~----
~--~~~---~~~~-~-----~-~~~~---~~~~-~~-~-~----~~-~---~~-~----~-----~-~~~~~~-~~
-~-~-~-------~-~---~~~-~--~~---~~-~~~--~-~--~~~~--~~-~-~~~-~-~---~--~~-~~~~~
----~-~----~--~~--~-~-~~~~~----~-~~~-~~~----~-~~-~-~-~~---~~-~~~~~~---~~--~~
--~~-~~------~--~---~~----~~--~~~---~~--~~~-~--~~--~~-~~-~~~~~~~--~~---~~-~~
~--~~-~~-~-~-~~~--~~~-~-~-~~~~~~~---~-~~-~~-------------~~~--~-~-~--~--~~-~~
~~~~-~----~~~~--~-~~--~~-~-~--~~-----~--~-~~~-~~~~-~-~~~--------~~~~~--~~---
~~--~--~~~~------~--~----~-~-~-~~----~~~~--~~~-~~-~~~~----~~-~--~~--~~~~--~~
~---~~~-~~~-----~-~-~-~--~~--~-~~-~~~--~-~-------~-~~-~~--~~-~--~-~~~~-~~~-~
~--~--~~------~-~~~-~~~-~--~~----~-~-~~-~------~~~--~~~-~~---~~-~-~~-~~-~~~~
~~~~~-~~-~~-----~~-~-~~---~--~~-~~~--~-~---~-~-----~-~-~~~-~--~~-~--~-~--~~~
--~~~-~--~-~~~---~~~~---~---~~--~~---~--~-~---~-~--~--~-~-~~-~~~-~~~~~--~-~~
~-~~-~~~~~--~-~--~~~~---~-~--~---~~~-~~~--~-~--~-~~-----~-~--~--~--~~~--~-~~
--~~-~-~-~~~~~-~-~~~-~---~-~----~-~~-~~-~--~-~~----~---~-~--~-~~~-~~--~-~-~~
~-~~~---~~~-~~~---~--~~~~~~-~~---~--~-~----~~~-~--~-~----~---~~~~~~~~----~--
-~----~--~~~--~---~~--~~-~~---~-~~---~--~-~~--~-~-~~~--~--~~~~~~--~~-~~--~~~
-~-~~-~~-~~~~-~-~-~--~~~~~~----~~-~~-~---~~~-~~~~--~~-~~--~-----~-~---~-----
~~---~--~-----~~~~~~~-~~-~-~~-~~-~~~~~~--~-~--~-~---~---~-----~~~-~----~-~~~
----~~~~~~-~~---~-~~~~~~~~--~~~---~-~~----~~~~----~~--~--~-~--~~~~-~-~------
--~~~--~~~~~~~---~~~-~--~~---~~-~-~--~-~-~--~~-~~~-~~-~~~---~--~~-----~-~---
~-~--~~~-~~---~~~--~----~-~-~~-~--~~-~~----~---~~~~---~--~-~-~~-~-~---~~~~~~
-~-~~~~--~-~-~~-~-~~---~~~~-~--~-~~~-~-~---~----~~~--~~---~-~--~~-~~--~--~-~
--~-~~~-~-~---~-~--~~----~~~~-~-~~--~~~--~~~-~-~--~~~~~----~~~-~~--~----~-~-
~----~~-~~~~--~~--~~-~---~-~~~~~~-~---~~-~~-~-~~-------~-~~-~~~~~~-~----~---
~~---~-~~~~---~--~-~~~~~--~-~~~-~-~-~-~~~~~~---~-~-~~-~------~-~--~--~-~~---
~-----~--~~~~--~-~~~-~-~~--~-~~--------~~-~-~~~~~------~~-~-~~-~-~-~~~-~-~~~
-~~--~-~~--~~~-~-~~~-~~-~-~~--~---~-~~~~~--~--~---~~~-----~-~--~~~-~~--~-~--
~~--~-~--~-~~-~--~~--~---~~~---~---~-------~~~~~--~--~-~-~~~--~~~--~~~~~~-~~
-~-~~~---~--~-~~~-~~-~~~---~~~--~~~-~~-~--~~~~--~-~--~~-~---~~~~-~----~-----
~--~~-~~-~~-~~~--~~~--~-~----~---~--~~~--~-~--~~---~~~-~~-~~-~~-~----~-~~-~-
--~---~~--~---~--~~--~--~---~-~~~-~~~~~~----~~~~---~---~~~~~~--~~~~-----~~~~
----~~-~--~--~~-~~~~--~~~~----~~---~~---~-~-~~~-~-~--------~~~~--~~~~--~~~~~
-----~----~~-~~~~-~--~-~~-~---~~~~~~~--~-~~~~--~-~--~~~-~-~~~-~-~-~-~-~-----
~~--~-------~~~~~-~~-~~~---~~~--~~-~~~~------~~---~~-~~---~-~-~--~~-~-~~--~~
~~~~----~--~~~~-~-~~~-~~----~-~~-~~~~-~-----~--~~-~--~~----~~------~~--~~~~~
--~-----~~~~----~~-~~~~-~~-~-~~~~~-~~~--~~~-~-~-~-~-----~-----~-~--~~~-~-~-~
-------~----~~~---~~~----~~~-~~~-~--~~--~~--~---~---~~~-~~~~--~-~-~~~~-~~~~~
-----~--~-~--~--~-~~~~-~~~-~--~~~~--~-~--~--~-~-~~~~--~-~~~~-~-~-~~---~~-~--
-~-~~~~--~~~--~~--~-~~---~~~~--~-~-~~~--~--~~-~-~~~-~---~~~---~~~~---~------
-~~--~----~~-~~~-~--~~~--~-~~~~--~~----~---~~~~~---~~-~~-~--~---~-~---~~~-~~
--~--~~---~~----~~~-~~~~~~~--~~-~~-~---~~~---~~-----~-~-~~--~--~~~~-~--~--~~
-~~--~~~~-----~----~-~-~--~~~-~~-~~-~~~----~~~-~~--~~--~~----~~~---~~---~~~~
~-~-~-~----~~~~---~--~----~----~--~~~~-~-~-~---~~--~~-~-~~~-~~~~----~~~~-~~~
-~~~-----~-~~---~~-~~-------~~-~~-~-~--~-~~-~-~~~-------~-~~~~~~~~--~~--~~~~
---~~-~~-~-~~-----~----~~~~~~~~-~~~--~-~--~---~--~-~---~~-~~~--~~~~~--~---~~
-~~-~--~~~--~~----~~~~--~--~~~-~~~~-~~-~~~--~---~~----~~---~~-~-~-~~~~------
~--~--~~---~-~~---~-~--~~~-~~----~--~---~~~~---~-~~~~~~~-~~~-~~--~~~~-----~-
--~~--~~~~~~~~~~---~-~~~~~~-----~~~-~------~-~----~--~~-~~~~-------~-~~-~~~-
-~~-----~--~-~~-~-~---~~---~~~-~-~----~~-~~----~~~~~---~-~~-~--~--~~~~-~~~~~
-~---~~~~~~--~~-~~~~~~-~--~--~~-~~~-~~------~----~-~~--~-~-~--~~~-~~-~-~----
~--~~~---~~~~-~-----~-~~~~---~~~~-~~-~-~----~~-~---~~-~----~-----~-~~~~~~-~~
-~-~-~-------~-~---~~~-~--~~---~~-~~~--~-~--~~~~--~~-~-~~~-~-~---~--~~-~~~~~
----~-~----~--~~--~-~-~~~~~----~-~~~-~~~----~-~~-~-~-~~---~~-~~~~~~---~~--~~
--~~-~~------~--~---~~----~~--~~~---~~--~~~-~--~~--~~-~~-~~~~~~~--~~---~~-~~
~--~~-~~-~-~-~~~--~~~-~-~-~~~~~~~---~-~~-~~-------------~~~--~-~-~--~--~~-~~
~~~~-~----~~~~--~-~~--~~-~-~--~~-----~--~-~~~-~~~~-~-~~~--------~~~~~--~~---
~~--~--~~~~------~--~----~-~-~-~~----~~~~--~~~-~~-~~~~----~~-~--~~--~~~~--~~
~---~~~-~~~-----~-~-~-~--~~--~-~~-~~~--~-~-------~-~~-~~--~~-~--~-~~~~-~~~-~
~--~--~~------~-~~~-~~~-~--~~----~-~-~~-~------~~~--~~~-~~---~~-~-~~-~~-~~~~
~~~~~-~~-~~-----~~-~-~~---~--~~-~~~--~-~---~-~-----~-~-~~~-~--~~-~--~-~--~~~
--~~~-~--~-~~~---~~~~---~---~~--~~---~--~-~---~-~--~--~-~-~~-~~~-~~~~~--~-~~
~-~~-~~~~~--~-~--~~~~---~-~--~---~~~-~~~--~-~--~-~~-----~-~--~--~--~~~--~-~~
--~~-~-~-~~~~~-~-~~~-~---~-~----~-~~-~~-~--~-~~----~---~-~--~-~~~-~~--~-~-~~
~-~~~---~~~-~~~---~--~~~~~~-~~---~--~-~----~~~-~--~-~----~---~~~~~~~~----~--
-~----~--~~~--~---~~--~~-~~---~-~~---~--~-~~--~-~-~~~--~--~~~~~~--~~-~~--~~~
-~-~~-~~-~~~~-~-~-~--~~~~~~----~~-~~-~---~~~-~~~~--~~-~~--~-----~-~---~-----
~~---~--~-----~~~~~~~-~~-~-~~-~~-~~~~~~--~-~--~-~---~---~-----~~~-~----~-~~~
----~~~~~~-~~---~-~~~~~~~~--~~~---~-~~----~~~~----~~--~--~-~--~~~~-~-~------
6774ワット発電中さん
2020/02/10(月) 17:42:01.09ID:jxcuslv4 オリジナルたるSTM32を忘れたらあかんて
2020/02/10(月) 21:07:42.68ID:VGb+uG12
本家のDownloadのURL
http://micropython.org/download
http://micropython.org/download
2020/02/10(月) 21:34:41.47ID:VGb+uG12
素数を求めるプログラムです
ベンチマークとして使えます
https://pastebin.com/AxxVNxTB
MaixduinoでMaixPyのfirmwareをmaixpy_v0.5.0_12_g284ce83.binにして
import(Maix)
Maix.utils.gc_heap_size(3000000)
を実行して3Mのヒープを確保して実行したところ
260000桁まで計算できました
実行時間は3.3400秒でした
Maix.utils.gc_heap_size(3000000)はあまり大きな値を指定すると起動できなくなります
Maix.utils.gc_heap_size(4000000)では起動できなくなりました
復旧方法はここを参照してください
http://rio2016.5ch.net/test/read.cgi/denki/1573512764/67
ベンチマークとして使えます
https://pastebin.com/AxxVNxTB
MaixduinoでMaixPyのfirmwareをmaixpy_v0.5.0_12_g284ce83.binにして
import(Maix)
Maix.utils.gc_heap_size(3000000)
を実行して3Mのヒープを確保して実行したところ
260000桁まで計算できました
実行時間は3.3400秒でした
Maix.utils.gc_heap_size(3000000)はあまり大きな値を指定すると起動できなくなります
Maix.utils.gc_heap_size(4000000)では起動できなくなりました
復旧方法はここを参照してください
http://rio2016.5ch.net/test/read.cgi/denki/1573512764/67
2020/02/10(月) 21:37:32.25ID:VGb+uG12
http://rio2016.5ch.net/test/read.cgi/denki/1573512764/67
ここを参照して、先にmaixpy_spiffs.imgを作成してから試した方が無難です
ここを参照して、先にmaixpy_spiffs.imgを作成してから試した方が無難です
2020/02/10(月) 21:44:09.25ID:VGb+uG12
ESP32-WROVER-Bモジュールで
本家MicroPythonのesp32spiram-idf3-20191220-v1.12.binで試したところ
52万3000桁まで計算できました
実行時間は44.5420秒です
26万桁で試したところ
実行時間は22.5000秒でした
本家MicroPythonのesp32spiram-idf3-20191220-v1.12.binで試したところ
52万3000桁まで計算できました
実行時間は44.5420秒です
26万桁で試したところ
実行時間は22.5000秒でした
2020/02/10(月) 21:57:05.76ID:VGb+uG12
ESP32-WROVER-Bモジュールで
本家MicroPythonのPSRAM版ではない通常版のesp32-idf3-20191220-v1.12.binで試したところ
1万6300桁まで計算できました
実行時間は0.7970秒です
本家MicroPythonのPSRAM版ではない通常版のesp32-idf3-20191220-v1.12.binで試したところ
1万6300桁まで計算できました
実行時間は0.7970秒です
2020/02/10(月) 22:05:34.57ID:VGb+uG12
Maixシリーズでヒープサイズ設定後、その設定が有効になるのはハードリセット後です
ソフトリセットでは有効にならないので要注意です
ソフトリセットでは有効にならないので要注意です
2020/02/11(火) 10:34:25.14ID:O7mzxHHL
ttps://cheeseshop.hatenadiary.org/entry/20080314/1236237562
ここのページの1番目のPIの計算プログラムを少しだけ改変して実行時間を計測してみました
https://pastebin.com/uZbrwhhJ
MaixduinoでMaixPyのmaixpy_v0.5.0_12_g284ce83.binで
8000桁で21.276秒
ESP32-WROVER-Bモジュールで
本家MicroPythonのesp32spiram-idf3-20191220-v1.12.binで
8000桁で217.121秒でした
ここのページの1番目のPIの計算プログラムを少しだけ改変して実行時間を計測してみました
https://pastebin.com/uZbrwhhJ
MaixduinoでMaixPyのmaixpy_v0.5.0_12_g284ce83.binで
8000桁で21.276秒
ESP32-WROVER-Bモジュールで
本家MicroPythonのesp32spiram-idf3-20191220-v1.12.binで
8000桁で217.121秒でした
2020/02/11(火) 11:34:25.92ID:O7mzxHHL
なぜか、ボードのリセットボタンを押してハードリセットしたらどちらも早くなりました
MaixduinoでMaixPyのmaixpy_v0.5.0_12_g284ce83.binで
8000桁で5.595秒
ESP32-WROVER-Bモジュールで
本家MicroPythonのesp32spiram-idf3-20191220-v1.12.binで
8000桁で31.904秒でした
MaixduinoでMaixPyのmaixpy_v0.5.0_12_g284ce83.binで
8000桁で5.595秒
ESP32-WROVER-Bモジュールで
本家MicroPythonのesp32spiram-idf3-20191220-v1.12.binで
8000桁で31.904秒でした
2020/02/11(火) 11:45:41.03ID:O7mzxHHL
ESP32-WROVER-Bモジュールで
本家MicroPythonのPSRAM版ではない通常版のesp32-idf3-20191220-v1.12.binで
ハードリセット後実行して
8000桁で20.385秒でした
PSRAM版は多くのメモリを扱えますが多少遅くなることもあるようです
本家MicroPythonのPSRAM版ではない通常版のesp32-idf3-20191220-v1.12.binで
ハードリセット後実行して
8000桁で20.385秒でした
PSRAM版は多くのメモリを扱えますが多少遅くなることもあるようです
2020/02/11(火) 11:56:25.92ID:O7mzxHHL
ESP32-WROVER-Bモジュールで
通常版とPSRAM版でハードリセット直後のgc.mem_free()の値を見てみました
通常版(esp32-idf3-20191220-v1.12.bin) 114320
PSRAM版(esp32spiram-idf3-20191220-v1.12.bin) 4093584
通常版とPSRAM版でハードリセット直後のgc.mem_free()の値を見てみました
通常版(esp32-idf3-20191220-v1.12.bin) 114320
PSRAM版(esp32spiram-idf3-20191220-v1.12.bin) 4093584
2020/02/11(火) 12:54:14.18ID:UXBR/mIk
電子工作ネタを一つ
気温、気圧、湿度センサーのBME280です
BME280モジュールはスイッチサイエンスや秋月で売ってます
https://www.switch-science.com/catalog/2236/
https://akizukidenshi.com/catalog/g/gK-09421/
BME280はSPIとI2Cを選べるのですがI2Cで接続での使用です
ここのサイトに接続方法が詳しく載ってます
秋月のでもJ3をはんだでショートしなくてもI2Cで使えるようです
ttps://iot-gym.com/bme280-obniz/
https://github.com/SWITCHSCIENCE/BME280
スイッチサイエンスのPython用のサンプルコードを改変して
MaixPyで使えるようにしたものをESP32で使えるようにしてみました
(ほんの少し修正しただけです)
i2c_addressにはBME280のアドレスを入れます(このプログラムでは0x76になってます)
ESP32本家MicroPython用
https://pastebin.com/f6gjgYM0
MaixPy用
https://pastebin.com/QyV9qssY
M5StickVでもSCL=34 SDA=35もしくはSCL=35 SDA=34にすればおそらく使えると思います
気温、気圧、湿度センサーのBME280です
BME280モジュールはスイッチサイエンスや秋月で売ってます
https://www.switch-science.com/catalog/2236/
https://akizukidenshi.com/catalog/g/gK-09421/
BME280はSPIとI2Cを選べるのですがI2Cで接続での使用です
ここのサイトに接続方法が詳しく載ってます
秋月のでもJ3をはんだでショートしなくてもI2Cで使えるようです
ttps://iot-gym.com/bme280-obniz/
https://github.com/SWITCHSCIENCE/BME280
スイッチサイエンスのPython用のサンプルコードを改変して
MaixPyで使えるようにしたものをESP32で使えるようにしてみました
(ほんの少し修正しただけです)
i2c_addressにはBME280のアドレスを入れます(このプログラムでは0x76になってます)
ESP32本家MicroPython用
https://pastebin.com/f6gjgYM0
MaixPy用
https://pastebin.com/QyV9qssY
M5StickVでもSCL=34 SDA=35もしくはSCL=35 SDA=34にすればおそらく使えると思います
2020/02/11(火) 13:06:15.84ID:UXBR/mIk
2020/02/12(水) 02:31:11.05ID:DUVMk/h/
サーキットパイソンは?
2020/02/12(水) 21:08:33.24ID:0wuSyJPK
派生版もOKだからいいのでは?
2020/02/13(木) 19:59:20.90ID:P9LhW72B
MicroPythonのLoborisのPSRAM版ですが
基本的には下記URLのwikiに書かれたとおりにビルドすればいいのですが
https://github.com/loboris/MicroPython_ESP32_psRAM_LoBo/wiki/build
その通りにビルドしただけでは
usslのussl.wrap_socket()を使うとエラーが出るようです
これはhttpsでアクセスするときに使います
BUILD.sh menuconfigで設定するときに
→ Component config → mbedTLS → SDK (8192) TLS maximum message content length
この値を16384に設定することで正常に動作するようになります
ここに書いてあり、実際にやってみてSSLの通信ができることを確認しました
https://loboris.eu/forum/showthread.php?tid=61
また、デフォルトではヒープサイズが512KBになってるのでデフォルトでビルドしても
PSRAMを512MBしか使ってくれません
→ MicroPython → System settings → MicroPython heap size (KB)
ここを変更することで多くのメモリを確保できます
(最大で3840まで設定可能で3840で起動できることを確認しました)
3840KBに設定してビルドした時のハードリセット後gc.mem_free()を実行したところ
3835168
と出ました
基本的には下記URLのwikiに書かれたとおりにビルドすればいいのですが
https://github.com/loboris/MicroPython_ESP32_psRAM_LoBo/wiki/build
その通りにビルドしただけでは
usslのussl.wrap_socket()を使うとエラーが出るようです
これはhttpsでアクセスするときに使います
BUILD.sh menuconfigで設定するときに
→ Component config → mbedTLS → SDK (8192) TLS maximum message content length
この値を16384に設定することで正常に動作するようになります
ここに書いてあり、実際にやってみてSSLの通信ができることを確認しました
https://loboris.eu/forum/showthread.php?tid=61
また、デフォルトではヒープサイズが512KBになってるのでデフォルトでビルドしても
PSRAMを512MBしか使ってくれません
→ MicroPython → System settings → MicroPython heap size (KB)
ここを変更することで多くのメモリを確保できます
(最大で3840まで設定可能で3840で起動できることを確認しました)
3840KBに設定してビルドした時のハードリセット後gc.mem_free()を実行したところ
3835168
と出ました
2020/02/13(木) 20:18:35.38ID:P9LhW72B
SSLの通信のテストプログラムとしてSipeedのMaixGo用のサンプルプログラムを引用しました
https://github.com/sipeed/MaixPy_scripts/blob/master/network/demo_http.py
ESP32のMicroPython用に改変してあります
本家MicroPythonのPSRAM版とLoborisのPSRAM版で動作することを確認してあります
JPEGの画像をダウンロードしてSPIFFSに保存するだけのプログラムです
ファイルはAlice.jpgという名前で保存されます
https://pastebin.com/TzM2fAeh
https://github.com/sipeed/MaixPy_scripts/blob/master/network/demo_http.py
ESP32のMicroPython用に改変してあります
本家MicroPythonのPSRAM版とLoborisのPSRAM版で動作することを確認してあります
JPEGの画像をダウンロードしてSPIFFSに保存するだけのプログラムです
ファイルはAlice.jpgという名前で保存されます
https://pastebin.com/TzM2fAeh
2020/02/13(木) 20:33:38.54ID:P9LhW72B
SPIFFSへはuPyLoaderなどでアクセスできます
初回アクセス時はFileメニューのInit Transffer fileを実行してください
uPyLoader
https://github.com/BetaRavener/uPyLoader/releases
初回アクセス時はFileメニューのInit Transffer fileを実行してください
uPyLoader
https://github.com/BetaRavener/uPyLoader/releases
2020/02/13(木) 20:51:54.38ID:3dwSW4OG
割り込みとかスリープへの対応って今後も予定無いの?
2020/02/13(木) 21:09:08.73ID:P9LhW72B
MicroPython lobo版はWindowsからではビルドできなかったです
Linuxなどからビルドしてください
ESP-IDFのインストール方法はここを参照してください
https://docs.espressif.com/projects/esp-idf/en/stable/get-started/index.html
VMware上のLinuxでビルドする場合は仮想マシンにシリアルポートを追加して
ESP32のUSB SerialのCOMポートへ割り当ててください
flashへの書き込みは下記のようにシリアルポートを指定してボーレートを115200にして下さい
./BUILD.sh -p /dev/ttyS1 -b 115200 erase
./BUILD.sh -p /dev/ttyS1 -b 115200 flash
Linuxなどからビルドしてください
ESP-IDFのインストール方法はここを参照してください
https://docs.espressif.com/projects/esp-idf/en/stable/get-started/index.html
VMware上のLinuxでビルドする場合は仮想マシンにシリアルポートを追加して
ESP32のUSB SerialのCOMポートへ割り当ててください
flashへの書き込みは下記のようにシリアルポートを指定してボーレートを115200にして下さい
./BUILD.sh -p /dev/ttyS1 -b 115200 erase
./BUILD.sh -p /dev/ttyS1 -b 115200 flash
2020/02/14(金) 08:06:49.85ID:fdTAGVW6
画像を扱う場合はESP32だとPSRAMがないときついね
だからM5CameraにはPSRAMがついてるんだろうね
https://www.switch-science.com/catalog/5207/
送料区分 500
税込単価 1,815 円
M5StickVやUNIT V、MaixduinoやMaix BitならRAMが6Mもあるから画像扱うのも楽
K210搭載モジュールはどれもスペックが似てるね
M5StickV
https://www.switch-science.com/catalog/5700/
送料区分 500
税込単価 3,080 円
UnitV AI Camera
https://www.switch-science.com/catalog/6212/
送料区分 150
税込単価 2,145 円
だからM5CameraにはPSRAMがついてるんだろうね
https://www.switch-science.com/catalog/5207/
送料区分 500
税込単価 1,815 円
M5StickVやUNIT V、MaixduinoやMaix BitならRAMが6Mもあるから画像扱うのも楽
K210搭載モジュールはどれもスペックが似てるね
M5StickV
https://www.switch-science.com/catalog/5700/
送料区分 500
税込単価 3,080 円
UnitV AI Camera
https://www.switch-science.com/catalog/6212/
送料区分 150
税込単価 2,145 円
2020/02/14(金) 08:08:30.86ID:fdTAGVW6
Sipeed Maixduino
https://www.switch-science.com/catalog/5707/
送料区分 500
税込単価 3,960 円
Sipeed MAix Bit Suit (液晶・カメラ付)
http://akizukidenshi.com/catalog/g/gM-14471/
1個 ¥3,000(税込)
https://www.switch-science.com/catalog/5707/
送料区分 500
税込単価 3,960 円
Sipeed MAix Bit Suit (液晶・カメラ付)
http://akizukidenshi.com/catalog/g/gM-14471/
1個 ¥3,000(税込)
2020/02/14(金) 08:11:44.50ID:fdTAGVW6
あと、MicroPythonならこれを忘れてはいけない
本家のpyboard
MICROPYTHON PYBOARD V1.1
https://www.marutsu.co.jp/pc/i/26920671/
¥6,460(税抜)
本家のpyboard
MICROPYTHON PYBOARD V1.1
https://www.marutsu.co.jp/pc/i/26920671/
¥6,460(税抜)
2020/02/14(金) 08:15:31.89ID:fdTAGVW6
MicroPython pyboard v1.1
https://www.sengoku.co.jp/mod/sgk_cart/detail.php?code=EEHD-55YH
単価 \5602
MicroPython pyboard v1.1 (ピンヘッダ実装済)
https://www.sengoku.co.jp/mod/sgk_cart/detail.php?code=EEHD-55YJ
単価 \6620
https://www.sengoku.co.jp/mod/sgk_cart/detail.php?code=EEHD-55YH
単価 \5602
MicroPython pyboard v1.1 (ピンヘッダ実装済)
https://www.sengoku.co.jp/mod/sgk_cart/detail.php?code=EEHD-55YJ
単価 \6620
2020/02/14(金) 08:29:32.32ID:fdTAGVW6
K210用にはMicroPythonのloboris版もあるようです
https://github.com/loboris/MicroPython_K210_LoBo
K210でWiFiが使えるMaixduinoを買う場合に注意が必要なのは
MaixPyではWiFiアクセスポイントとしては使えないことと、
現時点ではSSLの通信に対応してないこと
Loboris版は試してないのでわかりません
K210は全モジュールで6MのRAMが載ってるので性能は高い
なお、大容量のヒープを使えるようにするのにはMaixPyv0.5.0以上が必要です
ヒープは
import Maix
Maix.utils.heap_size(1000000)
のように設定できます
あまり大きい値を設定すると起動できなくなります
ヒープサイズの設定はSPIFFSに保存されるので
空のSPIFFSイメージを書き込まないとリセットできませんので要注意です
Maix.utils.heap_size(4000000)
では起動できなくなりました
https://github.com/loboris/MicroPython_K210_LoBo
K210でWiFiが使えるMaixduinoを買う場合に注意が必要なのは
MaixPyではWiFiアクセスポイントとしては使えないことと、
現時点ではSSLの通信に対応してないこと
Loboris版は試してないのでわかりません
K210は全モジュールで6MのRAMが載ってるので性能は高い
なお、大容量のヒープを使えるようにするのにはMaixPyv0.5.0以上が必要です
ヒープは
import Maix
Maix.utils.heap_size(1000000)
のように設定できます
あまり大きい値を設定すると起動できなくなります
ヒープサイズの設定はSPIFFSに保存されるので
空のSPIFFSイメージを書き込まないとリセットできませんので要注意です
Maix.utils.heap_size(4000000)
では起動できなくなりました
2020/02/14(金) 08:32:15.12ID:fdTAGVW6
MaixPyのヒープサイズの設定はリセットボタンを押してハードリセットした後で反映されます
2020/02/14(金) 08:39:45.07ID:fdTAGVW6
MaixPyのイメージはここにあります
http://dl.sipeed.com/MAIX/MaixPy/release/master/
http://dl.sipeed.com/MAIX/MaixPy/release/master/
2020/02/19(水) 07:18:23.46ID:81xHIDaH
ESP32用のMicroPython lobo版は
→ MicroPython → Modules → SDK Enable framebuffer
→ MicroPython → Modules → Use Display module
→ MicroPython → Modules → Enable support for SPI TFT displays (NEW)
この3つにチェック入れてビルドすると
ST7789
ILI9341
ILI9488
ST7735
ST7735R
ST7735B
M5STACK
ssd1306
これだけのLCDに対応してる模様
試しにこれを買ってみました
HiLetgo® 2.8 "TFT LCDディスプレイ タッチパネル SPIシリアル240 * 320 ILI9341 5V / 3.3V STM32 [並行輸入品]
https://www.あまぞん.co.jp/dp/B072N551V3/
→ MicroPython → Modules → SDK Enable framebuffer
→ MicroPython → Modules → Use Display module
→ MicroPython → Modules → Enable support for SPI TFT displays (NEW)
この3つにチェック入れてビルドすると
ST7789
ILI9341
ILI9488
ST7735
ST7735R
ST7735B
M5STACK
ssd1306
これだけのLCDに対応してる模様
試しにこれを買ってみました
HiLetgo® 2.8 "TFT LCDディスプレイ タッチパネル SPIシリアル240 * 320 ILI9341 5V / 3.3V STM32 [並行輸入品]
https://www.あまぞん.co.jp/dp/B072N551V3/
2020/02/19(水) 07:18:50.53ID:81xHIDaH
ちなみにMicroPython lobo版はWindowsではビルドできない模様
VMware上のUbuntu 18.04でビルドすると簡単にビルドできました
esp-idfやtoolchainはMicroPython lobo版の中に含まれているので
別途インストールする必要はありません
cd MicroPython_ESP32_psRAM_LoBo/MicroPython_BUILD
でディレクトリを移動して
./BUILD.sh menuconfig
を実行してパラメーターを設定して
./BUILD.sh -v
でコンパイル
./BUILD.sh erase
でFlashをクリア
./BUILD.sh flash
でFlashに書き込みです
./BUILD.sh erase
./BUILD.sh flash
は下記のようにシリアルのポートとスピードを指定できます
(VMwareから書き込みする際に指定する必要がありました)
./BUILD.sh -p /dev/ttyS1 -b 115200 erase
./BUILD.sh -p /dev/ttyS1 -b 115200 flash
VMware上のUbuntu 18.04でビルドすると簡単にビルドできました
esp-idfやtoolchainはMicroPython lobo版の中に含まれているので
別途インストールする必要はありません
cd MicroPython_ESP32_psRAM_LoBo/MicroPython_BUILD
でディレクトリを移動して
./BUILD.sh menuconfig
を実行してパラメーターを設定して
./BUILD.sh -v
でコンパイル
./BUILD.sh erase
でFlashをクリア
./BUILD.sh flash
でFlashに書き込みです
./BUILD.sh erase
./BUILD.sh flash
は下記のようにシリアルのポートとスピードを指定できます
(VMwareから書き込みする際に指定する必要がありました)
./BUILD.sh -p /dev/ttyS1 -b 115200 erase
./BUILD.sh -p /dev/ttyS1 -b 115200 flash
2020/02/19(水) 07:40:57.28ID:81xHIDaH
必要なパラメータの設定は
→ Component config → mbedTLS → SDK (8192) TLS maximum message content length
これを16384に設定(これを16384にしないとSSLを使うと失敗する)
https://loboris.eu/forum/showthread.php?tid=61
→ MicroPython → Modules → SDK Enable framebuffer
→ MicroPython → Modules → Use Display module
→ MicroPython → Modules → Enable support for SPI TFT displays (NEW)
これらをチェック
→ MicroPython → Use OTA partition layout
のチェックを外す
→ MicroPython → File systems
SPIFFSを使用できるようにする(デフォルトでなってる模様)
PSRAM版は下記設定も必要
→ Component config → ESP32-specific → Support for external, SPI-connected RAM
をチェック
→ Component config → ESP32-specific → SPI RAM config → SPI RAM access method
をMake RAM allocatable using heap_caps_mallocに設定
→ MicroPython → System settings → MicroPython heap size (KB)
ヒープサイズを設定。デフォルトでは512になってます
(上限は3840で私の場合、3840にしました)
→ Component config → mbedTLS → SDK (8192) TLS maximum message content length
これを16384に設定(これを16384にしないとSSLを使うと失敗する)
https://loboris.eu/forum/showthread.php?tid=61
→ MicroPython → Modules → SDK Enable framebuffer
→ MicroPython → Modules → Use Display module
→ MicroPython → Modules → Enable support for SPI TFT displays (NEW)
これらをチェック
→ MicroPython → Use OTA partition layout
のチェックを外す
→ MicroPython → File systems
SPIFFSを使用できるようにする(デフォルトでなってる模様)
PSRAM版は下記設定も必要
→ Component config → ESP32-specific → Support for external, SPI-connected RAM
をチェック
→ Component config → ESP32-specific → SPI RAM config → SPI RAM access method
をMake RAM allocatable using heap_caps_mallocに設定
→ MicroPython → System settings → MicroPython heap size (KB)
ヒープサイズを設定。デフォルトでは512になってます
(上限は3840で私の場合、3840にしました)
2020/02/19(水) 07:48:37.84ID:81xHIDaH
Ubuntu 18.04ではaptでこれらを入れないとビルドできません
sudo apt-get install git wget make libncurses-dev flex bison gperf python python-serial
githubのURLは
https://github.com/loboris/MicroPython_ESP32_psRAM_LoBo
sudo apt-get install git wget make libncurses-dev flex bison gperf python python-serial
githubのURLは
https://github.com/loboris/MicroPython_ESP32_psRAM_LoBo
2020/02/19(水) 09:37:02.47ID:aWtqkf6O
lobo版をPSRAMのないESP32で試したところヒープが確保できなくて起動できませんでした
lobo版はPSRAM必須なようです
本家MicroPythonなら使えます
本家MicroPythonでgc.mem_free()を実行したところ
113200でした
lobo版はPSRAM必須なようです
本家MicroPythonなら使えます
本家MicroPythonでgc.mem_free()を実行したところ
113200でした
2020/02/19(水) 21:21:55.85ID:ooojpNg1
git clone https://github.com/loboris/MicroPython_ESP32_psRAM_LoBo.git
でまっさらな状態からやり直したところ、
PSRAMのないESP32でもMicroPython loboris版が使えました
パラメーターで変更した点は下記のみです
→ Component config → mbedTLS → SDK (8192) TLS maximum message content length
これを16384に設定
→ MicroPython → Modules → SDK [*] Enable framebuffer n --->
→ MicroPython → Modules → Use Display module
→ MicroPython → Modules → Enable support for SPI TFT displays (NEW)
の3つにチェックを入れる
でまっさらな状態からやり直したところ、
PSRAMのないESP32でもMicroPython loboris版が使えました
パラメーターで変更した点は下記のみです
→ Component config → mbedTLS → SDK (8192) TLS maximum message content length
これを16384に設定
→ MicroPython → Modules → SDK [*] Enable framebuffer n --->
→ MicroPython → Modules → Use Display module
→ MicroPython → Modules → Enable support for SPI TFT displays (NEW)
の3つにチェックを入れる
2020/02/19(水) 21:23:20.67ID:ooojpNg1
ビルド方法は
適当なディレクトリを作りその下で
git clone https://github.com/loboris/MicroPython_ESP32_psRAM_LoBo.git
を実行(ファイル容量は1GB以上あります)
cd MicroPython_ESP32_psRAM_LoBo/MicroPython_BUILD
でディレクトリを移動して
./BUILD.sh menuconfig
を実行
ここで上記パラメーターを変更します
./BUILD.sh -v
を実行してコンパイルをします
./BUILD.sh erase
を実行し、Flashの内容をクリア
./BUILD.sh flash
を実行しFlashにMicroPythonを書き込みます
./BUILD.sh -p /dev/ttyS1 -b 115200 erase
./BUILD.sh -p /dev/ttyS1 -b 115200 flash
のようにシリアルのポートと速度を指定することもできます
ハードリセット後のgc.mem_free()の結果は73504でした
適当なディレクトリを作りその下で
git clone https://github.com/loboris/MicroPython_ESP32_psRAM_LoBo.git
を実行(ファイル容量は1GB以上あります)
cd MicroPython_ESP32_psRAM_LoBo/MicroPython_BUILD
でディレクトリを移動して
./BUILD.sh menuconfig
を実行
ここで上記パラメーターを変更します
./BUILD.sh -v
を実行してコンパイルをします
./BUILD.sh erase
を実行し、Flashの内容をクリア
./BUILD.sh flash
を実行しFlashにMicroPythonを書き込みます
./BUILD.sh -p /dev/ttyS1 -b 115200 erase
./BUILD.sh -p /dev/ttyS1 -b 115200 flash
のようにシリアルのポートと速度を指定することもできます
ハードリセット後のgc.mem_free()の結果は73504でした
2020/02/19(水) 23:13:14.70ID:ooojpNg1
HiLetgo 2.8 "TFT LCDディスプレイ タッチパネル SPIシリアル240 * 320 ILI9341 5V / 3.3V STM32 [並行輸入品]
https://www.あまぞん.co.jp/dp/B072N551V3/
このLCDが届いたのでPSRAMのないESP32で使ってみたのですが
文字を表示したり、図形を描画したり、
SPIFFSに置いた50KBくらいの大きさの640x480のJPG画像の表示もできました
ただ、複数の画像を扱いたい場合はPSRAMがあった方がよさそうです
>>22のプログラムでダウンロードした画像をLCDに表示するようにしてみました
https://pastebin.com/9KpLk6bi
こちらは線を表示するdemoプログラムです
https://pastebin.com/yNCXbEqV
https://www.あまぞん.co.jp/dp/B072N551V3/
このLCDが届いたのでPSRAMのないESP32で使ってみたのですが
文字を表示したり、図形を描画したり、
SPIFFSに置いた50KBくらいの大きさの640x480のJPG画像の表示もできました
ただ、複数の画像を扱いたい場合はPSRAMがあった方がよさそうです
>>22のプログラムでダウンロードした画像をLCDに表示するようにしてみました
https://pastebin.com/9KpLk6bi
こちらは線を表示するdemoプログラムです
https://pastebin.com/yNCXbEqV
2020/02/19(水) 23:39:17.67ID:ooojpNg1
線を表示するプログラムのMaixPy版です
https://pastebin.com/zKpA2bp7
https://pastebin.com/zKpA2bp7
2020/02/20(木) 06:10:23.98ID:WRrMvsef
PSRAMのないESP32でSPIFFSへのファイル転送を行うときは
uPyloaderは使わないほうがいいようです
途中でPCが固まることが何回かありました
ampyを使った方が無難です
uPyloaderは使わないほうがいいようです
途中でPCが固まることが何回かありました
ampyを使った方が無難です
2020/02/20(木) 06:47:54.71ID:WRrMvsef
ampyはバイナリファイルの受信ができないようです
MicroPython loboris版ではymodemというモジュールがあって
これを使うとバイナリファイルの転送ができます
例えば、SPIFFSにphoto01.jpgというファイル名があった場合に
import ymodem
ymodem.send("Alice0.jpg")
と入力し、送信が始まったら
シリアルに接続してる通信ソフトからYMODEMでの受信を開始すればOKです
私はTeraTermを使ってるのですがTeraTermの場合は
ファイル→転送→YMODEM→受信をクリックします
するとTeraTermのプログラムがあるディレクトリにファイルが転送されます
送信は
import ymodem
ymodem.recv("photo01.jpg")
と入力すると受信待ちになるので
TeraTermのファイル→転送→YMODEM→送信をクリックし
送信したいファイルを選択します
すると送信が始まります
MicroPython loboris版ではymodemというモジュールがあって
これを使うとバイナリファイルの転送ができます
例えば、SPIFFSにphoto01.jpgというファイル名があった場合に
import ymodem
ymodem.send("Alice0.jpg")
と入力し、送信が始まったら
シリアルに接続してる通信ソフトからYMODEMでの受信を開始すればOKです
私はTeraTermを使ってるのですがTeraTermの場合は
ファイル→転送→YMODEM→受信をクリックします
するとTeraTermのプログラムがあるディレクトリにファイルが転送されます
送信は
import ymodem
ymodem.recv("photo01.jpg")
と入力すると受信待ちになるので
TeraTermのファイル→転送→YMODEM→送信をクリックし
送信したいファイルを選択します
すると送信が始まります
2020/02/20(木) 23:13:13.62ID:bC9KRmky
>>40のプログラムでDC=17、Reset=16につないでいましたがどうやらPSRAMで使うようで
PSRAM付きのESP32では使えないようです
今後、もしILI9341互換LCDの出番があるときはDC=27、Reset=4でやっていこうと思います
tft.init(0, mosi=23, miso=19, clk=18, cs=5, dc=17, rst_pin=16, speed=40000000, bgr=True)
の部分は
tft.init(0, mosi=23, miso=19, clk=18, cs=5, dc=27, rst_pin= 4, speed=40000000, bgr=True)
でやっていきます
PSRAM付きのESP32では使えないようです
今後、もしILI9341互換LCDの出番があるときはDC=27、Reset=4でやっていこうと思います
tft.init(0, mosi=23, miso=19, clk=18, cs=5, dc=17, rst_pin=16, speed=40000000, bgr=True)
の部分は
tft.init(0, mosi=23, miso=19, clk=18, cs=5, dc=27, rst_pin= 4, speed=40000000, bgr=True)
でやっていきます
2020/02/29(土) 20:36:58.14ID:EyGs3dbd
ESP32のMicroPython Lobo版で
>>40のLCDの背面についてるSDカードスロットを使ってみました
LCDはmisoは19、LEDは3.3V、SCKは18、MOSIは23、DCは27、RESETは4、CSは5、VCCは3.3Vにつなぎます
SDカードの部分はSD_CSは13、SD_MOSIは15、SD_MISOは2、SD_SCKは14につなぎます
MicroPythonからのSDカードの使い方は
import uos
uos.sdconfig(uos.SDMODE_SPI, clk=14, mosi=15, miso=2, cs=13, maxspeed=8)
uos.mountsd()
この3行を実行すると
---------------------
Mode: SPI
Name: SA16G
Type: SDHC/SDXC
Speed: default speed (25 MHz)
SPI speed: 8 MHz
Size: 14772 MB
CSD: ver=1, sector_size=512, capacity=30253056 read_bl_len=9
SCR: sd_spec=2, bus_width=5
のように表示されてSDカードが/sdにマウントされます
uos.listdir('/sd')
を実行するとSDカードの中のファイルのリストを見ることができます
SDカードのアンマウントは
uos.umountsd()
になります
>>40のダウンロードした画像をLCDに表示するプログラムを
リストで指定したURLの画像を連続してダウンロードできるようにしてみました
MicroPythonはLobo版です。
(PSRAMのないESP32でもダウンロードできる画像を選んでみました)
https://pastebin.com/F85G6pL6
>>40のLCDの背面についてるSDカードスロットを使ってみました
LCDはmisoは19、LEDは3.3V、SCKは18、MOSIは23、DCは27、RESETは4、CSは5、VCCは3.3Vにつなぎます
SDカードの部分はSD_CSは13、SD_MOSIは15、SD_MISOは2、SD_SCKは14につなぎます
MicroPythonからのSDカードの使い方は
import uos
uos.sdconfig(uos.SDMODE_SPI, clk=14, mosi=15, miso=2, cs=13, maxspeed=8)
uos.mountsd()
この3行を実行すると
---------------------
Mode: SPI
Name: SA16G
Type: SDHC/SDXC
Speed: default speed (25 MHz)
SPI speed: 8 MHz
Size: 14772 MB
CSD: ver=1, sector_size=512, capacity=30253056 read_bl_len=9
SCR: sd_spec=2, bus_width=5
のように表示されてSDカードが/sdにマウントされます
uos.listdir('/sd')
を実行するとSDカードの中のファイルのリストを見ることができます
SDカードのアンマウントは
uos.umountsd()
になります
>>40のダウンロードした画像をLCDに表示するプログラムを
リストで指定したURLの画像を連続してダウンロードできるようにしてみました
MicroPythonはLobo版です。
(PSRAMのないESP32でもダウンロードできる画像を選んでみました)
https://pastebin.com/F85G6pL6
2020/02/29(土) 20:40:18.07ID:EyGs3dbd
LCDの背面に付いてるSDカードスロットだと使いにくいので
これを買って付けてみました。使い方は全く同じです。
(VCCには5Vの電源をつなぐ必要があります
信号線は74VHC125のバッファをかませてあるようで5Vでも3.3Vでも使えます)
HiLetgo 3個セット Micro SD TFカードメモリシールドモジュール
Arduinoに対応 SPIマイクロSDアダプタ 6PIN
https://www.アマゾン.co.jp/gp/product/B010GXAFFU/
3個セットで500円だったのですが現在は品切れ中のようです
これを買って付けてみました。使い方は全く同じです。
(VCCには5Vの電源をつなぐ必要があります
信号線は74VHC125のバッファをかませてあるようで5Vでも3.3Vでも使えます)
HiLetgo 3個セット Micro SD TFカードメモリシールドモジュール
Arduinoに対応 SPIマイクロSDアダプタ 6PIN
https://www.アマゾン.co.jp/gp/product/B010GXAFFU/
3個セットで500円だったのですが現在は品切れ中のようです
2020/02/29(土) 20:43:15.68ID:EyGs3dbd
もし、SDカードが認識されなかった場合はMOSI、MISO、CS、CLKの信号線を
10Kオームの抵抗で3.3Vでプルアップするといいかもしれません
10Kオームの抵抗で3.3Vでプルアップするといいかもしれません
2020/02/29(土) 21:13:10.29ID:EyGs3dbd
2020/03/15(日) 06:28:52.23ID:Gm3vCHEC
CircuitPython 5.0のTeensy 4.0とMaixPy v0.5.0-22-g7ac6b09で
>>13のPiの計算の速度を計測してみました
CircuitPythonではutimeがなく時間計測にはtime.monotonic()を使うようです
CircuitPython用のPiの計算プログラム
https://pastebin.com/14GzFx6H
結果は
Maixduinoは5.517 秒
Teensy4.0は7.474 秒
Maixduinoの方が速い結果になりました
ArduinoでDhrystone 2.1で計測すると
Teensy4.0は2690347とMaixduinoより約2倍くらい速いのですが
MicroPythonではMaixduinoの方が速いようです
>>13のPiの計算の速度を計測してみました
CircuitPythonではutimeがなく時間計測にはtime.monotonic()を使うようです
CircuitPython用のPiの計算プログラム
https://pastebin.com/14GzFx6H
結果は
Maixduinoは5.517 秒
Teensy4.0は7.474 秒
Maixduinoの方が速い結果になりました
ArduinoでDhrystone 2.1で計測すると
Teensy4.0は2690347とMaixduinoより約2倍くらい速いのですが
MicroPythonではMaixduinoの方が速いようです
2020/03/15(日) 06:41:06.98ID:Gm3vCHEC
MicroPythonとは関係ないですが
Teensy 4.0のDhrystone 2.1の結果はRaspberry Pi Zeroの2127659.5より速いです
Teensy 4.0のDhrystone 2.1の結果はRaspberry Pi Zeroの2127659.5より速いです
2020/03/25(水) 16:49:51.62ID:xKDlAvsc
先日、ESP32のmicropythonで素因数分解電卓作った。
10桁ぐらいの数も一瞬だからおどろいた。
すげぇな、ESP32。
10桁ぐらいの数も一瞬だからおどろいた。
すげぇな、ESP32。
2020/03/27(金) 04:22:10.58ID:fsD98lCE
ESP32は他のマイコンよりもRAMが多いからいいよね
特にPSRAM搭載のやつは4MB近くヒープを確保できる
PSRAM搭載のESP32-DevKitC-VBはmouserで税抜き1276円
ただし、mouserは税抜き送料6000円未満だと送料が2000円かかるけど
他のボード買うときについでにmouserでESP32-DevKitC-VBを買ってみたが
アメリカからの発送だった
特にPSRAM搭載のやつは4MB近くヒープを確保できる
PSRAM搭載のESP32-DevKitC-VBはmouserで税抜き1276円
ただし、mouserは税抜き送料6000円未満だと送料が2000円かかるけど
他のボード買うときについでにmouserでESP32-DevKitC-VBを買ってみたが
アメリカからの発送だった
53774ワット発電中さん
2020/03/27(金) 04:23:35.00ID:fsD98lCE × 税抜き送料6000円未満
○ 税抜き6000円未満
mouserは税抜き価格で6000円以上だと送料無料
それ以下だと送料に2000円かかる
○ 税抜き6000円未満
mouserは税抜き価格で6000円以上だと送料無料
それ以下だと送料に2000円かかる
2020/03/29(日) 05:13:11.18ID:PXzKtgWB
ESP32は単体でWiFiが使えるのがいい点
単純な計算能力ならMaixduino、MaixBitやM5StickVの方が上で
デフォルトでLCD、カメラ、SDカードスロットが付いてる
6倍くらい計算能力が高い
MaixduinoはMicroPythonからオンボードのWiFiが使えるがSSLが使えないのが欠点
Maixduino、MaixBitはArduinoも使えるがMaixduinoのオンボードWiFiはArduinoからは使えない
単純な計算能力ならMaixduino、MaixBitやM5StickVの方が上で
デフォルトでLCD、カメラ、SDカードスロットが付いてる
6倍くらい計算能力が高い
MaixduinoはMicroPythonからオンボードのWiFiが使えるがSSLが使えないのが欠点
Maixduino、MaixBitはArduinoも使えるがMaixduinoのオンボードWiFiはArduinoからは使えない
2020/03/29(日) 06:18:27.32ID:PXzKtgWB
https://pastebin.com/s6ye07e3
この素因数分解のプログラムをやってみたら結果はこうなりました
ESP32 本家MicroPython PSRAMなし:17.811 秒
Teensy 4.0 CircuitPython 5.0:12.665 秒
Maixduino MaixPy v0.5.0-22-g7ac6b09:0.881 秒
この素因数分解のプログラムをやってみたら結果はこうなりました
ESP32 本家MicroPython PSRAMなし:17.811 秒
Teensy 4.0 CircuitPython 5.0:12.665 秒
Maixduino MaixPy v0.5.0-22-g7ac6b09:0.881 秒
2020/03/29(日) 08:50:36.60ID:PXzKtgWB
ESP32やTeensy 4.0は32bitの範囲を超える値の演算をすると演算速度はかなり落ちますが
MaixPyは32bit以上64bit未満の値の演算をしても
32bit以下の値の演算の場合とほとんど計算速度がかわらないので
32bit以上64bit未満の値の演算は内部的に64bitの演算命令で計算してると思われます
なのでMaixPyは64bitの範囲の演算は32bitの他のCPUの場合よりもかなり速くなるようです
MaixPyは32bit以上64bit未満の値の演算をしても
32bit以下の値の演算の場合とほとんど計算速度がかわらないので
32bit以上64bit未満の値の演算は内部的に64bitの演算命令で計算してると思われます
なのでMaixPyは64bitの範囲の演算は32bitの他のCPUの場合よりもかなり速くなるようです
2020/04/02(木) 07:08:13.20ID:XSWgFFvw
マイコンにそんなに計算能力必要?
2020/04/05(日) 07:33:32.28ID:3GzQZCKp
計算速度云々よりも
M5StickVのようにバッテリー内蔵でカメラ、LCDも付いてて簡単に持ち運べるようなのはいいね
WiFiも使えればさらに良かったけど
MaixPyはATコマンドのファームウェアを書き込んである8266をUARTでつなげば
とりあえず、MaixPyからnetwork.ESP8285を使うことでWiFiが使えるようにはなるね
(最新のファームウェアじゃないくて古いファームウェアの方がいいみたい)
ただし、MaixPyはSSLが使えないけど
もう一つ、Groveポートが付いてればよかったんだけどね
M5StickVのようにバッテリー内蔵でカメラ、LCDも付いてて簡単に持ち運べるようなのはいいね
WiFiも使えればさらに良かったけど
MaixPyはATコマンドのファームウェアを書き込んである8266をUARTでつなげば
とりあえず、MaixPyからnetwork.ESP8285を使うことでWiFiが使えるようにはなるね
(最新のファームウェアじゃないくて古いファームウェアの方がいいみたい)
ただし、MaixPyはSSLが使えないけど
もう一つ、Groveポートが付いてればよかったんだけどね
2020/04/05(日) 10:14:05.02ID:3GzQZCKp
ESP8266のATコマンドのファームウェアはここからダウンロードできます
https://www.espressif.com/en/support/download/at
私はMaixduino上のMaixPyで試したのですがESP8266でWiFi接続してサーバからデータを取ってくることはできました
使ったESP8266のファームウェアはESP8266 NonOS AT Bin V1.7.1です
https://www.espressif.com/en/support/download/at
私はMaixduino上のMaixPyで試したのですがESP8266でWiFi接続してサーバからデータを取ってくることはできました
使ったESP8266のファームウェアはESP8266 NonOS AT Bin V1.7.1です
2021/04/18(日) 14:14:15.99ID:6UQkXKlk
raspberry pi picoでmicropythonを始めてみました
2021/04/22(木) 07:06:17.11ID:M/OZbA/f
PicoのMicroPythonは本家のMicroPythonとの互換性は高いみたいだから
ESP32用のMicroPythonのプログラムでもピンの指定などをPicoに合わせて変更すれば
そのまま動く場合が多いよ
Lobo版のMicroPythonとは互換性は高くないので注意だけど
framebufモジュールを使うと画像の描画が可能です
ただし、framebufモジュールは円の描画には対応してないです
Raspberry Pi picoでMicroPythonでILI9341のLCDに画像を表示してみた例
RAMが足りなくて画面全体のframebuf用のバッファーを確保できなかったので
画面の一部分のみ(240x180)のバッファーを確保して描画してます
Raspberry Pi Pico MicroPython ILI9341 SPI demo random rect
https://pastebin.com/93EJpseN
Raspberry Pi Pico MicroPython ILI9341 SPI framebuf demo Cat
https://pastebin.com/RJrgtCFN
ESP32用のMicroPythonのプログラムでもピンの指定などをPicoに合わせて変更すれば
そのまま動く場合が多いよ
Lobo版のMicroPythonとは互換性は高くないので注意だけど
framebufモジュールを使うと画像の描画が可能です
ただし、framebufモジュールは円の描画には対応してないです
Raspberry Pi picoでMicroPythonでILI9341のLCDに画像を表示してみた例
RAMが足りなくて画面全体のframebuf用のバッファーを確保できなかったので
画面の一部分のみ(240x180)のバッファーを確保して描画してます
Raspberry Pi Pico MicroPython ILI9341 SPI demo random rect
https://pastebin.com/93EJpseN
Raspberry Pi Pico MicroPython ILI9341 SPI framebuf demo Cat
https://pastebin.com/RJrgtCFN
2021/04/22(木) 07:14:15.88ID:M/OZbA/f
上のプログラムの猫の画像はGIMPでRGB565でC言語形式で出力したものを
C言語でPythonのソースコードで使えるように整形して出力したものです
GIMPなら保存形式にC言語ソース形式を選択してRGB565を指定すれば
普通の画像をRGB565に変換したデータ出力ができるので便利ですね
C言語でPythonのソースコードで使えるように整形して出力したものです
GIMPなら保存形式にC言語ソース形式を選択してRGB565を指定すれば
普通の画像をRGB565に変換したデータ出力ができるので便利ですね
2021/04/22(木) 08:39:07.56ID:zIfQgD3o
2021/10/29(金) 08:37:29.46ID:Q3YMDdwV
wdt.feed() これ、効かないんだけど どうやってエサやるの?
65774ワット発電中さん
2023/03/09(木) 11:22:41.41ID:3xCEj5+U CircuitPythonって使いやすいね。Adafruitがしっかり管理してくれてる。しばらく遊んでみよっと。
2023/03/16(木) 09:55:18.76ID:sQ7on+qw
2年ぶりの過疎レス
2023/03/16(木) 17:54:50.10ID:OqI/L4OK
わざわざ掲示板で聞くことがあるほど難しくないからね
2023/03/18(土) 15:29:39.01ID:aowOrzl+
micropythonで書くとラズパイpicoもSTMもArduinoも使える?
2023/08/19(土) 12:41:58.75ID:+DGa8RUm
金曜日入れないの?
2024/02/04(日) 10:11:35.61ID:5aEkXeVX
難しいだろうな
2024/02/19(月) 12:26:00.47ID:EoPw2M5a
CircuitPython9.0.0 Beta1リリースですね
72774ワット発電中さん
2024/05/12(日) 10:49:50.44ID:UIHoEsAg そいつはアンチがまともな政治家が不思議
73774ワット発電中さん
2024/05/12(日) 10:49:53.18ID:dK/i4mla 等身大パネル誰得なので
凝り性なおじさんの見方は大きな展開にしてるケースが結構上位となった
一方、乗用車に接触した後、横転しそうならセーフだよな、ごめんね
俺も嵌められたはずなので
凝り性なおじさんの見方は大きな展開にしてるケースが結構上位となった
一方、乗用車に接触した後、横転しそうならセーフだよな、ごめんね
俺も嵌められたはずなので
2024/05/12(日) 11:01:10.41ID:LIxPC4u8
賛美し、60代の前半に霊感商法も合同結婚式、芸能だのの陰キャ趣味と言う。
2024/05/12(日) 12:01:57.10ID:bFDtRh/V
エネチェン拾えた人に行くしかなくね
2024/05/12(日) 12:07:54.30ID:PVqI23BH
>>23
明日は無理だろう
明日は無理だろう
2024/05/12(日) 12:25:18.46ID:/kR95zKt
要するにソシャゲで
飲むのやめとこうという
現実
しかし
一週間近くで3キロ痩せるて相当なもんだぞ
飲むのやめとこうという
現実
しかし
一週間近くで3キロ痩せるて相当なもんだぞ
78774ワット発電中さん
2024/05/12(日) 13:17:03.23ID:aFXmDNHm 炭水化物が切れて外へとんでいったかもしれん!!
2024/07/01(月) 09:42:01.90ID:IG7auafS
今までC言語とJavaしかやったことないですが
micropythonでメモリを節約するテクニックなどを教えてもらえないでしょうか
bytes型で生成しているのに要素×4バイト+30ほどメモリ持ってかれて発狂しそうです
micropythonでメモリを節約するテクニックなどを教えてもらえないでしょうか
bytes型で生成しているのに要素×4バイト+30ほどメモリ持ってかれて発狂しそうです
2024/07/01(月) 10:45:30.16ID:u5FKHMKI
そんな貧相な環境では使えない
2024/07/01(月) 15:23:40.90ID:XdDwUO8+
>>79
インラインアセンブラで書く
インラインアセンブラで書く
2024/07/01(月) 23:51:17.18ID:2lfd78Hq
Python領域とコピー発生するから余計ダメでは?
2024/07/02(火) 10:54:50.52ID:5IQke5QX
メモリが潤沢な環境でないとmicropythonは難しいですか
2024/07/02(火) 13:51:34.19ID:ZatkfqLT
そもそもmicropython自体が1メガバイトとかだからな。
ユーザーメモリ増やすなら、使わないライブラリ削って再コンパイルしなきゃダメ。
ユーザーメモリ増やすなら、使わないライブラリ削って再コンパイルしなきゃダメ。
2024/08/06(火) 16:48:08.59ID:AOplWuP/
海外ペンこういう時はリゾートで遊びまくり
https://i.imgur.com/RzR9KPk.png
https://i.imgur.com/RzR9KPk.png
86774ワット発電中さん
2024/08/06(火) 17:01:02.25ID:y1udlCCm ・立てられなかった
こんなひどいことするのも含めて)
「憲法9条は改正しないと耐えられなくなったら通信の意義を理解してると思うけど
こんなひどいことするのも含めて)
「憲法9条は改正しないと耐えられなくなったら通信の意義を理解してると思うけど
2024/08/06(火) 17:47:47.03ID:Z8a4se/J
というか
○2023年放送予定
24時間テレビの話題なんて安いもんだ
あの店員
○2023年放送予定
24時間テレビの話題なんて安いもんだ
あの店員
88774ワット発電中さん
2024/08/06(火) 18:51:23.74ID:3aW+GvUj 数字を作るのにBIMだけは行けんかった
https://i.imgur.com/K0sZ86L.png
https://i.imgur.com/K0sZ86L.png
89774ワット発電中さん
2024/08/06(火) 18:59:12.41ID:f/gr6px2 楽しみを見出せない
ノーポジとか言わなきゃわからんのにバカにされないもんね
ヒスンは歌うのに
ノーポジとか言わなきゃわからんのにバカにされないもんね
ヒスンは歌うのに
90774ワット発電中さん
2024/08/06(火) 19:00:26.86ID:gPg2fStS あとは
カルトの恐ろしさを感じないんだが
カルトの恐ろしさを感じないんだが
レスを投稿する
ニュース
- 【長野】米価抑制で5キロ2千円台も 小泉農相 [少考さん★]
- 永野芽郁 打ち上げでスピーチ「週刊誌から声かけられたら知りませーん!って言ってくださいね」「ご迷惑をおかけしてすいませーん。ふふふ」★2 [Ailuropoda melanoleuca★]
- 【フジ】第三者委員会 中居正広氏代理人弁護士あてに回答 性暴力断定の証拠は「開示を差し控えます」理由は「守秘義務のため」 [Ailuropoda melanoleuca★]
- 女性が「住みたい街」ランキング2025(首都圏版)。高円寺や荻窪を抑えた1位は“あの駅” [少考さん★]
- 小泉農相、備蓄米の入札中止 スーパーなどに直接売り渡す考えも ★5 [おっさん友の会★]
- 「ダイエー」がPayPayなどのコード決済を終了へ 5月末で [パンナ・コッタ★]
- コストコのガソリン価格が20円安い理由が「中抜を通さずに直接商社から買ってる」からだった。 [359572271]
- 【速報】イスラエル大使館員2人が射殺され死亡 アメリカ [597533159]
- 「祖国を守るために戦争に行く」日本の若者はたった13%で世界最低。諸外国は70%-80%、大丈夫かよこの国.. [512028397]
- 元日銀副総裁「減反政策をやめれば零細兼業農家が潰れて専業農家に集約されて米価が下がる。できないのはJAの政治力が強いから」 [481941988]
- 【万博虫】飲食店が悲鳴「沢山の虫さんで悲惨な状況」 [455679766]
- 【絶望】今年のコメ価格、さらに高騰へ…猛暑の影響で害虫「イネカメムシ」が70年ぶりの大発生し超絶不作に [597533159]