V
Vijay s
Guest
Labas
Parašiau programos priemonė RPM ..Aš naudoju surinkimo ir Timer1 ...Capture yra sukonfigūruotas taip, kad fiksuoti kiekvieno 16 didėjantis krašto ...
Aš naudoju PIC18F4550 su 48MHz PLL ...RPM Matavimo tikslumas yra gera diapazone 300-20.000 ...Kaip pagerinti savo asortimentą ..kai aš tai priemonė 30000rpm ..Rezultatas virpesių tarp 30.000 ir 15.000 ...Tas pats atsitinka su kitomis dideles RPM ...kodėl svyravimo tarp pradinės ir pusė RPM ....
Čia yra mano kodą priemonė RPM
KodasWORD MeasureRPM (tuščia)
(
statinis WORD PrevPeriod = 0;
statinis WORD CurPeriod = 0;
DWORD Period = 0;CurPeriod = ReadPulseTime (); / * Fotograf kas 16 didėjančių kraštas * /
Period = (rollover * (DWORD) 0xffff) - (DWORD) PrevPeriod (DWORD) CurPeriod; / * Calc intervalus tarp dviejų 16 Ankštiniai * /
Period = Laikotarpis>> 4; / * padalinti iš 16 Apskaičiuoti vienetinio impulso intervalas * /
PrevPeriod = CurPeriod; / * Parduotuvė srovės impulsiniai laikotarpis * /RPM = (DWORD) (90000000.36/Period) / * Calc RPM * /
Apvirtimas = 0; / * Timer1 Roll Over * /
)
Parašiau programos priemonė RPM ..Aš naudoju surinkimo ir Timer1 ...Capture yra sukonfigūruotas taip, kad fiksuoti kiekvieno 16 didėjantis krašto ...
Aš naudoju PIC18F4550 su 48MHz PLL ...RPM Matavimo tikslumas yra gera diapazone 300-20.000 ...Kaip pagerinti savo asortimentą ..kai aš tai priemonė 30000rpm ..Rezultatas virpesių tarp 30.000 ir 15.000 ...Tas pats atsitinka su kitomis dideles RPM ...kodėl svyravimo tarp pradinės ir pusė RPM ....
Čia yra mano kodą priemonė RPM
KodasWORD MeasureRPM (tuščia)
(
statinis WORD PrevPeriod = 0;
statinis WORD CurPeriod = 0;
DWORD Period = 0;CurPeriod = ReadPulseTime (); / * Fotograf kas 16 didėjančių kraštas * /
Period = (rollover * (DWORD) 0xffff) - (DWORD) PrevPeriod (DWORD) CurPeriod; / * Calc intervalus tarp dviejų 16 Ankštiniai * /
Period = Laikotarpis>> 4; / * padalinti iš 16 Apskaičiuoti vienetinio impulso intervalas * /
PrevPeriod = CurPeriod; / * Parduotuvė srovės impulsiniai laikotarpis * /RPM = (DWORD) (90000000.36/Period) / * Calc RPM * /
Apvirtimas = 0; / * Timer1 Roll Over * /
)