Arduino手習い~PWM周波数モード!ソーラーピックアップ | ..あちゃ! no mic's

..あちゃ! no mic's

クラウドファンディング予定~2026年度
何度でもチャレンジ!
ただいまソーラーピックアップのテスト中

SANTA no Mix


追記2024/12/10

現在の状況、ピックアップ

これを元に、記事を焼き直したいと考えています、

https://ameblo.jp/math-physics/entry-12820786908.html?frm=theme



元記事、失敗の報告になります、きちんとやり直したいと思っています。


弦楽器の光ピックアップのテスト中。

状況説明、ソーラーパネル4基一括でギターアンプに繋がってマス。

フォトカプラで電気的に繋がってないArduinoがぶら下がっていマス。

LED4灯を連続的に点滅させ、機械的トレモロを再現しようとしているところデス。

https://ameblo.jp/math-physics/entry-12630027644.html




https://forum.arduino.cc/index.php?topic=133950.0

 

 上記、サイトを参考に、PWMの制限外すとしか言えない、IoT端末じゃないので安心してバカ出来る感、


本日、時間切れ、というか、こんな穏やかな光はLEDイルミネーションにはないんじゃないかとニンマリ、数時間、眺めていた、のデス。
私的に満月に気持ち引き上げられるより、嬉しい、
 
PWMの周波数あげると、ノイズがほとんど消えた、赤外線LEDでも似たようなとこ。


残りのノイズ消していきマス。

直感的にフォトカプラの出側に手を着けたのですが、余裕があれば、お粗末さ解消を目指しマス。


フォトカプラ入力10Ω~1kΩ接続でノイズ小さくなりますが、なしでやりました。

データシートでオームの法則の基本でしょうが、ツッコミどころ満載。

デューケイ値を適切に設定でいいのじゃない、


手打ちでザッパに220μFを4個配置、どこまで綺麗かを耳で判断なので、LEDのギラツキとメリハリが無くなるのも嫌で。

Arduinoの信号をフォトカプラでLED点滅させています。
16CHのマルチプレクサのスイッチングでソーラーピックアップも捨てきれないので、敢えて。

とりあえず、明日、ヲトダシ。
LED試しに赤も混ぜた。

イキッてナンボ~マンボ~
鬼滅の刃、風~影響されたい、、、扉おーぶん、

ArduinoUNOのスケッチ、AVRのご本尊サマ、アセンブリがコーディングされても自分には遠いので。
オマジナイをしてあります。

走り書きのスケッチで申し訳、、、

#include <wiring_private.h>
int led1 = 5;
int led2 = 6;
int led3 = 9;
int led4 = 10;

void setup() {                
  pinMode(led1, OUTPUT);
  pinMode(led2, OUTPUT);
  pinMode(led3, OUTPUT);
  pinMode(led4, OUTPUT);
}

void loop() {
  cbi(TCCR0B, CS02);
  cbi(TCCR0B, CS01);
  sbi(TCCR0B, CS00);
  cbi(TCCR1B, CS12);
  cbi(TCCR1B, CS11);
  sbi(TCCR1B, CS10);

  while(1) {
  for (int i=0; i<256; i=i+1) {
  analogWrite(led1, i);
  delay(150);
  }
  for (int j=0; j<256; j=j+1) {
  analogWrite(led2, j);
  delay(150);
  }
  for (int i=255; i>0; i=i-1) {
  analogWrite(led1, i);
  delay(150);
  }
  for (int i=0; i<256; i=i+1) {
  analogWrite(led3, i);
  delay(150);
  }
  for (int j=255; j>0; j=j-1) {
  analogWrite(led2, j);
  delay(150);
  }
  for (int j=0; j<256; j=j+1) {
  analogWrite(led4, j);
  delay(150);
  }
  for (int i=255; i>0; i=i-1) {
  analogWrite(led3, i);   
  delay(150);
  }
  for (int j=255; j>0; j=j-1) {
  analogWrite(led4, j);
  delay(150); 
  }  
}  
}