{ "metadata": { "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": 3 }, "orig_nbformat": 4 }, "nbformat": 4, "nbformat_minor": 2, "cells": [ { "source": [ "## Grove Starter Kit for Raspberry Pi Pico\n", "Raspberry Pi Picoの使い方を学ぶには、Groveのセンサーを使うのが簡単です。\n", "ここでは、Seeedから販売されている\n", "Grove Starter Kit for Raspberry Pi Pico\n", "を使いますが、秋月からも購入できる以下の組み合わせもお手軽です。\n", "- Grove Beginner Kit for Arduino\n", "- Grove Shield for Pi PicoPico\n", "\n", "Grove Starter Kit for Raspberry Pi Picoには、以下のアイテムが含まれています。\n", "- Grove - LED Pack\n", "- Grove - RGB LED(WS2813 Mini)\n", "- Grove - Light Sensor\n", "- Grove - Sound Sensor\n", "- Grove - Rotary ANgle Sensor\n", "- Grove - Temperature & Humidity Sensor\n", "- Grove - Button\n", "- Grove - Servo\n", "- Grove - Mini Fan\n", "- Grove - 16x2 LCD\n", "- Grove Shield for Pi Pico\n", "- Grove Cable x 8\n", "\n", "\n", "\n" ], "cell_type": "markdown", "metadata": {} }, { "source": [ "## サンプルスケッチ\n", "\n", "SeeedのWikiサイト\n", "\n", "には、Pythonを使った例題しかないので、ここではArduino IDE(VScode PlatformIOを使用)での\n", "スケッチに書き換えて試してみます。\n", "\n", "### Project1(ブザーの音量を調整)\n", "Project1では、以下のアイテムを使用します。\n", "- Grove Buzzer(A1ポートに接続)\n", "- Grove Rotary Angle Sensor(A0ポートに接続)\n", "\n", "\n", "\n", "スケッチは、以下の通りです。\n", "\n", "```C++\n", "// Project1 for Pico for Arduino Framework\n", "#include \n", "\n", "#define ROTARY_ANGLE_SENSOR A0\n", "#define BUZZER 27\n", "\n", "void setup() {\n", " Serial.begin(115200);\n", " pinMode(ROTARY_ANGLE_SENSOR, INPUT);\n", " pinMode(BUZZER, OUTPUT); \n", "}\n", "\n", "void loop() {\n", " // 可変抵抗の電圧を読み取る\n", " int sensorValue = analogRead(ROTARY_ANGLE_SENSOR);\n", " // ブザーの音量を計算\n", " int duty = map(sensorValue, 0, 1023, 0, 255/2);\n", " Serial.print(\"Sensor value=\");\n", " Serial.println(sensorValue);\n", " // ブザーの音量をセット\n", " analogWrite(BUZZER, duty);\n", " delay(500);\n", "}\n", "```\n", "\n", "Raspberry Pi PicoのADCは、12bitあるのですが、Arduino APIに合わせているため、analogReadの値は、0-1023となっています。" ], "cell_type": "markdown", "metadata": {} }, { "source": [ "### Project2(温度・湿度の表示)\n", "Project2では、以下のアイテムを使用します。\n", "- Grove - 16x2 LCD(I2C1ポートに接続)\n", "- Grove - Temperature & Humidity Sensor(D18ポートに接続)\n", "\n", "\n", "\n", "Grove - 16x2 LCDは、I2C版の16x2LCDで、以下のライブラリを使用します。\n", "- Grove - LCD RGB Backlight\n", "- Grove - Temperature And Humidity Sensor\n", "\n", "VScodeのPlatformIOを使用する場合には、lib_depsを以下のように設定してください。\n", "```\n", "lib_deps =\n", " seeed-studio/Grove - LCD RGB Backlight @ ^1.0.0\n", "```\n", "\n", "\n" ], "cell_type": "markdown", "metadata": {} }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ] }