Catégories
Liens
Ceci est une ancienne révision du document !
/* * Pd > Arduino UNO * 6 sorties MOSFETS PWM * */ int pin, _pwm; void setup() { Serial.begin(19200); pinMode(3, OUTPUT); pinMode(5, OUTPUT); pinMode(6, OUTPUT); pinMode(9, OUTPUT); pinMode(10, OUTPUT); pinMode(11, OUTPUT); digitalWrite(3, LOW); digitalWrite(5, LOW); digitalWrite(6, LOW); digitalWrite(9, LOW); digitalWrite(10, LOW); digitalWrite(11, LOW); // --- PWM frequency for D5 & D6 ---- //TCCR0B = TCCR0B & B11111000 | B00000001; // 62500.00 Hz //TCCR0B = TCCR0B & B11111000 | B00000010; // 7812.50 Hz //TCCR0B = TCCR0B & B11111000 | B00000011; // 976.56 Hz //TCCR0B = TCCR0B & B11111000 | B00000100; // 244.14 Hz //TCCR0B = TCCR0B & B11111000 | B00000101; // 61.04 Hz // ---- PWM frequency for D9 & D10 ---- //TCCR1B = TCCR1B & B11111000 | B00000001; // 31372.55 Hz //TCCR1B = TCCR1B & B11111000 | B00000010; // 3921.16 Hz //TCCR1B = TCCR1B & B11111000 | B00000011; // 490.20 Hz //TCCR1B = TCCR1B & B11111000 | B00000100; // 122.55 Hz //TCCR1B = TCCR1B & B11111000 | B00000101; // 30.64 Hz // ---- PWM frequency for D3 & D11 ---- //TCCR2B = TCCR2B & B11111000 | B00000001; // 31372.55 Hz //TCCR2B = TCCR2B & B11111000 | B00000010; // 3921.16 Hz //TCCR2B = TCCR2B & B11111000 | B00000011; // 980.39 Hz //TCCR2B = TCCR2B & B11111000 | B00000100; // 490.20 Hz //TCCR2B = TCCR2B & B11111000 | B00000101; // 245.10 Hz //TCCR2B = TCCR2B & B11111000 | B00000110; // 122.55 Hz //TCCR2B = TCCR2B & B11111000 | B00000111; // 30.64 Hz } void loop() { while (Serial.available()) { pin = Serial.parseInt(); _pwm = Serial.parseInt(); if (Serial.read() == '\n') { /* Serial.print(pin); Serial.print(" "); Serial.println(_pwm); */ analogWrite(pin, constrain(_pwm,0,255)); } } }
// Pd > Arduino MEGA // 6 sorties MOSFETS PWM int id; int arg; void setup() { Serial.begin(19200); pinMode(13, OUTPUT); pinMode(12, OUTPUT); pinMode(11, OUTPUT); pinMode(10, OUTPUT); pinMode(9, OUTPUT); pinMode(8, OUTPUT); digitalWrite(13, LOW); digitalWrite(12, LOW); digitalWrite(11, LOW); digitalWrite(10, LOW); digitalWrite(9, LOW); digitalWrite(8, LOW); //MEGA : D4 & D13 //TCCR0B = TCCR0B & B11111000 | B00000001; // 62500.00 Hz //TCCR0B = TCCR0B & B11111000 | B00000010; // 7812.50 Hz //TCCR0B = TCCR0B & B11111000 | B00000011; // 976.56 Hz //TCCR0B = TCCR0B & B11111000 | B00000100; // 244.14 Hz //TCCR0B = TCCR0B & B11111000 | B00000101; // 61.04 Hz //MEGA : D11 & D12 //TCCR1B = TCCR1B & B11111000 | B00000001; //31372.55 Hz //TCCR1B = TCCR1B & B11111000 | B00000010; //3921.16 Hz //TCCR1B = TCCR1B & B11111000 | B00000011; //490.20 Hz //TCCR1B = TCCR1B & B11111000 | B00000100; //122.55 Hz //TCCR1B = TCCR1B & B11111000 | B00000101; //30.64 Hz //MEGA : D9 & D10 //TCCR2B = TCCR2B & B11111000 | B00000001; //31372.55 Hz //TCCR2B = TCCR2B & B11111000 | B00000010; //3921.16 Hz //TCCR2B = TCCR2B & B11111000 | B00000011; //490.20 Hz //TCCR2B = TCCR2B & B11111000 | B00000100; //122.55 Hz //TCCR2B = TCCR2B & B11111000 | B00000101; //30.64 Hz //MEGA : D2, D3 & D5 //TCCR3B = TCCR3B & B11111000 | B00000001; //31372.55 Hz //TCCR3B = TCCR3B & B11111000 | B00000010; //3921.16 Hz //TCCR3B = TCCR3B & B11111000 | B00000011; //490.20 Hz //TCCR3B = TCCR3B & B11111000 | B00000100; //122.55 Hz //TCCR3B = TCCR3B & B11111000 | B00000101; //30.64 Hz //MEGA : D6, D7 & D8 //TCCR4B = TCCR4B & B11111000 | B00000001; //31372.55 Hz //TCCR4B = TCCR4B & B11111000 | B00000010; //3921.16 Hz //TCCR4B = TCCR4B & B11111000 | B00000011; //490.20 Hz //TCCR4B = TCCR4B & B11111000 | B00000100; //122.55 Hz //TCCR4B = TCCR4B & B11111000 | B00000101; //30.64 Hz //MEGA : D44, D45 & D46 //TCCR5B = TCCR5B & B11111000 | B00000001; //31372.55 Hz //TCCR5B = TCCR5B & B11111000 | B00000010; //3921.16 Hz //TCCR5B = TCCR5B & B11111000 | B00000011; //490.20 Hz //TCCR5B = TCCR5B & B11111000 | B00000100; //122.55 Hz //TCCR5B = TCCR5B & B11111000 | B00000101; //30.64 Hz } void loop() { while (Serial.available()) { id = Serial.parseInt(); arg = Serial.parseInt(); if (Serial.read() == '\n') { /* Serial.print("CMD : "); Serial.print(id); Serial.print(" "); Serial.println(arg); */ analogWrite(id, constrain(arg,0,255)); } } }