Bonjour,
Pouvez-vous m'aider à comprendre ce programme ? C'est une alarme qui détecte les mouvements grâce à 2 interrupteur au mercure. Le MicroC est un Attiny 13.
Je comprends pas du tout la partie en gras. Ceci est un extrait du programme.
Comment je peux le modifier si je veux remplacer les SW mercure par ceux-ci https://www.sparkfun.com/products/retired/12011
Merci
Code:/*------------------------------------------------------------------------- I Fonction : main I ------------------------------------------------------------------------- I Action : Programme principal I I Param entrée : Rien I I Retour : Rien I I I ------------------------------------------------------------------------*/ void main(void) { byte memo_sw; // Etat des détecteurs de choc [B][B]// Crystal Oscillator division factor: 1 #pragma optsize- CLKPR=0x80; CLKPR=0x00; #ifdef _OPTIMIZE_SIZE_ #pragma optsize+ #endif // Input/Output Ports initialization // Port B initialization // Func5=In Func4=In Func3=In Func2=In Func1=Out Func0=Out // State5=P State4=P State3=P State2=P State1=P State0=0 PORTB=0x3E; DDRB=0x02; // Timer/Counter 0 initialization // Clock source: System Clock // Clock value: 0,500 kHz // Mode: CTC top=OCR0A // OC0A output: Disconnected // OC0B output: Disconnected TCCR0A=0x02; TCCR0B=0x04; TCNT0=0x00; OCR0A=0x31; OCR0B=0x00; // External Interrupt(s) initialization // INT0: Off // Interrupt on any change on pins PCINT0-5: Off GIMSK=0x00; MCUCR=0x00; // Timer/Counter 0 Interrupt(s) initialization TIMSK0=0x04; // Analog Comparator initialization // Analog Comparator: Off ACSR=0x80; ADCSRB=0x00; // Global enable interrupts #asm("sei"); // Petit bip à la mise sous tension OUT_ALARM = 1; delay_ms(20); OUT_ALARM = 0;
-----