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
Page21_4
Home Product Catalog Shopping Cart Resources Links
Code Page Policies Gallery

Seperate Signals


PIC Home Previous Page Next Page Next Chapter

Page: 1 2 3 4

You are ready to program

Copy and Pastable code


Be sure to create a new project first.
For a review of creating projects please go here
Paste BELOW your program name!
PROGRAM NAME CREATED VIA NEW PROJECT!!
COPY AND PASTE FROM NEXT LINE DOWN
'***********************************
Dim x as Integer
Dim duration as Integer
'***********************************************
Sub Procedure Forward
    PortB = %00000000
    Delay_ms(10)
    PortB = %00101101
    Delay_ms(50)
end sub
'***********************************************
Sub Procedure Reverse
    PortB = %00000000
    Delay_ms(10)
    PortB = %00110011
    Delay_ms(50)
end sub
'***********************************************
Sub Procedure T_Left
    PortB = %00000000
    Delay_ms(10)
    PortB = %00101011
    Delay_ms(50)
end sub
'***********************************************
Sub Procedure T_Right
    PortB = %00000000
    Delay_ms(10)
    PortB = %00110101
    Delay_ms(50)
end sub
'***********************************************
Sub Procedure Halt
    PortB = %00000000
end sub
'***********************************************
Sub Procedure ScanLeft
x = 50
While x > 1
  x = x - 1
  PortA = %00000010
  Delay_us(18)
  PortA = %00000000
  Delay_us(10)
Wend
If TestBit(PortA,2) = 0 Then
       'Reverse step****
       duration = 20     ' Make this number bigger to make it do it longer
       While duration > 0
       Reverse
       duration = duration - 1
       Wend
       'T_Right step****
       duration = 10     ' Make this number bigger to make it do it longer
       While duration > 0
       T_Right
       duration = duration - 1
       Wend
End if
end sub
'***********************************************
Sub Procedure ScanRight
x = 50
While x > 1
  x = x - 1
  PortA = %00000001
  Delay_us(18)
  PortA = %00000000
  Delay_us(10)
Wend
If TestBit(PortA,3) = 0 Then
       'Reverse step****
       duration = 20     ' Make this number bigger to make it do it longer
       While duration > 0
       Reverse
       duration = duration - 1
       Wend
       'T_Right step****
       duration = 10     ' Make this number bigger to make it do it longer
       While duration > 0
       T_Left
       duration = duration - 1
       Wend
End if
end sub
'***********************************************
Main:
TrisB = %00000000
TrisA = %00001100
CMCON = %00000111

'**************************************
While True
ScanLeft
ScanRight
Forward
Wend
End.
Click here to see a Quicktime movie (.mov) both scanners in action.
PIC Home Previous Page Next Page Next Chapter

Page: 1 2 3 4

Robodyssey and the Robodyssey logo are trademarks of Robodyssey Systems, LLC
PIC is a registered trademark of Microchip Technology Inc. in the U.S. and other countries.
MikroBasic is a registered trademark of mikroElectronika Inc. in the U.S. and other countries.
Home Product Catalog Shopping Cart Resources Links
Code Page Policies Gallery