shutter_dmx
Différences
Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
| shutter_dmx [2020/03/22 17:21] – [Maquette] Mushussu | shutter_dmx [2020/12/01 17:43] (Version actuelle) – ↷ Liens modifiés en raison d'un déplacement. serge | ||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| ====== Réalisation d'un shutter DMX ====== | ====== Réalisation d'un shutter DMX ====== | ||
| + | ===== Matériel ===== | ||
| + | ^Qtt^Nom | ||
| + | |1 |Embase XLR ♂ |5 points | ||
| + | |1 |Embase XLR ♀ |5 points | ||
| + | |3 |Commutateur DIP |10 voies | ||
| + | |1 |Support DIL |28 voies | ||
| + | |1 |Micro-contrôleur | ||
| + | |1 |Quartz | ||
| + | |2 |Condensateur | ||
| + | |1 |Résistance | ||
| + | |1 |Résistance | ||
| + | ===== Code ==== | ||
| + | Test de fonctionnement du servo-moteur | ||
| + | <code c> | ||
| + | #include < | ||
| + | #include < | ||
| + | |||
| + | #define FCPU 8000000 | ||
| + | #define DIVISEUR 8 | ||
| + | #define FREQ_PWM 50 // Frénquen de la PWM en Hertz | ||
| + | #define M_ICR1 (FCPU/ | ||
| + | |||
| + | int main(void) { | ||
| + | DDRB |= (1 << DDB1); // OC1A en sortie | ||
| + | TCCR1A |= (1 << WGM11); // Mode Fast PWM avec comme limite ICR1 | ||
| + | TCCR1A |= (1 << COM1A1) | (1 << COM1A0); // Inversion | ||
| + | TCCR1B |= (1 << CS11); // Diviseur de fréquence 8 | ||
| + | TCCR1B |= (1 << WGM12) | (1 << WGM13); // Mode Fast PWM avec comme limite ICR1 | ||
| + | ICR1 = M_ICR1; | ||
| + | | ||
| + | while(1) { | ||
| + | OCR1A = ICR1 - 2250; | ||
| + | _delay_ms(3000); | ||
| + | OCR1A = ICR1 - 550; | ||
| + | _delay_ms(3000); | ||
| + | } | ||
| + | } | ||
| + | </ | ||
| + | Pour lire l' | ||
| + | <code c> | ||
| + | // Configuration pour la lecture de l' | ||
| + | DDRB &= ~(1 << DDB2) & ~(1 << DDB3) & ~(1 << DDB4) & ~(1 << DDB5); // PB2, PB3, PB4, PB5 en entrée | ||
| + | PORTB |= (1 << PB2) | (1 << PB3) | (1 << PB4) | (1 << PB5); // Résitances de tirage haut | ||
| + | DDRC &= (1 << DDC0) &~(1 << DDC1) & ~(1 << DDC2) & ~(1 << DDC3); // PC0, PC1, PC2, PC3 en entrée | ||
| + | PORTC |= (1 << PC0) | (1 << PC1) | (1 << PC2) | (1 << PC3); // Résitances de tirage haut | ||
| + | DDRD &= (1 << DDD2) & ~(1 << DDD3) & ~(1 << DDD4) & ~(1 << DDD5); // PD2, PD3, PD4, PD5 en entrée | ||
| + | PORTD |= (1 << PD2) | (1 << PD3) | (1 << PD4) | (1 << PD5); // Résitances de tirage haut | ||
| + | | ||
| + | void adresse() { | ||
| + | uint16_t adresse = (~(PIND >> 2) & 0b00001111) * 100 + (~PINC & 0b00001111) * 10 + (~(PINB >> 2) & 0b00001111); | ||
| + | if (adresse == 5) { | ||
| + | PORTC |= (1 << PC5); | ||
| + | } else { | ||
| + | PORTC &= ~(1 << PC5); | ||
| + | } | ||
| + | } | ||
| + | </ | ||
| ===== Réalisation ===== | ===== Réalisation ===== | ||
| ==== Maquette ==== | ==== Maquette ==== | ||
| - | {{ : | + | {{ media_12: |
| + | |||
| + | La partie occultante sera sans doute réalisée avec des plaques epoxy de circuit imprimé. Elles résistent bien à la chaleur.Dimension 150 x 200x 1.6. | ||
| + | |||
| + | Le bras du servo-moteur sera lui aussi en epoxy. | ||
| + | |||
| + | Les rails de guidage seront en Téflon : [[https:// | ||
| ===== Matériel ===== | ===== Matériel ===== | ||
| [[https:// | [[https:// | ||
| - | https:// | + | [[https:// |
| + | [[https:// | ||
| + | Primaire pour coller ensuite le Téflon : LOCTITE SF 770 | ||
| + | SWI3-5-E-ST Alimentation Mouser | ||
| {{tag> c dmx micro_controleur sylvain }} | {{tag> c dmx micro_controleur sylvain }} | ||
shutter_dmx.1584897717.txt.gz · Dernière modification : de Mushussu
