12f675_fuse_about_to_blow!


Closed Thread
Results 1 to 40 of 929

Hybrid View

  1. #1
    Join Date
    Feb 2010
    Location
    I live in the UK
    Posts
    562


    Did you find this post helpful? Yes | No

    Default

    Getting an LCD up and running might be a good experiment, and it's also a handy tool for debugging code later.
    I'm game, don't forget I couldn't turn an LED on a few weeks ago though!

    Dave

  2. #2
    Join Date
    Nov 2003
    Location
    Wellton, U.S.A.
    Posts
    5,924


    Did you find this post helpful? Yes | No

    Default

    Is there a surplus store over there like this?
    http://www.allelectronics.com/make-a...splays-/1.html
    Dave
    Always wear safety glasses while programming.

  3. #3
    Join Date
    Feb 2010
    Location
    I live in the UK
    Posts
    562


    Did you find this post helpful? Yes | No

    Default

    There's RS

    They have these (and I've got an account).

    http://uk.rs-online.com/web/search/s...20Alphanumeric

    Or Maplins again:

    http://www.maplin.co.uk/Search.aspx?...=lcd&source=15

    The RS range seems far superior.

    Dave
    Last edited by LEDave; - 28th March 2010 at 19:59.

  4. #4
    Join Date
    Jan 2009
    Location
    California, USA
    Posts
    323


    Did you find this post helpful? Yes | No

    Default

    Quote Originally Posted by LEDave View Post
    I'm game, don't forget I couldn't turn an LED on a few weeks ago though!
    Sure, most of us couldn't flash an LED when we started.
    But Mackrackit is doing a nice job of getting you up to speed, and a parallel LCD display isn't that hard to set up.

    You'll need to set up 4 pins on your PIC, all on one port for your LCD data lines, and 2 more pins for Enable and Register Select
    You'll need to make sure that those 6 pins are setup as digital outputs and any other stuff that shares those pins (ADC, comparators, etc) are disabled.
    Once the pins are set correctly then you'll add a few DEFINE's to your program to tell the PIC where to find your LCD and what pins are what.
    Like this, but with YOUR particular ports and pin numbers that you are using:

    Code:
    DEFINE LCD_DREG PORTD    'Set LCD Data port
    DEFINE LCD_DBIT 4        'Set starting Data bit (0 or 4) if 4-bit bus
    DEFINE LCD_RSREG PORTE   'Set LCD Register Select port
    DEFINE LCD_RSBIT 0       'Set LCD Register Select bit
    DEFINE LCD_EREG PORTE    'Set LCD Enable port
    DEFINE LCD_EBIT 2        'Set LCD Enable bit
    DEFINE LCD_BITS 4        'Set LCD bus size (4 or 8 bits)
    Then it's just a matter of using the LCDOUT command...
    Code:
    LCDOUT $fe, 2, "HELLO WORLD"
    or if you wanted to display the content of a variable as a decimal number:

    Code:
    myvariable		var		word
    myvariable = 3955
    
    LCDUT $fe, 2, DEC myvariable
    It's easy!


    steve

  5. #5
    Join Date
    Nov 2003
    Location
    Wellton, U.S.A.
    Posts
    5,924


    Did you find this post helpful? Yes | No

    Default

    Has anyone used this one? Is it any good?
    http://uk.rs-online.com/web/search/s...duct&R=5326795
    Dave
    Always wear safety glasses while programming.

  6. #6
    Join Date
    Feb 2010
    Location
    I live in the UK
    Posts
    562


    Did you find this post helpful? Yes | No

    Default

    Hi B_B

    Ok, I'm sold

    These LCD's look like great fun and a really useful interface.

    When my first LED came on, that was brilliant. When my seven segment display /
    driver lit up and counted up to nine that was cool.

    These look in a different league, can't wait.

    Dave

  7. #7
    Join Date
    Jan 2009
    Location
    California, USA
    Posts
    323


    Did you find this post helpful? Yes | No

    Default

    Quote Originally Posted by mackrackit View Post
    Has anyone used this one? Is it any good?
    http://uk.rs-online.com/web/search/s...duct&R=5326795
    That one doesn't look like it's got a backlight. One with a backlight would be sexier...

    Here in the US, I find these to be a good deal for $10USD.
    http://search.digikey.com/scripts/Dk...ywords=c0220az
    Don't know about UK vendors.


    steve
    Last edited by Byte_Butcher; - 28th March 2010 at 22:44.

  8. #8
    Join Date
    Nov 2003
    Location
    Wellton, U.S.A.
    Posts
    5,924


    Did you find this post helpful? Yes | No

    Default

    Interrupt on change (interrupt when the state of a pin changes)
    Again this is a snippet from another chip (16F873A) but it will give you something to start with.
    Code:
    ON INTERRUPT GOTO MYINT
    INTCON = %10010000   'PORTB.0 CHANGE
    
    DISABLE
    MYINT:
    IF PORTB.0 = 1 THEN
        ' DO SOMETHING
    ELSE
        'DO SOMETHING ELSE
    ENDIF
    INTCON.1 = 0
    RESUME
    ENABLE
     'THE ABOVE WILL ALSO DEBOUNCE THE SWITCH
    Dave
    Always wear safety glasses while programming.

  9. #9
    Join Date
    Feb 2010
    Location
    I live in the UK
    Posts
    562


    Did you find this post helpful? Yes | No

    Default

    Cheers mackrackit,

    I made a little table up that other newbies who are maybe following this thread might find useful. It hinges on what you said the other day about setting the prescaler (TMR0) and using that with (I = I +1) to set up a delay of your choosing.

    BIT TMR0 Time_u_secs HZ
    000 1:2 512 976
    001 1:4 1024 488
    010 1:8 2048 244
    011 1:16 4096 122
    100 1:32 8192 61
    101 1:64 16384 30.5
    110 1:128 32768 15.2
    111 1:256 65536 7.6
    Didn't quite come out as planned and every time I edit it the changes I make it just resets.
    Still, I'm sure you get the drift (might be worth checking my figures as well though).


    Any thoughts on that LCD?

    Dave
    Last edited by LEDave; - 29th March 2010 at 16:39.

  10. #10
    Join Date
    Feb 2010
    Location
    I live in the UK
    Posts
    562


    Did you find this post helpful? Yes | No

    Default

    I've just had a thought.

    It's probably dangerous for me to offer advice right now, no matter how well intensioned. As some of my conclusions maybe a little off the mark.

    Dave

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