New At PIC's, need some help with code


Closed Thread
Results 1 to 20 of 20

Hybrid View

  1. #1
    SOHCKing03's Avatar
    SOHCKing03 Guest


    Did you find this post helpful? Yes | No

    Default

    Okay I updated it again...

    Code:
    '---------- FRONT TWO PICS' CODE
    X VAR BYTE
    ADCON1 = 7  'sets all as digital
    PORTB = 0  'clears port pins
    TRISB = 0  'sets as outputs
    
    Turn_On:                        'turns each LED on
         FOR X = 0 TO 7
              HIGH X
              PAUSE 200
         NEXT X
    
    PAUSE 7000                     'waits for sequence to finish
    
    
    Turn_Off:                       'turns each LED off
         FOR X = 0 TO 7
              LOW X
              PAUSE 200
         NEXT X
    
    PAUSE 6000
    
    GOTO Turn_On
    Code:
    '---------- SIDE TWO PICS' CODE
    X VAR BYTE
    ADCON1 = 7  'sets all as digital
    PORTB = 0  'clears all port pins
    PORTC = 0
    TRISB = 0  'sets all as outputs
    TRISC = 0
    TRISA.0 = 1  'set as input
    
    Waiting:                              'wait for high signal
    
         IF PORTA.0 = 1 THEN GOTO Turn_On
    
    GOTO Waiting
    
    Turn_On:                               'turns each LED on
         FOR X = 0 TO 15
              HIGH X
              PAUSE 200
         NEXT X
    
    
    Wait_Again:                       'waits for low signal
    
         IF PORTA.0 = 0 THEN GOTO Turn_Off
    
    GOTO Wait_Again
    
    Turn_Off:                              'turns each LED off
         FOR X = 0 to 15
              LOW X
              PAUSE 200
         NEXT X
    
    GOTO Waiting                     'restarts
    Code:
    '---------- BACK TWO PICS' CODE
    X VAR BYTE
    ADCON1 = 7  'sets all as digital
    PORTB = 0  'clears all port pins
    TRISB = 0  'sets all as outputs
    TRISA.0 = 1  'set as input
    
    Waiting:                             'wait for high signal
    
         IF PORTA.0 = 1 THEN GOTO Turn_On
    
    GOTO Waiting
    
    Turn_On:                             'turns each LED on
         FOR X = 0 TO 7
              HIGH X
              PAUSE 200
         NEXT X
    
    
    Wait_Again:                   'waits for low signal
    
         IF PORTA.0 = 0 THEN GOTO Turn_Off
    
    GOTO Wait_Again
    
    TURN_Off:                              'turns each LED off
         FOR X = 0 to 7
              LOW X
              PAUSE 200
         NEXT X
    
    GOTO Waiting                    'restarts
    I changed the names to unreserved names and I took out my INPUT statements.

  2. #2
    Join Date
    Jan 2006
    Location
    Istanbul
    Posts
    1,185


    Did you find this post helpful? Yes | No

    Default

    PAUSE 7000 'waits for sequence to finish

    This line will execute AFTER the sequence is finished.

    So you wait 7 seconds additionaly; and while waiting nothing will take place.
    "If the Earth were a single state, Istanbul would be its capital." Napoleon Bonaparte

  3. #3
    SOHCKing03's Avatar
    SOHCKing03 Guest


    Did you find this post helpful? Yes | No

    Default

    No, the first PIC does its sequencing then it waits 7 seconds for the next two PICs to sequence. Cause after an LED is turned on a 200ms pause happens so I have the first PIC waiting for all this to get done. The lights will stay on for another second or two then after the first PIC's pause is over the lights will begin to turn off.

  4. #4
    Join Date
    Jan 2006
    Location
    Istanbul
    Posts
    1,185


    Did you find this post helpful? Yes | No

    Default

    I see.

    Why Don't you do it by sending a kind of signal to each other?
    Just like making a pin high etc...?

    Would be safer I think.


    ---------------------
    "If the Earth were a single state, Istanbul would be its capital." Napoleon Bonaparte

  5. #5
    SOHCKing03's Avatar
    SOHCKing03 Guest


    Did you find this post helpful? Yes | No

    Default

    Quote Originally Posted by sayzer

    Why Don't you do it by sending a kind of signal to each other?

    ---------------------
    I am sending a signal from PIC to PIC. Pic one sends the high signal to PIC two to start the side sequencing and after that the second PIC sends a high signal to PIC three to start the back sequencing. I just didnt wanna have to run a wire all the way from the back to the front just to send a high signal. Plus, if I have a PAUSE then I can control how long I want the LEDS to stay on when they are all lit.

    But other than that, does it seem okay?

Similar Threads

  1. decoding quadrature encoders
    By ice in forum mel PIC BASIC Pro
    Replies: 93
    Last Post: - 28th February 2017, 09:02
  2. Nokia COLOR LCD PicBasicPro 2.50a example code
    By skimask in forum Code Examples
    Replies: 49
    Last Post: - 28th September 2011, 01:43
  3. Making Program Code Space your playground...
    By Melanie in forum Code Examples
    Replies: 15
    Last Post: - 19th July 2008, 08:26
  4. Code: Why is this code greater than 2000 words?
    By DrDreas in forum mel PIC BASIC Pro
    Replies: 9
    Last Post: - 1st June 2007, 19:51
  5. Writing code for battery operated projects
    By jessey in forum mel PIC BASIC Pro
    Replies: 15
    Last Post: - 16th June 2005, 03:39

Members who have read this thread : 0

You do not have permission to view the list of names.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts