Dave - What is your definition of 'erratic'?
width = mon*1
Oh... Can you tell me what is the point of the *1 part of this line?
Basically your program states that if mon is >2 then your HPWM will be at around 12.5% otherwise it will be solid ON. There's not much else that happens... or at least it would do if you remembered a GOTO MAIN after the last IF statement!!! Because as it is, your code is slamming straight into the OneP section.
You could rewrite your code as...
Code:
Main:
ADCIN 3, mon ' Read channel AN3 to Mon
width = mon
if width > 2 then
hpwm 1,32,2000
else
hpwm 1,255,2000
endif
pause 1000
goto main
I'm also assuming you've set TRISIO and such properly.
Bookmarks