WRITE TO Eeprom


Closed Thread
Results 1 to 11 of 11

Thread: WRITE TO Eeprom

Hybrid View

  1. #1
    skimask's Avatar
    skimask Guest


    Did you find this post helpful? Yes | No

    Default

    I'm fairly sure that you have to shut off ALL interrupts while trying to write to eeprom or flash, not just DISABLE interrupts. You actually have to disable the global interrupt enable flag, then reenable it when the write is done.

  2. #2
    Join Date
    Apr 2007
    Location
    Santiago, Chile
    Posts
    77


    Did you find this post helpful? Yes | No

    Default

    Quote Originally Posted by skimask View Post
    I'm fairly sure that you have to shut off ALL interrupts while trying to write to eeprom or flash, not just DISABLE interrupts. You actually have to disable the global interrupt enable flag, then reenable it when the write is done.

    I Tried moving the WRITE statement to the main program like this but it still does'nt write:

    INTCON = %00000000 'DISABLE GLOBAL & PERIFERAL INTERRUPTS
    WRITE 0, PRESET
    PAUSE 10
    INTCON = %11000000

    Regards

    Chris

  3. #3
    Join Date
    Sep 2004
    Location
    montreal, canada
    Posts
    6,898


    Did you find this post helpful? Yes | No

    Default

    mm, seems the ISR is too long anyways... can you post your whole code and tell which PIC you're using?

    Not sure if it's a good idea to write to a EEPROM in a USART ISR.
    Steve

    It's not a bug, it's a random feature.
    There's no problem, only learning opportunities.

  4. #4
    Join Date
    Apr 2007
    Location
    Santiago, Chile
    Posts
    77


    Did you find this post helpful? Yes | No

    Default

    [I am using a 16F877A at 20MHz

    I use timer1 to check the dip switch settings for the device's address and the UASRT one for data in.

    Sorry for using attachment, my code was too long for the forum page
    Attached Files Attached Files

  5. #5
    skimask's Avatar
    skimask Guest


    Did you find this post helpful? Yes | No

    Default

    Quote Originally Posted by crhomberg View Post
    [I am using a 16F877A at 20MHz

    I use timer1 to check the dip switch settings for the device's address and the UASRT one for data in.

    Sorry for using attachment, my code was too long for the forum page
    Isolate the problem...
    Start with a program without any serial input or output, no nothing, just a couple of LEDs and maybe a button or two.
    Write and Read the EEPROM and make the LEDs show you if the write/read works correctly or not, use the buttons to increment the addresses and data to be written.
    Something tells me that something else in your program isn't working right in the first place, making you think that the EEPROM isn't being written correctly...
    Maybe PBP work for you...not the other way around...

  6. #6
    Join Date
    Nov 2007
    Location
    Cebu, Philippines
    Posts
    14


    Did you find this post helpful? Yes | No

    Post read and write

    Hi everyone!

    I can read and write now using the pic16f84a but I can't do that using pic16f877a.
    Is there any lines I have to add inorder to allow reading and writing the eeprom?
    I've read the 16f877a datasheet. It is stated there that I have to disable all interrupts before writing. I've tried that but still won't work.

    A working simple code for reading and writing the internal eeprom of pic16f877a is all I need.

    Please help me...
    Thank you in advance.

Similar Threads

  1. Can't read sequential addresses in external EEPROM
    By tjkelly in forum mel PIC BASIC Pro
    Replies: 2
    Last Post: - 18th February 2010, 14:46
  2. Problem with I2C EEPROM addressing
    By Atom058 in forum General
    Replies: 14
    Last Post: - 3rd November 2009, 03:17
  3. PIC16F684 + LCD to use the 256bytes of EEPROM - HELP
    By xnihilo in forum mel PIC BASIC Pro
    Replies: 3
    Last Post: - 7th March 2008, 14:19
  4. Microcontroller with 2 way paging application problem
    By oneohthree in forum mel PIC BASIC Pro
    Replies: 30
    Last Post: - 20th April 2007, 17:27
  5. word variable to 25lc640
    By TONIGALEA in forum mel PIC BASIC Pro
    Replies: 5
    Last Post: - 6th July 2004, 19: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