16f687 - Where is the data stored?


Closed Thread
Results 1 to 17 of 17

Hybrid View

  1. #1
    Join Date
    Jan 2012
    Location
    Grid EN19MV
    Posts
    159


    Did you find this post helpful? Yes | No

    Default Re: 16f687 - Where is the data stored?

    Quote Originally Posted by rmteo View Post
    Storing spaces is extremely inefficient. Create a routine that pads the message with the appropriate number of leading/trailing spaces before sending it out to the LCD.
    I suppose I could store each message without spaces, then write a unique "stop character".

    Then I could just count the characters to the stop character, then calculate the number of spaces needed to pad it to the center of a 16 character line.

    The only thing is accessing the right message. I intended to send the message number as part of the data block. I was going to calculate the start address of the message from the message number, and retrieve 16 characters. I guess I could just send the start address as the message number, then retrieve characters until I encounter the stop character. That would work, and is WAY more efficient (in both memory space and processor cycles).

    Thanks!

  2. #2
    Join Date
    Oct 2005
    Location
    Sweden
    Posts
    3,627


    Did you find this post helpful? Yes | No

    Default Re: 16f687 - Where is the data stored?

    Why not clear the screen, move the cursor to the first position, print the message?
    Code:
    CursorPos VAR BYTE          ' 0=first line first char, 64=second line first char (I think, usally...)
    
    CursorPos = 1
    GOSUB Clear_and_set_cursor
    LCDOUT "Report to pit"
    
    Pause 2000
    
    CursorPos = 5
    GOSUB Clear_and_set_cursor
    LCDOUT "STOP"
    
    ' and so on
    
    END
    
    Clear_and_set_cursor:
       LCDOUT $FE, 1, $FE, ($80 + cursorposition)
       RETURN
    /Henrik.

  3. #3
    Join Date
    Jan 2012
    Location
    Grid EN19MV
    Posts
    159


    Did you find this post helpful? Yes | No

    Default Re: 16f687 - Where is the data stored?

    Quote Originally Posted by HenrikOlsson View Post
    Why not clear the screen, move the cursor to the first position, print the message?
    /Henrik.
    Exactly what I plan on doing. Since each line is usually somewhat less than 16 characters, though, I want to have some leading spaces to bring each line to the center of the display. I'll just calculate how many characters less than 16 a line is, then divide that by two and use that as my pad in the front.

    I just figure having it centered makes it easier for the driver to read when he's going fast a trying to avoid someone else.

Members who have read this thread : 1

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