(Apologies if posted twice, couldn't find message) I am trying to get Flash write working on LPC2138 with no sucess. Code is below. Any help appriciated. typedef void (*IAP)(unsigned int [],unsigned int []); IAP iap_bypointer; void iap_byfunction (unsigned *cmd,unsigned *rslt,unsigned entry); unsigned int command[5]; unsigned int result[5]; char Ram_Arry[512] = "Hello World"; char *Ram_Pointer; void flash_write(void) { unsigned char index; iap_bypointer = (IAP) 0x7FFFFFF1; //set IAP entry address in function pointer //Ram_Pointer = &Ram_Arry[0]; Ram_Pointer = 0x40005000; for (index = 0; index<0x0B; index++) //Copy data to be written to flash into the RAM { *Ram_Pointer = Ram_Arry[index]; Ram_Pointer++; } //Ram_Pointer = &Ram_Arry[0]; command[0] = 0x36; //command code for "Read part ID" iap_bypointer(command,result); command[0] = 50; //Prepare sector ten for a write operayion command[1] = 10; command[2] = 10; iap_bypointer(command,result); command[0] = 52; //erase sector ten command[1] = 10; command[2] = 10; command[3] = 60000; //Cclk == 60Mhz Pll is disabled in startup code iap_bypointer(command,result); command[0] = 50; //Prepare sector ten for a write operayion command[1] = 10; command[2] = 10; iap_bypointer(command,result); command[0] = 51; //write 512 bytes from address 0x40005000 command[1] = 0x00018000; //to 0x00018000 in flash memory; command[2] = 0x40005000; command[3] = 512; command[4] = 60000; while(1) { ; } }

LPC2138 Flash Write Problem
Started by ●June 25, 2008
Reply by ●June 25, 20082008-06-25
Op Wed, 25 Jun 2008 13:22:56 +0200 schreef bm_seo <brian.murphy.seo@gmail.com>:> I am trying to get Flash write working on LPC2138 with no sucess. > Code is below. Any help appriciated.What parts fail and what parts succeed and how did you determine that? -- Gemaakt met Opera's revolutionaire e-mailprogramma: http://www.opera.com/mail/
Reply by ●June 26, 20082008-06-26
On Wed, 25 Jun 2008 06:22:56 -0500, "bm_seo" <brian.murphy.seo@gmail.com> wrote:>(Apologies if posted twice, couldn't find message) > >I am trying to get Flash write working on LPC2138 with no sucess. >Code is below. Any help appriciated. > >typedef void (*IAP)(unsigned int [],unsigned int []); >IAP iap_bypointer; >void iap_byfunction (unsigned *cmd,unsigned *rslt,unsigned entry); > >unsigned int command[5]; >unsigned int result[5]; >char Ram_Arry[512] = "Hello World"; >char *Ram_Pointer;>void flash_write(void)Is this procedure being executed from RAM? If not, that is your problem.
