ねえ、何かあれば傷ついた。このコードを改善するために読むことができるコマンドは? 少なくとも現在は機能していますが、微調整が必要です:)
ご覧のとおり、コードは非常に乱雑で、読むのが面倒です。誰かが助けてくれることを願っています。
よろしくお願いします。
int potPin = 0;
int motorPin = 11;
int potValue = 0;
int on = 0;
int L2 = 2;
int L3 = 3;
int L4 = 4;
int L5 = 5;
int L6 = 6;
int L7 = 7;
int L8 = 8;
int L9 = 9;
int L10 = 10;
int M2 = 40;
int M3 = 75;
int M4 = 100;
int M5 = 125;
int M6 = 150;
int M7 = 175;
int M8 = 200;
int M9 = 225;
int M10 = 250;
void setup()
{
pinMode( motorPin,OUTPUT);
pinMode( potPin, INPUT);
pinMode (L2, OUTPUT);
pinMode (L3, OUTPUT);
pinMode (L4, OUTPUT);
pinMode (L5, OUTPUT);
pinMode (L6, OUTPUT);
pinMode (L7, OUTPUT);
pinMode (L8, OUTPUT);
pinMode (L9, OUTPUT);
pinMode (L10, OUTPUT);
Serial.begin(9600);
}
void loop()
{
Monitor();
Motorspeed();
LedBar();
};
void Monitor()
{
int val = Serial.read() - '0';
if (val == 1)
{
Serial.println("Motor is ON");
on = 1;
digitalWrite(motorPin, HIGH);
}
else if (val == 0)
{
Serial.println("Motor is OFF");
on = 0;
digitalWrite(motorPin, LOW);
}
Serial.flush();
}
void Motorspeed()
{
potValue = analogRead(potPin) /4;
if(on == 1)
{
analogWrite(motorPin, potValue);
}
}
void LedBar()
{
potValue = analogRead(potPin) /4;
if(on == 1){
if (on == 1, potValue > M2) {
digitalWrite(L2, HIGH);
}
else {
digitalWrite(L2, LOW);
}
if (on == 1, potValue > M3) {
digitalWrite(L3, HIGH);
}
else {
digitalWrite(L3, LOW);
}
if (on == 1, potValue > M4) {
digitalWrite(L4, HIGH);
}
else {
digitalWrite(L4, LOW);
}
if (on == 1, potValue > M5) {
digitalWrite(L5, HIGH);
}
else {
digitalWrite(L5, LOW);
}
if (on == 1, potValue > M6) {
digitalWrite(L6, HIGH);
}
else {
digitalWrite(L6, LOW);
}
if (on == 1, potValue > M7) {
digitalWrite(L7, HIGH);
}
else {
digitalWrite(L7, LOW);
}
if (on == 1, potValue > M8) {
digitalWrite(L8, HIGH);
}
else {
digitalWrite(L8, LOW);
}
if (on == 1, potValue > M9) {
digitalWrite(L9, HIGH);
}
else {
digitalWrite(L9, LOW);
}
if (on == 1, potValue > M10) {
digitalWrite(L10, HIGH);
}
else {
digitalWrite(L10, LOW);
}}
else
{
digitalWrite(2, LOW);
digitalWrite(3, LOW);
digitalWrite(4, LOW);
digitalWrite(5, LOW);
digitalWrite(6, LOW);
digitalWrite(7, LOW);
digitalWrite(8, LOW);
digitalWrite(9, LOW);
digitalWrite(10, LOW);
}
}