rijden 3 7seg en telt pulsen op hetzelfde moment?

D

david90

Guest
Ik gebruik AT90S2313 en het rijdt 3 7seg met 3 controle lijn (10 pin gebruikt).De refresh rate tussen de 7segment is ongeveer 250Hz.Het probleem im gezien is hoe de microcontroller programma pulsen die bij 1 kHz tellen tijdens het rijden de 3 7seg op hetzelfde moment.Wanneer het programma wordt de 250Hz vertraging subroutine voor 7segment, mist het couting de pulsen omdat ze sneller zijn dan 250Hz.Is onderbreken met behulp van het antwoord?

 
Hoi,

Kunt u niet gekozen voor een frequentie hoger dan 1Khz?

regrads,

 
In multi-tasking omgeving je interrupts gebruiken!
Voor een aantal regels code een interrupt routine duurt slechts een paar ls ..maar je zal nooit een puls missen ..
Groeten,
IanP

 
Voor kritische gebeurtenissen moet je onderbreekt gebruiken.Ik bedoel, het tellen van de pulsen is het belangrijkste hier.Verfrissende het scherm kan enigszins worden vertraagd, zonder dat enige problemen.Het is als een van de beeldschermen helderder zou worden soms, maar niemand ooit zal zien dat verschil.

 
Zal de timer 2313 nog meetellen als een interrupt optreden?De timer lijkt onafhankelijk van de belangrijkste code.

Ook wat is de beste manier om pulsen tellen met 2313?Het totaal aantal pulsen kan oplopen tot 5 miljoen.Is er een manier om de timer-functie gebruiken om het te doen?

 
Niet alleen zal de teller blijven rekenen, maar de teller zelf kan een interrupt genereren als het overflows.Dus je kunt gebruiken dat onderbreken om daadwerkelijk increment een ander register.En als dat register overloopt u increment andere.
In principe krijg je een interrupt elke 256 of 65.536 telt, waardoor het tellen hoge snelheid pulsen veel gemakkelijker.

 

Welcome to EDABoard.com

Sponsor

Back
Top