Do PICs goto sleep?


Closed Thread
Results 1 to 18 of 18

Hybrid View

  1. #1
    Join Date
    Feb 2005
    Location
    Essex, UK
    Posts
    154


    Did you find this post helpful? Yes | No

    Default

    Its not the RF module as the program works fine for the first minute or so.

    Also, all the hybrid RF module does is output a HIGH or a LOW on three ports which are fed into the PIC. So all the PIC is reading is a 1 or a 0.

    Any other suggestions,

    Steve

  2. #2
    J_Brittian's Avatar
    J_Brittian Guest


    Did you find this post helpful? Yes | No

    Default

    Is MaskSwitch ending up outside your parameters? What happens if you add a case else statement?

  3. #3
    Join Date
    Feb 2005
    Location
    Essex, UK
    Posts
    154


    Did you find this post helpful? Yes | No

    Default

    Hmm, got me thinking now.

    If i only wanted to look at RC0 , RC1 & RC2, i have now changed the TRISC to read:

    Code:
    TRISC = %00000111	' Set PORTC (0-2 input) rest Outputs
    Is this correct?

    Also, would any change need to be done for this line? What does the $07 mean?

    Code:
    MaskSwitch=PORTC & $07
    What would you suggest i put in the CASE ELSE statement. A return back to Main? It may be worth puttin in this statement to capture any other event.

    Thank you.

  4. #4
    J_Brittian's Avatar
    J_Brittian Guest


    Did you find this post helpful? Yes | No

    Default

    Actually I was going to suggest an output of some kind, maybe an led. If MaskSwitch gets outside of your parameters in someway you could effectively end up in a main ... goto main loop.

  5. #5
    Join Date
    Feb 2005
    Location
    Essex, UK
    Posts
    154


    Did you find this post helpful? Yes | No

    Default

    OK, I've added the following

    Code:
    Main:
        MaskSwitch=PORTC & $07
            Select Case MaskSwitch
              Case 1 '%00000001 or SW1
                Gosub Procedure_SW1
    
              Case 2 '%00000010 or SW2
                Gosub Procedure_SW2
    
              Case 4 '%00000100 or SW3
                Gosub Procedure_SW3
              Case Else
                Gosub Error
        End Select
    Goto Main
    
    Error:
        For loop = 1 to 5
            Red = 1
            Pause 100
            Red = 0
            Pause 100
        Next Loop
    Return
    Now the LED is flashing all the time, so i presume the CASE ELSE is true, which i guess means something else is happening.

    I think it may be due to the following:

    Code:
    MaskSwitch=PORTC & $07
    What does the $07 represent. Is this saying all of the PORTS on C. If so, what will it be if i want just PORTC.0, PORTC.1 and PORTC.2.

    Thank you, i think i'm getting there!!

  6. #6
    Join Date
    Dec 2003
    Location
    Wichita KS
    Posts
    511


    Did you find this post helpful? Yes | No

    Default

    I agree with IngVar,

    You have no way of knowing if the case statement is something other than 1,2,4. Put a default case in there with a blinking light....If that blinking light comes on... there is your problem.

    Dwayne
    Ability to Fly:
    Hurling yourself towards the ground, and missing.

    Engineers that Contribute to flying:
    Both optimists and pessimists contribute to the society. The optimist invents the aeroplane, the pessimist the parachute

    Pilots that are Flying:
    Those who know their limitations, and respect the green side of the grass...

  7. #7
    Join Date
    Feb 2005
    Location
    Essex, UK
    Posts
    154


    Did you find this post helpful? Yes | No

    Default

    Dwayne,

    Is what i've done above your posting wrong then? If so, could you post the modification to the code you are suggesting.

    Many thanks.

  8. #8
    J_Brittian's Avatar
    J_Brittian Guest


    Did you find this post helpful? Yes | No

    Default

    $07 = %00000111

    Steve,
    If you push two buttons at the same time or if you're not using pull down/up resistors you end up with MaskSwitch = %00000110 which isn't an option.

  9. #9
    Join Date
    Feb 2005
    Location
    Essex, UK
    Posts
    154


    Did you find this post helpful? Yes | No

    Default

    Bugger, i think it might be due to no pull-down resistors.

    I've attahced my circuit, would this be the case?

    What values are recommended ?

    Hopefully that is the problem which is reasonably easy to fix.

    Regards,

    Steve
    Attached Images Attached Images  

  10. #10
    J_Brittian's Avatar
    J_Brittian Guest


    Did you find this post helpful? Yes | No

    Default

    Try 5K. Hopefully that fixes your problem.

Similar Threads

  1. Making a menu
    By chrisshortys in forum mel PIC BASIC Pro
    Replies: 36
    Last Post: - 12th November 2008, 19:54
  2. Replies: 14
    Last Post: - 26th September 2007, 05:41
  3. Problems with RC2 and RC3
    By Christopher4187 in forum General
    Replies: 11
    Last Post: - 29th May 2006, 17:19
  4. 3 HPWM channels
    By docwisdom in forum mel PIC BASIC Pro
    Replies: 9
    Last Post: - 4th April 2006, 02:43
  5. Output PIC module
    By freelancebee in forum mel PIC BASIC Pro
    Replies: 5
    Last Post: - 12th September 2005, 20:10

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