以下の内容はhttps://gijin77.blog.jp/archives/2023-02.htmlより取得しました。


◆RP2040-Zero[Waveshare]を入手したのでArduino IDE で「Lチカ」を
 やってみました。
 RP2040-Zeroは、Raspberry Pi picoと同様に開発できる切手サイズの
 モジュールです。
 RP2040-Zero

1.RP2040-Zeroの諸元
 ①回路図
 RP2040-Zero_回路図

 ②ピンアサイン
 RP2040-Zero_pinアサイン

 ➂wiki/RP2040-Zero


2.RP2040-ZeroをArduino IDEで使う
 ①最初にRP2040-ZeroをPCに接続、起動すると「RPI-RP2」のドライブが現れますが
 そのままにして置きます。
 RP2040_RPI-RP2

 ②その状態でArduino IDEを起動してスケッチを書き込みます。
 開発環境 2023/02/27時点
 ・Windows11 Pro 64bit 22H2
 ・Arduino IDE 1.8.19
 ・Adafruit NeoPixel v1.11.0
 ・ボード RP2040 v2.7.3

 ➂RP2040-Zeroのボードが使えるようボードマネージャーで
  検索し、最新バージョンをインストールします。
 ボードマネージャーRP2040

 ④次にボード選択でRP2040-Zeroを指定します。
 ボード選択RP2040zero

 ⑤「NeoPixel」のライブラリを検索してインストールします。
 ライブラリNeoPixel_v1_11_0

 ⑥準備できたら下記の「Lチカ」のスケッチを書き込みます。
 (保障無しの自己責任で)  RP2040Ltika.ino

 ⑦最初は、 RP2040-Zeroの「COM」ポートが、現れないか
  次の⑧のシリアルポートの欄に「UF2 Board」が表示されるかです。
  「UF2 Board」が表示されていたら選択し⑨に飛びます。
 com無し

 ⑧「BOOT」釦を押しながら「RESET釦を」押します。
 するとシリアルポートの欄に「UF2 Board」が表示されますので
 「UF2 Board」を選択します。
 uf2選択

 ⑧ここで「マイコンボードに書き込む」[→]を押すと正常に書き込めます。
 uf2OK

 ⑨次回からは、シリアルポートが選択出来るようになりました。
 COM選択可
 
以上 めでたしめでたし



ブログトップへ

◆1.9inch_ESP32-1732S019を入手したので搭載LCDにefont漢字表示にてNewsAPIを使い
 ニュースを表示させてみました。
 ESP32-1732S019_1

1.1.9inch_ESP32-1732S019の諸元
 ①外観とピンアサイン
 ESP32-1732S019_ピンアサイン
 
 ②回路図
 ESP32-1732S019_回路図
 
 ➂メーカーサイト
 ESP32-1732S019ダウンロードリンク:http://www.jczn1688.com/zlxz
 ダウンロードパスワード: jczn1688

2.表示に必要なライブラリとスケッチ
 開発環境
 ・Windows11 Pro 64bit 22H2
 ・ Arduino IDE 1.8.19
 ・efontライブラリ v1.0.9
 ・TFT_eSPIライブラリ v2.5.0
 ・ボード ESP32 v2.0.7

 esp32ボード_v2_0_7

 ①ライブラリマネージャーで「efont」を検索してインストールします。
 efontライブラリ_v1_0_9

 ②ライブラリマネージャーで「TFT_eSPI」を検索してインストールします。
 TFT_eSPIライブラリ_v2_5_0

 ◆「TFT_eSPI」のライブラリを使うには、ライブラリフォルダにある
  「User_Setup.h」をESP32-1732S019LCD用に編集する必要があります。
   オリジナルは、「User_Setup_org.h」にコピペして残して置きます。
 下記に変更箇所を示します。
 //コメントアウトする
  45 //#define ILI9341_DRIVER
 //コメント取る
  55 #define ST7789_DRIVER      // Full configuration option,

 //コメント取り 172->170へ変更、コメントを170x320に変更
 86 #define TFT_WIDTH  170 // ST7789 170 x 320
 //コメント取り コメントを170x320に変更
 91 #define TFT_HEIGHT 320 // ST7789 170 x 320

 //コメントアウトする
 169 //#define TFT_CS   PIN_D8  // Chip select control pin D8
 170 //#define TFT_DC   PIN_D3  // Data Command control pin
 171 //#define TFT_RST  PIN_D4  // Reset pin (could connect to NodeMCU RST

 //1.9inch_ESP32-1732S019に合わせGPIOピン番号を編集する
 206 #define TFT_MISO -1 
 207 #define TFT_MOSI 13
 208 #define TFT_SCLK 12
 209 #define TFT_CS   10  // Chip select control pin
 210 #define TFT_DC   11  // Data Command control pin
 211 #define TFT_RST   1  // Reset pin (could connect to RST pin)
 212 #define TFT_BL   14  // LED back-light //追記します

 225 #define TOUCH_CS -1     // Chip select pin (T_CS) of touch screen


 ➂Arduino IDEを起動しボード設定を下記のようにします。
 ArduinoIDE_ボード選択設定
  
 ④続いて下記ファイルをコンパイルしESP32へ書き込み実行します。
  (保障無しの自己責任で)  ESP32-1732S019_efont_TFT_eSPI_NewsAPI.ino

 ◆ソース中下記のSSIDとPWを自分用に書き換えます。
 44 #define STASSID "YOURSSID"
 45 #define STAPSK "YOURPW"
 ◆ソース中下記のサイトで自分専用のAPI keyを取得して書き換えます。
 52 // Japan News API
 53 // https://newsapi.org/s/japan-news-api
 54 // change XXXXXXXXXX to your API key
 55 const char* NewsAPIURL = "http://newsapi.org/v2/top-headlines?
                 country=jp&apiKey=XXXXXXXXXX";

3.動作写真
 ①TFT_eSPIの"\examples\320 x 240\TFT_Rainbow_one_lib\TFT_Rainbow_one_lib.ino"
  を実行したときの画面
 ESP32-1732S019_3
 
 ②ニュース表示の様子
 ニュース表示1

 ニュース表示2


以上


ブログトップへ

◆Raspberry Pi Pico C/C++ Windows開発環境(pico-sdk)の中で
 Wii classic controllerを使ってみました。
 Wii classic controlleは、リサイクルショップで300円で入手出来ました。
 Picoとは、I2Cで接続出来てゲームなとで重宝しています。
 ボード➂
 ◆下記ブログ内で実際ケームで使用しています。
  ・Raspberry Pi Pico と Wii classic controller で テトリス を遊んでみた

 picotetris1

1.まずは、下記先人のサイトより「Wii classic controller」が
 picoにI2C接続できることが分かりました。感謝です。
 ①Wiiリモコン拡張コントローラープロトコル解析
 ②Wii Classic Controller

2.Wii classic controllerとpicoとのI2C接続
 pico_Wii_classic_controller

3.先ほどの先人のプログラムをpico-sdk (vsc)で使えるように
 移植しました。
 ◆C/C++の開発環境を構築していないと場合は、下記ブログ内記事
  も参照して構築して下さい。
 ①・Raspberry Pi Pico C/C++ Windows開発環境の構築その1(コマンドライン編)
 ②・Raspberry Pi Pico C/C++ Windows開発環境の構築その2(GUI編)

 ◆フォルダ内のファイルについて
 wii_pico-sdk

 ①「pico_sdk_import.cmake」は「pico-examples」からコピペします。
 ②赤囲いの4個のファイルは、下記よりそれぞれ分割してからビルドする
  必要が有ります。
  (保障無しの自己責任で)  WiiController_pico-sdk.html

4.picoに書き込み実行したときの様子
 ①Tera Termでの様子
 wii_実行画面
 
 ②各デジタル釦のビット配列の確認
[B0000000000000000] L: 32, 31 R: 15, 17 B:  0,  0 B:0000
[B1000000000000000] L: 32, 31 R: 15, 17 B:  0,  0 B:8000 →
[B0100000000000000] L: 32, 31 R: 15, 16 B:  0,  0 B:4000 ↓
[B0010000000000000] L: 32, 30 R: 15, 17 B: 26,  0 B:2000 LB
[B0001000000000000] L: 33, 31 R: 15, 17 B:  1,  0 B:1000 -
[B0000100000000000] L: 32, 31 R: 15, 16 B:  1,  0 B:0800 HOME
[B0000010000000000] L: 32, 31 R: 15, 17 B:  1,  0 B:0400 +
[B0000001000000000] L: 32, 30 R: 15, 17 B:  1, 26 B:0200 RB
[B0000000010000000] L: 32, 30 R: 15, 17 B:  0,  0 B:0080 ZL
[B0000000001000000] L: 32, 31 R: 15, 17 B:  0,  0 B:0040 b
[B0000000000100000] L: 32, 30 R: 15, 17 B:  0,  0 B:0020 Y
[B0000000000010000] L: 32, 30 R: 15, 17 B:  0,  0 B:0010 a
[B0000000000001000] L: 32, 31 R: 15, 16 B:  0,  0 B:0008 X
[B0000000000000100] L: 32, 31 R: 15, 17 B:  0,  0 B:0004 ZR
[B0000000000000010] L: 32, 31 R: 15, 17 B:  0,  0 B:0002 ←
[B0000000000000001] L: 32, 31 R: 15, 17 B:  0,  0 B:0001 ↑

[B1000000010000000] L: 32, 30 R: 15, 17 B:  0,  0 B:8080 → ZL
[B1000000010100000] L: 32, 31 R: 15, 17 B:  0,  0 B:80A0 → ZL Y
[B1000000010101000] L: 32, 31 R: 15, 17 B:  0,  0 B:80A8 → ZL X Y
[B1000000010111000] L: 32, 30 R: 15, 17 B:  0,  0 B:80B8 → ZL X Y a
[B1000000011111000] L: 32, 30 R: 15, 17 B:  0,  0 B:80F8 → ZL X Y a b
  
 ➂Wii classic controllerの全データ配置
 wiiデータ配列2
 
5.I2Cの勉強も兼ねてオシロでI2Cの波形をみてみました。
 ◆CH1がSCK,CH2がSDA
 ①ライトコマンドの時の波形
 ライトコマンド

 ②釦を押していない時の波形
 リード釦無し
 
 ➂[ZL]+[→]釦を押した時の波形
  [B1000000010000000] L: 32, 30 R: 15, 17 B:  0,  0 B:8080 → ZL
 リードZL+→;
 リードZL+→拡大

 ④[HOME]釦を押した時の波形
  [B0000100000000000] L: 32, 31 R: 15, 16 B:  1,  0 B:0800 HOME
 リードhome
 ⑤[Y]釦を押した時の波形
  [B0000000000100000] L: 32, 30 R: 15, 17 B:  0,  0 B:0020 Y
 リードY

以上



ブログトップへ

◆Raspberry Pi Picoを弄る時に、今までブレッドボート等を使っていましたが、
 アマゾンを見ていたら便利そうなpico用拡張ボードが有ることを知りました。
 早速、四種類入手して色々試してみました。
  
 pico拡張ボード4種類_3

 pico拡張ボード4種類_4

 
1.拡張ボード4種
 ①Raspberry Pi用の40ピンHATコネクタとpico用の2x20オスヘッダー付き
  ・リセットSWが付いているのでソフト書き込み時、便利です。
  ・ラズパイ用の3.5'LCDをそのまま挿して使えました。ピンの設定を
  赤囲みのように指定しました。DCの24については、写真中央GP1と24を
  半田ブリッジで繋ぎました。
 SPI_pico拡張ボード

 PiLCD3_5
 ◆下記はこのボードの使用例(ブログ内リンク)
  ・Raspberry Pi Pico と Wii classic controller で テトリス を遊んでみた


 ②Raspberry Pi用の40ピンHATコネクタとpico用の2x20オスヘッダー付き
  ・これも①と同様ラズパイ用の3.5'LCDをそのまま挿して使えましたが
  ピンアサインが違っていますのでソフト共通とはいきませんでした。
    //                   ボード ② ① 
   #define LCD_CS_PIN     5  // 8  
   #define LCD_DC_PIN    26 // 1 
   #define LCD_RST_PIN  22 //28 
   #define LCD_CLK_PIN    2 //10 
   #define LCD_MOSI_PIN  4 //11 
   #define LCD_MISO_PIN  3 //12 
   #define LCD_BL_PIN      15 //15 使用せず

 SPI_pico拡張ボード1
  ◆下記はこのボードの使用例(ブログ内リンク)
  ・Raspberry Pi Pico にて efont を使い Raspi用3.5インチLCD に漢字を表示してみた


 ➂pico用の2x20オスヘッダーとブレッドボート付
  ・あとブザー1個、押釦スイッチ4個、LED4個付いています。
  簡単なテストをするにはこれだけで済みそうです。
 pico拡張ボード3
  ◆下記はこのボードの使用例(ブログ内リンク)
  ・pico-sdk (vsc) で Wii classic controller を使ってみた

 ④pico用3セットの2x20オスヘッダー付き
 pico拡張ボード2
  ◆下記はこのボードの使用例(ブログ内リンク)
  ・Raspberry Pi Pico用 1.3インチ LCD 240×240 でレトロゲーム


2.参考図
  ①picoピン配置
 picoピン配置
 ②pico互換ピン配置
 pico互換ピン配置
 ➂RapsberryPiピン配置
 RapsberryPiピン配置
以上



ブログトップへ

◆Raspberry Pi Picoで Wii クラシックコントローラーを使いテトリスを遊んでみました。
 配線は、pico拡張ボードを使って見た目もスッキリ出来ました。
 2.8インチLCDやスピーカーも変換ボードを作り、他でも使えるようしました。
 picotetris1

 picotetris2
 ◆Pico変換ボード
 pico拡張ボード

1.拡張ボートとの接続関係
 ①3.5インチラズパイ用LCDのピン配置
 PiLCD3_5
 ②拡張ボードと2.8インチLCD変換ボード
  ◆picoと2.8インチLCDのの接続
  ・pico  ------------------------  2.8インチLCD
  ・5V         -------------------     VCC
  ・GND     --------------------    GND
  ・GP8     ---------------------    CS
  ・GP28    --------------------    RESET
  ・GP1       -------------------    DC
  ・GP11 SPI1 TX------------   SDI(MOSI)
  ・GP10 SPI1 SCK ---------   SCK
  ・5V         ---------------------   LED
  ・GP12 SPI1 RX  ----------   SDO(MISO)

 SPI_pico拡張ボード_変換ボード

 ➂2.8インチLCDと変換ボード
 LCD変換ボード2

 ④スピーカーとWiiクラシックコントローラー接続変換ボード
 pico拡張ボード_SP

 ⑤picoとの接続とWii クラシックコントローラーのケーブル色と信号名
   ・pico  ------------------------  Wiiコントローラ
   ・GPIO4  I2C0 SDA  ------  SDA---緑
   ・GPIO5  I2C0 SCL  ------  SCL---黄
   ・GND     --------------------   GND--白
   ・3V3       -------------------    3.3V---赤
   
 pico_Wii_classic_controller

3.ソフトの移植


今日は、ここまで

以上


ブログトップへ

◆ラズパイ用3.5インチ480 x 320 SPI TFT LCD(ILI9486)ディスプレイモジュールで
 これまでにESP32にてefontを表示してきましたが、今回Raspi Picoでも表示出来ました。
 S__49881091

 S__49881093

 これまでの下記記事も参照してみて下さい。
  参考:ブログ内リンク
    ・ESP32 にて efont を使い ラズパイ用3.5インチLCD に漢字を表示してみた
    ・ESP32 にて efont を使い 1.8" TFT LCD に漢字を表示してみた
    ・ESP32 にて efont を使い SSD1306 OLED に漢字を表示してみた

 RPi用の3.5インチLCDは、数種類あり、下記に詳しく出ています。
  ◆3.5inch-RPi-Display-User-Manual
  ◆Elegoo 3.5'' TFT Touch Screen User Manual

1.今回、3.5インチLCDへの接続は、Pico用拡張ボードを使い、簡単に試験出来ました。
 ①下記は、拡張ボードとLCDとの接続ピン配置です。
 ◆拡張ボードについては、ブログ内下記を参照してみて下さい。
 ・Raspberry Pi Pico 用 拡張ボード を使ってみた

 PiLCD3_5

 SPI_pico拡張ボード1
2.表示に必要なライブラリとスケッチ
 ①ライブラリマネージャーで「TFT_eSPI」を検索してインストールします。
 ②ライブラリマネージャーで「efont」を検索してインストールします。
 ➂「TFT_eSPI」のライブラリを使うには、ライブラリフォルダにある
  「User_Setup.h」をRPiLCD用に編集する必要があります。

 変更箇所(行番号は参考)
 //コメントアウトする
  39 //#define ILI9341_DRIVER
 //コメント取る
  40 #define RPI_ILI9486_DRIVER // 20MHz maximum SPI

 //コメントアウトする
 153 //#define TFT_CS   PIN_D8  // Chip select control pin D8
 154 //#define TFT_DC   PIN_D3  // Data Command control pin
 155 //#define TFT_RST  PIN_D4  // Reset pin (could connect to NodeMCU RST, see next line)

 //Picoに合わせGPIOピン番号を編集する
 188 #define TFT_MISO 3 
 189 #define TFT_MOSI 4 
 190 #define TFT_SCLK 2 
 191 #define TFT_CS     5    // Chip select control pin
 193 #define TFT_DC     26  // Data Command control pin
 194 #define TFT_RST   22 // Set TFT_RST to -1 if display RESET is connected to  RST
 195
 196 #define TOUCH_CS 19 // Chip select pin (T_CS) of touch screen

 279 #define SPI_FREQUENCY  20000000
 280 //#define SPI_FREQUENCY  27000000 
 
 ④続いてArduino を起動し、ボード選択は、下記を選択します。
   ◆Picoのボードを登録してない場合、前もって登録が必要です。
  ボード情報の登録は、ブログ内下記を参照してみて下さい。
  ・Rasbperry Pi Pico を Arduino IDE で Lチカ してみた

  picoボード選択

 ⑤続いて下記ファイルをコンパイルしRaspi Picoへ書き込み実行します。
  (保障無しの自己責任で)  pico_efont_rpi_ILI9486_TFT_eSPI.ino
 
 
 以上
 

ブログトップへ



以上の内容はhttps://gijin77.blog.jp/archives/2023-02.htmlより取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14