We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
I am using Temic 89C51RD2 microcontroller and I've tried to resolve following problem for a long time. I have not any good ideas left, so I turn to you. My problem is: I'm using LARGE memory model. I try to program internal EEPROM with code (only short part) #pragma large #include "D:/Keil/C51/inc/temic/89C51RD2.h" //added with EETIM and EECON #define XBYTE ((unsigned char volatile xdata*) 0) bit b; EETIM = 0x37; //XTAL FREQ 11 MHz EECON |= 0x02; //Enable EEPROM memory Set EEE bit XBYTE [0x0000] = 0x02; //write data example EECON = 0x52; //start programming EECON = 0xA2; //... do { b = EECON & 0x01; //wait for EEBUSY-bit down -> programming done } while (b); What's wrong. The program is always hanging in the programming phase. If I use small memory model it won't hang. Reading from the EEPROM is also ok.
Hi, Mark, couple of weeks ago your experience was 13 years. Moving back in time? Merry Christmas to you! Michael.
Yes, I decided that I didn't really start 8051 programming until 1988. Of course if you include all of 1988 and 2000 I guess we get 13 years. :-) - Mark