| ROBODYSSEY SYSTEMS LLC |
|
Product Catalog Code Page Policies Gallery Whats New Press Releases Resources Links Contact Us About Us Press Educators Page BasicX and Robotics book After School Mini Challenge! Free Robots to Kids Hack-A-Toy Shopping Cart |
Page24_2
|
| PIC Home | Previous Page | Next Page | Next Chapter |

PROGRAM NAME CREATED VIA NEW PROJECT!!
COPY AND PASTE FROM NEXT LINE DOWN
'***********************************
Dim Value as Integer
'***********************************************
Sub Procedure Forward
PortB = %00101101
end sub
'***********************************************
Sub Procedure Reverse
PortB = %00110011
end sub
'***********************************************
Sub Procedure T_Left
PortB = %00101011
end sub
'***********************************************
Sub Procedure T_Right
PortB = %00110101
end sub
'***********************************************
Sub Procedure Halt
PortB = %00000000
end sub
'***********************************************
Sub Procedure GetValue1
TrisA = %00001100 ' Set the pulsing ports to output
Value = 1 ' Start Value at 1
PortA = %00000001 ' Pulse the capacitor to fill it
Delay_ms(5) ' Charge up the capacitor
TrisA = %00001101 ' Set the port to collect data
While TestBit(PortA,0) > 0 ' Loop till the capacitor
Value = Value + 1 ' runs out of juice
Wend
If value > 100 Then ' If it goes over 100 then
Reverse
Delay_ms(200)
T_Right
Delay_ms(200)
Reverse
Delay_ms(200)
T_Right
Delay_ms(200)
End If
End Sub
'*************************
Sub Procedure GetValue2
TrisA = %00001100 ' Set the pulsing ports to output
Value = 1 ' Start Value at 1
PortA = %00000010 ' Pulse the capacitor to fill it
Delay_ms(5) ' Charge up the capacitor
TrisA = %00001110 ' Set the port to collect data
While TestBit(PortA,1) > 0 ' Loop till the capacitor
Value = Value + 1 ' runs out of juice
Wend
PortB = Value ' Display the data
If value > 100 Then ' If it goes over 100 then
Reverse
Delay_ms(200)
T_Left
Delay_ms(50)
Reverse
Delay_ms(200)
T_Left
Delay_ms(50)
End If
End Sub
'*************************
Main:
TrisB = %00000000
TrisA = %00001100 ' Need two inputs for switches
CMCON = %00000111
While True
GetValue1 ' Get left data
GetValue2 ' Get right Data
Forward
Wend
End.
| PIC Home | Previous Page | Next Page | Next Chapter |
| Home | Product Catalog | Shopping Cart | Resources | Links |
| Code Page | Policies | Gallery |