
Originally Posted by
Sherbrook
This works on PIC16F873A so should work on PIC16F877A
Don't forget to pull MCLR high
@ DEVICE PIC16F873A, HS_OSC 'Xtal OSC
@ DEVICE PIC16F873A, WDT_OFF 'WDT off
@ DEVICE PIC16F873A, PWRT_ON 'Power-up timer on
@ DEVICE PIC16F873A, BOD_OFF 'Brown-out detect off
ADCON1 = %00000110 'All PORTA digital
define osc 4
TRISA = %00000010
TRISB = %00000000
PORTB = %00000000
w var word
r var word
a var word
tr var PORTA.0 'Trig pin
ec var PORTA.1 'Echo pin
PORTB = %11111111 'Flash LED on PORTB
pause 500 'to check PIC running
PORTB = %00000000
w = 0
low tr
Main :
high tr
pauseus 10
low tr
pulsin ec,1,w
r = w/58
if r < 10 then
PORTB = %11111111
else
PORTB = %00000000
endif
pause 200
goto main
end
Bookmarks