~番外編~ラズベリーパイ PICOでWEBサーバーを作る。(最初から、nuttxのインストールではなく、基本のラズパイの操作であるLチカをするべきでした。)
94日目
最初からWebサーバーを作りますとか言っていましたが、知識を身に着けるには、まず基礎から学ぶべき。Lチカを通してラズパイの操作を学びましたので、Nuttxをインストールする前にLチカをさせるべきです。僕は基本を勉強しないで、環境構築をしようとしたので間違いに気づきませんでした。
必要機材
ラズパイ Pico
ブレッドボード
ジャンパワイヤ(オスオスとメスメス)
HiLetgo® CP2102 USB 2.0 to TTL UART シリアル コンバータモジュール 5P STC PRGMR ケーブル付き [並行輸入品]
Micro USBケーブル
参考記事
ラズパイピコのLチカ~Hello Worldの実行まで
https://qiita.com/yunkya2/items/e67996301a2d8d2a5609
ラズパイ公式(英語)
https://datasheets.raspberrypi.com/pico/getting-started-with-pico.pdf
シリアル通信
Tera term
https://ja.osdn.net/projects/ttssh2/releases/
インストール方法
https://eng-entrance.com/teraterm-install
Tera termの使い方(シリアル通信)
https://www.opensourcetech.tokyo/entry/20210203/1612360748
↓↓↓からUbuntuにコマンドを打ち込みましょう。Ubutnuのダウロード方法は過去の記事を見てね。 https://note.com/sattaku1538/n/n173dfa53a2b4
<pico-sdkのインストール>
cd ~/
mkdir pico
cd pico
git clone -b master https://github.com/raspberrypi/pico-sdk.git
cd pico-sdk
git submodule update --init
cd ..
git clone -b master https://github.com/raspberrypi/pico-examples.git
sudo apt update
sudo apt install cmake gcc-arm-none-eabi build-essential
cd
echo "export PICO_SDK_PATH=${HOME}/pico/pico-sdk" >> .bashrc
"cat .bashrc"を実行して、追記されているか確認する。※既に記述されている場合はechoの実行はしなくてもよいです。
<Lチカをして接続を確認しする方法>
cd pico
cd pico-examples
mkdir build
cd build
cmake ..
↓↓"cmake.."後に表示される内容。
Using PICO_SDK_PATH from environment ('/home/sattaku1538/pico/pico-sdk')
PICO_SDK_PATH is
:
:
-- Generating done
-- Build files have been written to: /home/sattaku1538/pico/pico-examples/build
cd blink
make -j4
↓↓"make -j4"実行後の表示内容
Scanning dependencies of target ELF2UF2Build
:
:
Linking CXX executable blink.elf
Built target blink
同階層にて"explorer.exe ."を実行するとエクスプローラーに移動しますので、"blink.uf2"をドラッグ&ドロップしてラズパイのフォルダに張り付けるとすぐにLチカします。
<Hello Worldの実行方法>
上記のLチカが成功したら、buildの階層まで移動をしてコマンドを打ち込む。(階層移動~/pico/pico-examples/build $)
cd hello_world
make -j4
インストールが完了したら、"explorer.exe ."を打ち込んで、エクスプローラーを開く。
その前にPicoとシリアル通信ができているかどうかを確認するために、Tera termというシリアルモニタをインストールします。(teraterm-4.106.exeをダウンロードで良いと思います)
https://ja.osdn.net/projects/ttssh2/releases/
tera termのインストールは下記のサイトを参考にしてください。
https://eng-entrance.com/teraterm-install
注意点として、シリアル通信の確認(ラズパイ)の接続先はUSBシリアルデバイスを選んでください。
インストールが完了したら、いよいよラズパイとのシリアル通信ですが、USBシリアル変換アダプタとラズパイを接続する際には接続するラズパイのPin配置図内にあるRXとTXに従って接続してください。
最後にUbuntuから開いたエクスプローラーから”ネットワーク/wsl$/Ubuntu/home/User名/pico/pico-example/build/hello_world/usb”までを開いて、”hello_usb.uf2”というフォルダをラズパイ側にドラッグすれば完了です。このようにHello, Worldと記述されます。
そして、最後にまた問題発生。Lチカとシリアル通信のHello Worldの実行→nuttxのインストールができた→シリアル通信のHello Worldの実行ができない。現在、シリアル通信のエラーを解決しています。一難去ってまた、一難です。難しい!!!