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