Loop issues


Results 1 to 19 of 19

Thread: Loop issues

Threaded View

  1. #7
    Join Date
    Feb 2004
    Location
    Michigan, USA
    Posts
    305


    Did you find this post helpful? Yes | No

    Default Re: Loop issues

    Here's the entire code.
    Redport = 0 was a typo and should have been = 1. The loop worked once I disabled the external oscillator requirements for timer1.
    18F1320 using internal 8MHz oscillator (because I have hundreds of them from a past project! :-) )

    So this code is almost there functionally but has a couple of problems.

    The project is to run some high power LED's for either 60, 90, 120 seconds. There is a lid that has to be closed (SSW=1) before it will allow the LED's to be turned on. If the lid is open, it will just sit there and flash redport until the lid is closed. At this point with lid closed, the redport indicator led will be on solid and it'll move into main1.
    The main LED's get turned on with a momentary push button switch by the user. The timer should start, count up until Runtime is reached, switch off the LED's (enable1 and enable2 = 0) turn on greenport which is a green "done" indicator LED, and it should sit there until the lid is opened again.
    On lid open it should return to the first loop and flash redport until the lid is closed again. While the timer is counting and the main LED's are on it has to monitor for the lid being opened and shut off the main LED's and return to the first loop with the counter ready to start at Runtime.

    So that said here is what works:
    It sets up correctly, will load either 60, 90 or 120 in to Runtime, will sit and flash redport with the lid open.
    It will go in to main1 with a solid redport and wait for the pushbutton input (Startswitch)
    It will turn on the timer, count and when done will turn off the main LED's and turn on greenport and sit there until the lid is lifted (SSW=1)

    What isn't working is:
    Its not counting to the correct number in Runtime. I use greenport in the timer loop to basically have a pulse to look at on the scope showing that the timer is indeed running, and it is. The pulses are approx 1ms apart but they are only running 50% of the time. So say 100 pulses 1ms apart (I haven't counted the actual number yet) then nothing for 100ms then 100 pulses 1ms apart etc etc.
    Currently it runs for about 630ms if Runtime = 60, about 900ms if Runtime = 90 and never turns off if Runtime = 120. I added the thousandths to see if I could increase the on time and it doesn't respond, staying on all the time. When the lid is lifted it does interesting things and gives a wonderful flashing combination of the red green and blue indicator LED's. Clearly I'm setting up the timer wrong but I'm not sure what I'm doing wrong at this point and could use some fresh eyes.
    Last edited by jmgelba; - 28th September 2021 at 01:24.

Similar Threads

  1. Do Loop
    By skybox in forum mel PIC BASIC Pro
    Replies: 13
    Last Post: - 27th December 2012, 00:45
  2. Issues with a feedback loop.
    By jmgelba in forum mel PIC BASIC Pro
    Replies: 2
    Last Post: - 11th June 2012, 18:54
  3. if ... then loop
    By lerameur in forum mel PIC BASIC Pro
    Replies: 10
    Last Post: - 9th November 2010, 23:08
  4. Help with loop
    By wildbilly in forum mel PIC BASIC Pro
    Replies: 2
    Last Post: - 2nd January 2007, 16:59
  5. While LOOP
    By actionplus in forum mel PIC BASIC Pro
    Replies: 0
    Last Post: - 5th March 2004, 14:59

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