追記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);
}
}
}
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);
}
}
}




