من نیاز به استفاده از اینترآپت اورفلو تایمر 1 دارم و چنین برنامه ای را نوشته ام. نمیدانم چرا کار نمیکند . یا تایمر 1 به اور فلو نمی رسد که نتایج نشان میدهد چندین بار آن را رد میکند. یا تعریف تابع اور فلو مشکلی دارد. لطفا راهنمایی کنید.
کد:
volatile uint32_t measured = 0 ; volatile uint32_t now = 0; volatile uint8_t OFC=0,IOF=0; float modified_measure=0; void setup() { // put your setup code here, to run once: Serial.begin(2000000); TCCR1A=0; TCCR1B=B00000100; TCNT1=0; TIMSK1=B00000100; EICRA=B00000010; interrupts(); } ISR(TIMER1_OVF_vect) { OFC++;digitalWrite(13, HIGH);} void loop() { // put your main code here, to run repeatedly: Serial.print(TCNT1,BIN); Serial.print('\t'); Serial.println(OFC); }