Menu

LGT328 eeprom

2021-10-04
2021-10-06
  • William Roth

    William Roth - 2021-10-05

    @Stan

    AFIK ...the LGT8F328P has no "EEPROM". EEPROM can be emulated by setting aside a portion of Flash Memory for use as non-volatile data.

    If you look in the datafiles folder you will see multiple .dat files for the LGT8F328P. My best guess is that you need to define the chip based upon how much "EEPROM" you want to use.

    Example1:  #Chip  LGT8F328P-1
    
         This will set aside 1024 Bytes of Flash memory for use as "EEPROM"
         Program Memory will be reduced to 15872 Words
    
    Example2:  #Chip LGT8F328P-2
    
         This will set aside 2048 Bytes of Flash Memory for use as "EEPROM" 
         Program Memory will be reduced to 15360 Words
    

    William

     

    Last edit: William Roth 2021-10-05
  • stan cartwright

    stan cartwright - 2021-10-05

    Thanks for replying. I think that was what shared with program memory meant.
    It was something I came across while searching for lgt328, an arduino forum post about the lgt eeprom memory being different to mega328.
    but I've never used eeprom , can't think what I'd use it for, so not a problem for me yet.
    Does #Chip LGT8F328P-1 apply to other mega and pic and would "#Chip mega328p-1,16 work?
    I'll check the gcb help which has been updated a bit.

    I use GCB on a need to know basis for whatever I'm trying. The tech stuff is complicated for me.
    Say I wanted a dual hbridge pwm to drive a robot... I'd have to look up old code to see how I did it or start from scratch. In my case it's if you don't use it you lose it :)

    I've forgotten how to use picaxe. I look at picaxe code now and not a clue sometimes but then I always thought the variable handling was so simple it was hard to use in reality.

     
  • William Roth

    William Roth - 2021-10-05
    Does #Chip LGT8F328P-1 apply to other mega and pic
    and would "#Chip mega328p-1,16 work?
    

    No it does not. Only applies to LGT8F328P

     

    Last edit: William Roth 2021-10-05
  • stan cartwright

    stan cartwright - 2021-10-05

    Please, what is the difference between eeprom memory and program memory?
    Both are non volatile ie there after power down/up.
    I've seen questions on this forum about eeprom and why it's not working or other problems,
    so what is eeprom used for?
    May seem a silly question but I've never used eeprom. I may not be the only gcb user that's not used eeprom but has got by without it but after the work to get it working in gcb then what it can be used for in gcb would be useful info.

     
    • Anobium

      Anobium - 2021-10-05

      A lot of questions and are you asking specifically for the LGT? If not the subject is seriously huge.

      LGT Specific Answers

      There is no difference on the LGT between eeprom memory and program memory. The LGT sacrifices program memory to eeprom. The LGT eeprom read/write registers access the sacrificed program memory as eeprom.

      I could NOT find the specification for the LGT program memory. It will be something like this `program memory provides high-endurance nonvolatile storage of data with more than one million store cycles to program memory of greater than 200 years.'

      If eeprom is not working then that is purely an implementation issue. The libaries are created to support eeprom acorss all chips with eeprom.

      Why use eeprom ? A project than needs to have data stored and recalled like a set of settings or data logging.


      Non-LGT

      Memory. This is huge subject. There is HEF and SAF memory, there are microcontrollers where you can self-write to the program memory so you could write direct to program memory for later recall, some microcontrollers have no eeprom just program memory, some have eeprom and hef and some epprom and saf.

      The retention periods - check the microcontroller specifics

      The write method for program memory- some microcontrollers need a 32, 64 or 128 page write - always check the microcontrollers specifics

      The write method for eeprom memory- some microcontrollers need to have the eeprom erased when writing a new program to program memory. So, the programmer needs to read the eeprom and restore.

      Eeprom can be external to the microcontroller. Controlled via SPI or I2C.


      This just scratches the surface.

       

      Last edit: Anobium 2021-10-05
  • stan cartwright

    stan cartwright - 2021-10-06

    Thanks. Looks complicated, hence forum problems about it.
    I don't see the difference between reading eeprom to reading a table but then you can't write to a table.
    Eeprom must have it's uses... like saving created data after power down.
    I'll leave it for now but one day I'm sure I'll need it... until then.
    Cheers.

     
    • Anobium

      Anobium - 2021-10-06

      A day may come Stan.

      Not aware of real problems on the forum. Usage questions - yes. And, there is no open bugs re eeprom.

       

Log in to post a comment.

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.