タグ

ブックマーク / lang-ship.com (6)

  • ESP32のFreeRTOS入門 その4 割り込みと通知

    上記がトリガー条件です。DISABLEDは実質使いませんので、RISINGかFALLING、CHANGEあたりをよく使います。ONLOWとONHIGHは常に割り込みが発生するので、緊急停止的なトリガー条件で使うものだと思います。 ONLOW_WEとONHIGH_WEは検索しても、使われている形跡がありませんでした。調べてみたところ、来トリガー条件が3ビットなのですが、そのさらに上位1ビットも一緒に指定しようとしています。 GPIO_PINn_WAKEUP_ENABLE GPIO wake-up enable will only wake up the CPU from Light-sleep.(R/W) 上記がそのビットなのですが、ライトスリープからの復帰に使うためのフラグです。ただし、Arduinoのソースファイルを見たところ、トリガー条件は3ビットしか見ていませんでしたので、このフラ

    ESP32のFreeRTOS入門 その4 割り込みと通知
    poleight
    poleight 2024/02/27
  • ESP32のFreeRTOS入門 その2 タスクの作成

    概要 ESP32を深く触っていくと、FreeRTOSにいきつきます。しかしながら情報が少ないので調べてみました。Arduino IDE環境でのFreeRTOSについてを対象とします。 FreeRTOSとは? RTOS(Real Time O... 前回は概要紹介で終わりましたが、今回はプログラムの実行から、タスクの作成まで説明したいと思います。 Arduinoプログラムの構造 Arduinoのスケッチ void setup() { } void loop() { } 上記のような何も処理しないプログラムで考えてみます。上記を実行するための裏では別のプログラムがあります。 esp32/main.cpp #include "freertos/FreeRTOS.h" #include "freertos/task.h" #include "esp_task_wdt.h" #include "Ar

    ESP32のFreeRTOS入門 その2 タスクの作成
    poleight
    poleight 2024/02/27
  • ESP32でrootCAバンドルを利用してhttps通信をする

    概要 ESP32でHTTPS通信をするのは結構たいへんです。証明書を体に保存する必要があるのですが、通常は中間CAを保存するので、証明書の発行元が変わるとエラーになって使えません。 今回はMozillaのrootCAバンドルを使わせてもらいました。 rootCAを使える形に変換する wget https://raw.githubusercontent.com/espressif/esp-idf/master/components/mbedtls/esp_crt_bundle/gen_crt_bundle.py wget https://curl.se/ca/cacert.pem python gen_crt_bundle.py -i cacert.pem xxd -i x509_crt_bundle | sed "s/unsigned/const unsigned/g" >x509_cr

    ESP32でrootCAバンドルを利用してhttps通信をする
  • Arduino for Visual Studio Code出力の文字化け対策

    文字化け 普通に利用するとWindows上の場合、出力が文字化けしちゃいます。文字コードの問題だとは思うのですが、どうやっても化けたままなのでソースコードを覗いてみました。 原因 実行環境の文字コードからUTF-8に変換しようとしていたため。下記コードの9行目。 function spawn(command, outputChannel, args = [], options = {}) { return new Promise((resolve, reject) => { const stdout = ""; const stderr = ""; options.cwd = options.cwd || path.resolve(path.join(__dirname, "..")); const child = childProcess.spawn(command, args, opt

    Arduino for Visual Studio Code出力の文字化け対策
    poleight
    poleight 2023/08/28
    .vscode\extensions\vsciot-vscode.vscode-arduino-0.6.0-win32-x64\out\src\common\util.js で、219行目をコメントアウト
  • 画像データImageData化

    RAW Dump 16Bit RGB565 Dump(little endian) 16Bit RGB565 Dump(big endian) 1Bit (Black or White) Dump(E-INK) 1Bit (Black or White) Dump(Receipt)

    poleight
    poleight 2022/11/13
  • LovyanGFX入門 その5 画像描画

    概要 前回は日フォントでしたが、今回はLovyanGFXを使う上で知っておいた方がよい描画周りの仕組みを解説したいと思います。LovyanGFXは複数の環境で動きますが、今回はESP32に特化した内容になります。 概要説明なので、適当に... 前回は仕組みの部分を紹介しましたが、今回は画像を表示する方法を紹介したいと思います。複数の方法がありますので、状況に応じて使い分けてください。 画像データの準備 横72、縦60ドットの画像を適当に作り、これを表示してみたいと思います。一度Jpegに保存してからBMPに変換したので色がおかしくなっています、、、 スケッチ内蔵RGB565画像 #define LGFX_AUTODETECT #include <LovyanGFX.hpp> static LGFX lcd; extern const uint16_t imgWidth; extern

    LovyanGFX入門 その5 画像描画
    poleight
    poleight 2022/10/19
  • 1