I am having problems with the EMI interface. I am interfacing a M28W320CB flash memory to a STR710 using Bank 0. I am trying to read the manufactuer and device ID's. I can ead the manufacturer ID ok (0x20) but cannot read the device ID. All I get back is 0x0088 when it should be 0x88BB. Looking at the address and data lines with a logic analyser I can see that the correct address and data is being set. My code is //Read Manufacturer ID program_Flash_write(ANY_ADDR,READ_SIGNATURE); readback=program_Flash_read(EMI_BANK0+MANUFACTURER_CODE_ADDR); program_Flash_write(ANY_ADDR,READ_MEMORY); //Read Device ID program_Flash_write(ANY_ADDR,READ_SIGNATURE); readBack =program_Flash_read(EMI_BANK0+DEVICE_CODE_ADDR); program_Flash_write(ANY_ADDR,READ_MEMORY); What is going on? I am using the Greenhills Compiler. Thanks Vaughan
Thanks for that, I tried it but with no luck. Just one thing though, the address you used to read the device ID is 0x60000002, according to the flash datasheet shouldn't this be 0x60000001? If I use this address the result I get is 0xbb004388. Thanks Vaughan
My initial findings were using our target board. I have just run the code you suggested on the eval board (MB393) and it works fine as written. I suspect that it might be something to do with my target board. Cheers Vaughan