Hi me again,
i found out that the arduino had some problems i exchanged it at it worked fine ... sorry for that ...
but now here comes the next problem....
here is my final code
#include <Wire.h>
#include <Scheduler.h>
//Pump Frequenz
int F1 = 53;
int F2 = 51;
int F3 = 49;
int F4 = 47;
int F5 = 41;
int F6 = 43;
int F7 = 45;
//Für I²C Druck
int c = 0;
char dat[2];
void setup() {
Wire.begin();
Serial.begin(115200);
pinMode(19, OUTPUT);
pinMode(17, OUTPUT);
pinMode(15, OUTPUT);
pinMode(12, OUTPUT);
pinMode(2, OUTPUT);
pinMode(4, OUTPUT);
pinMode(7, OUTPUT);
pinMode(18, OUTPUT);
pinMode(16, OUTPUT);
pinMode(14, OUTPUT);
pinMode(1, OUTPUT);
pinMode(3, OUTPUT);
pinMode(5, OUTPUT);
pinMode(6, OUTPUT);
pinMode(42, OUTPUT);
pinMode(46, OUTPUT);
pinMode(50, OUTPUT);
pinMode(40, OUTPUT);
pinMode(36, OUTPUT);
pinMode(32, OUTPUT);
pinMode(26, OUTPUT);
pinMode(44, OUTPUT);
pinMode(48, OUTPUT);
pinMode(52, OUTPUT);
pinMode(38, OUTPUT);
pinMode(34, OUTPUT);
pinMode(28, OUTPUT);
pinMode(24, OUTPUT);
pinMode(F1, OUTPUT);
pinMode(F2, OUTPUT);
pinMode(F3, OUTPUT);
pinMode(F4, OUTPUT);
pinMode(F5, OUTPUT);
pinMode(F6, OUTPUT);
pinMode(F7, OUTPUT);
digitalWrite(19,LOW);
digitalWrite(17,LOW);
digitalWrite(15,LOW);
digitalWrite(12,LOW);
digitalWrite(2,LOW);
digitalWrite(4,LOW);
digitalWrite(7,LOW);
digitalWrite(18,LOW);
digitalWrite(16,LOW);
digitalWrite(14,LOW);
digitalWrite(1,LOW);
digitalWrite(3,LOW);
digitalWrite(5,LOW);
digitalWrite(6,LOW);
digitalWrite(42,LOW);
digitalWrite(46,LOW);
digitalWrite(50,LOW);
digitalWrite(40,LOW);
digitalWrite(36,LOW);
digitalWrite(32,LOW);
digitalWrite(26,LOW);
digitalWrite(44,LOW);
digitalWrite(48,LOW);
digitalWrite(52,LOW);
digitalWrite(38,LOW);
digitalWrite(34,LOW);
digitalWrite(28,LOW);
digitalWrite(24,LOW);
Scheduler.startLoop(loop2);
Scheduler.startLoop(loop3);
//Scheduler.startLoop(loop4);
// Scheduler.startLoop(loop5);
//Scheduler.startLoop(loop6);
//Scheduler.startLoop(loop7);
//Scheduler.startLoop(loop8);
//Scheduler.startLoop(loop9);
//Scheduler.startLoop(loop10);
void loop3() {
Wire.requestFrom(120,2);
c=0;
while (Wire.available())
{
c=c*256+Wire.read();
}
dat[0] = byte(lowByte(c));
dat[1] = byte(highByte(c));
Serial.println(dat);
delay(10);
}
void loop() {
if (Serial.available() > 0) {
int inByte = Serial.read();
switch (inByte) {
case 'a':
digitalWrite(19, HIGH);
digitalWrite(17, HIGH);
digitalWrite(15, HIGH);
digitalWrite(12, HIGH);
digitalWrite(2, HIGH);
digitalWrite(4, HIGH);
digitalWrite(7, HIGH);
delay(10);
Serial.write('A');
break;
case 'b':
digitalWrite(19, LOW);
digitalWrite(17, LOW);
digitalWrite(15, LOW);
digitalWrite(12, LOW);
digitalWrite(2, LOW);
digitalWrite(4, LOW);
digitalWrite(7, LOW);
delay(10);
Serial.write('B');
break;
case 'c':
digitalWrite(18, HIGH);
digitalWrite(16, HIGH);
digitalWrite(14, HIGH);
digitalWrite(1, HIGH);
digitalWrite(3, HIGH);
digitalWrite(5, HIGH);
digitalWrite(6, HIGH);
delay(10);
Serial.write('C');
break;
case 'd':
digitalWrite(18, LOW);
digitalWrite(16, LOW);
digitalWrite(14, LOW);
digitalWrite(1, LOW);
digitalWrite(3, LOW);
digitalWrite(5, LOW);
digitalWrite(6, LOW);
delay(10);
Serial.write('D');
break;
case 'e':
digitalWrite(42,HIGH);
digitalWrite(46,HIGH);
digitalWrite(50,HIGH);
digitalWrite(40,HIGH);
digitalWrite(36,HIGH);
digitalWrite(32,HIGH);
digitalWrite(26,HIGH);
delay(10);
Serial.write('E');
break;
case 'f':
digitalWrite(42,LOW);
digitalWrite(46,LOW);
digitalWrite(50,LOW);
digitalWrite(40,LOW);
digitalWrite(36,LOW);
digitalWrite(32,LOW);
digitalWrite(26,LOW);
delay(10);
Serial.write('F');
break;
case 'g':
digitalWrite(44,HIGH);
digitalWrite(48,HIGH);
digitalWrite(52,HIGH);
digitalWrite(38,HIGH);
digitalWrite(34,HIGH);
digitalWrite(28,HIGH);
digitalWrite(24,HIGH);
delay(10);
Serial.write('G');
break;
case 'h':
digitalWrite(44,LOW);
digitalWrite(48,LOW);
digitalWrite(52,LOW);
digitalWrite(38,LOW);
digitalWrite(34,LOW);
digitalWrite(28,LOW);
digitalWrite(24,LOW);
delay(10);
Serial.write('H');
break;
}
}
yield(); //
}
// Arbeitsfrequenz Pumpen
void loop2() {
digitalWrite(F1, HIGH);
digitalWrite(F2, HIGH);
digitalWrite(F3, HIGH);
digitalWrite(F4, HIGH);
digitalWrite(F5, HIGH);
digitalWrite(F6, HIGH);
digitalWrite(F7, HIGH);
delay(5);
digitalWrite(F1, LOW);
digitalWrite(F2, LOW);
digitalWrite(F3, LOW);
digitalWrite(F4, LOW);
digitalWrite(F5, LOW);
digitalWrite(F6, LOW);
digitalWrite(F7, LOW);
delay(5); // 100Hz
}
/*
void loop4() {
if (Serial.available() > 0) {
int inByte = Serial.read();
switch (inByte) {
case 'c':
digitalWrite(44, HIGH);
digitalWrite(13, HIGH);
break;
case 'd':
digitalWrite(44, LOW);
digitalWrite(13, LOW);
break;
}
}
yield(); //
}
*/
This code should control all of the named pins .... (works)
Should give an answer Serial write if certain case is chosen.... (doesn´t work)
Should write sensorvalues as low and high byte .... (doesn´t work)
again the problem appears if too many ports are programmed.... for example if i reduce the pin number to 12 it works.... more than 12 doesn´t work ....
is this usual or is the arduino too slow ?`or did i do any programming mistakes ?