ゆるく楽しむプログラミング

M5Stamp-PICOのピン情報

M5Stamp-PICOのピンに関するソフトエア/ハードウエア的な情報

ピン配置

クリックで拡大

詳細資料は スイッチサイエンスの製品情報を参照


ソフトエア設定情報

ソフトエア的な定義情報

ハードウエア情報

ハードウエア的なスペック情報

オンボードBUTTON

GPIO39にアサイン

オンボードLED

GPIO27にカラーLED SK6812(マイコン内蔵LED)がアサインされている
SK6812のデータシートは秋月電子のSAK6812商品説明を参照
※動作クロックが(0.3μ秒とか)シビアすぎてArduinoIDEでの制御はムリ。
  Libraryはアセンブラ(のNOP処理に掛かる時間でタイミングを取る)で制御している模様。
  リセットは80μ秒LOW:リセット操作はArduinoIDEで制御可能

オンボードLEDサンプルスケッチ(FastLED)

STAMP-PICO Library スケッチ例 BASIC - LED
スケッチに不具合があるっぽく、チョットでも弄ると動かない / 電源を入れなおすと動かないなど非常に不安定
カラーコードを送信する前に SK6812リセット(80μ秒以上LOW)を送信する事で改善する

※ <>を全角<>に置き換えています。コピペの際は注意してください。
#include "Arduino.h"
#include <FastLED.h>

#define NUM_LEDS 1
#define DATA_PIN 27

CRGB leds[NUM_LEDS];

void setup() {
  FastLED.addLeds(leds, NUM_LEDS);  // GRB ordering is typical
}

void loop() {
  for ( int i = 0 ; i <=9 ; i++) {
    switch(i) {
      case 0:  leds[0] = CRGB::Red; break ;
      case 1:  leds[0] = CRGB::Orange; break ;
      case 2:  leds[0] = CRGB::Yellow; break ;
      case 3:  leds[0] = CRGB::Green; break ;
      case 4:  leds[0] = CRGB::Aqua; break ;
      case 5:  leds[0] = CRGB::Blue; break ;
      case 6:  leds[0] = CRGB::Purple; break ;
      case 7:  leds[0] = CRGB::Pink; break ;
      case 8:  leds[0] = CRGB::White; break ;
      default: leds[0] = CRGB::Black; break ;
    }
    // Turn the LED on, then pause
    digitalWrite(27,LOW) ; delay(1) ; // SK6812のリセット
    FastLED.show();
    delay(500);
  }
}