PIC Data EEPROM

Do you have a question? Post it now! No Registration Necessary

Translate This Thread From English to

Threaded View


Hi All
I am currently using a 18f4431 to control motor position. During program
execution I have a few variables I store to the internal Data EEProm. Some
of these get updated every time the motor is commanded to move, and some
only during a calibration routine which may only happen once. But all
variables get read during a power up. The problem is these varibles are
getting corrupt after a power down-power up. During exectution I am reading
the data EEProm values and outputting them to a HyperTerm  screen, so it
appears the are being stored Okay. I have the brown out voltage enabled to
2.0 v. I don't understand how come they are not correct after a power down,
could anyone please Help.



Re: PIC Data EEPROM


Quoted text here. Click to load it

Suggest you to increase the brown out voltage. Also i fail to
understand how you have set the BOV to 2.0 as datasheet tells me you
can't set the BOV to 2.0V for 18F4431

-dK

Re: PIC Data EEPROM


Yes you are correct should of been _BORV_20_2L. I did try and increase value
to _BORV_42_0L with no success. However I was able to resolve this problem,
seems with slow Vdd rise times (<10ms) the EEPROM may get locked. Doing a
dummy write to an unused EEPROM location will unlock the EEPROM and stored
values will be read correctly. Thank you for the response.
Quoted text here. Click to load it

Suggest you to increase the brown out voltage. Also i fail to
understand how you have set the BOV to 2.0 as datasheet tells me you
can't set the BOV to 2.0V for 18F4431

-dK



Re: PIC Data EEPROM


Well after a few rounds with microchip support I finally got to the bottom
of the problem. My solution stated early was not correct. The dummy write I
was doing included this instruction (bcf  EECON1,CFGS    ,0) which can get
ramdomly set during a power. This instruction is not included in the
datasheet read/write data EEProm examples, I inserted it after I couldn't
get the write routine to work correctly. But everything is fine now, so if
anyone else has this problem be sure to clear this bit.
Quoted text here. Click to load it



Site Timeline