Assignment 4 - Codes
Servomotor...
DEFINE OSC 4
DEFINE ADC_BITS 10
DEFINE ADC_CLOCK 3
DEFINE ADC_SAMPLEuS 50
restPeriod con 20
minValue con 60
maxValue con 240
TRISA = %11111111
ADCON1 = %10000010
ADCvar VAR WORD
pulsewidth VAR WORD
myCount VAR BYTE
grLed var portd.1
txPin var portc.6
FOR i=0 to 5
high grled
pause 500
low grled
pause 500
NEXT
main:
adcin 0, ADCvar
serout2 txPin, 16468, ["ADCvar is ", DEC ADCvar, 13, 10]
adcvar = 2*adcvar
if ADCvar < minValue then
pulsewidth = minvalue
else
pulsewidth = adcvar
endif
if adcvar > maxvalue then
pulsewidth = maxvalue
else
pulsewidth = adcvar
endif
pulsout portd.0, pulsewidth
pause restPeriod
goto main