@ device pic16f877
define osc 4
define adc_bits 8
main:
trisb =$00
trisa =$ff
adcon1 = 7
lamp var portb
sw1 var porta.0
sw2 var porta.1
lamp=0
while(1)
if(!sw1) then
gosub speed1
pause 50
endif
if(!sw2) then
gosub speed2
pause 50
endif
pause 10
wend
end
speed1:
lamp =$80
pause 200
while(sw2)
lamp = lamp >> 1 ' shift right
if lamp = $00 then lamp = $80
pause 200
wend
return
speed2:
lamp =$01
pause 200
while(sw1)
lamp = lamp << 1 'shift left
if lamp = $00 then lamp = $01
pause 200
wend
return
Related projects
PIC16F877 Driving LCD in 4-Bit Mode using PIC16F877 with Proteus Simulation
Introduction This microcontroller project shows how a PIC16F877 can drive an LCD display using 4-bit mode inside a Proteus simulation.The project demonstrates...
Programmers & ICSP · PIC16F877AEPE PIC/LCD Demo using PIC16F877 with Proteus Simulation
IntroductionThe EPE PIC/LCD Demo is a classic microcontroller project that demonstrates how a PIC16F877 can fully control a PG12864F graphical LCD.Designed as...
Motors & Robotics · PIC16F877AEfficient Sun-Following Robot: A Solar Tracker with Microcontroller Control
Abstract The impending global challenge of dwindling non-renewable fuel resources underscores the urgency of transitioning towards renewable energy alternatives like solar power....
Peripheral Tutorials · PIC18F4550PICDEM FS USB Mass Storage Device using PIC18F4550 with Proteus Simulation
Introduction This microcontroller project demonstrates how to simulate a USB Mass Storage Device (MSD) using the PIC18F4550 in a Proteus simulation environment....
Peripheral TutorialsHands-On Digital I/O Lab with PIC18F46K22 Microcontroller
PIC18F46K22 Microcontroller Digital I/O specifically explores the design of simple combinational circuits using the digital I/O capabilities of the PIC18F46K22 microcontroller. Moving...
Peripheral TutorialsDesign for manufacturing and assembly: DFA&DFM
Product developers understand the challenges involved in creating a market-ready product. Even experienced designers often go through multiple prototype iterations before reaching...