You could get 31.25% just by one addition and a couple of shiftoperations.
Code:
Dummy1 VAR WORD
Delay VAR WORD
OldPulseTime VAR WORD
Dummy1 = OldPulseTime >> 2 'Divide by 4 (=0.25)
Delay = Dummy1 >> 2 'Divide by 4 again(=0.0625)
Delay = Delay + Dummy1 'Add them to get 0.3125
Don't know how fast it will be, but it feels like it should be faster than 48 cycles. I also have a gutfeeling that the following code will be even faster.
Code:
Dummy1 VAR WORD
Delay VAR WORD
OldPulseTime VAR WORD
Dummy1 = OldPulseTime >> 1 'Divide by 2 (=0.5)
Dummy1 = Dummy1 >> 1 'Divide by 2 (=0.25)
Delay = Dummy1 >> 1 'Divide by 2 (=0.125)
Delay = Delay >> 1 'Divide by 2 (=0.0625)
Delay = Delay + Dummy1 'Add them to get 0.3125
I can't run any of the code right now, but perhaps Darrel could measure theese with one of his ingenious macros?
Bookmarks