Above code is launched, when signal on input pin arrives, I just missed that line here.
I discarded the COUNT statement, and wrote software substitute, which accurately counts amount of pulses:
I'm interested, why count never works as it should.Code:UIDEDA: if pulsi=1 then FOR N=0 TO 300 'this is length of capture period, 300 for 16F870 @ 4mhz means approx 15ms. IF PULSI=1 THEN A=A+c c=0 d=1 ELSE B=B+d d=0 c=1 ENDIF NEXT IF A<>0 AND B<>0 THEN lcdout $FE,2, "A=",#A, " " lcdout $FE,$C0,"B=",#B, " " ENDIF A=0 B=0 endif GOTO UIDEDA


I’d sure like to see a disassembly of Count in your loop though, which I don’t have the tools to do handy at the moment.


Bookmarks