Posted on May 17, 2011 at 12:34Problem solved. Finally :p So, the problem was that I had ADC set up to trigger an analog watchdog interrupt. The watchdog range was stored on Flash. After the flash was erased, the range was erased to 0, so as the ana...
Posted on May 17, 2011 at 12:34Another update. I tried my code on another chip (brand new), and I have the same problem. So the cause of this problem is not (as I suspected) the fact that I tried to write a single byte to Flash. Has anybody ever exp...
Posted on May 17, 2011 at 12:34Thanks for your reply, however, yes, I did unlock the Flash. This is the code part: #define FLASH_START_ADDR 0x08006000 .... FLASH_Unlock(); FLASH_ErasePage(FLASH_START_ADDR); // returns FLASH_COMPLETE FLASH_ProgramWor...
Posted on May 17, 2011 at 12:34A minor update: the processor freezes when it reaches the following line in FLASH_ProgramHalfWord() function: *((vu16*)Address) = Data; In the meantime I have tried to use various latency times, tried to switch prefetc...
Posted on May 17, 2011 at 12:34Hi, I am using STM32F103 Cortex chip in ''Big'' package (the one with most Flash available). My application receives some data over USB, stores it on the Flash, and later retrieves the data. I was using functions as de...