Internal Flash Writes + USB Conflict

Go To Last Post
3 posts / 0 new
Author
Message
#1
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Hi everyone,

 

I have a continuous USB isochronous transfer going on in my SAM3U. Whenever I perform writes to internal flash (to save configuration data), the USB gets "interrupted" and my USB isochronous transfers start to get screwed up/glitchy. How do I prevent this USB glitch? Should I pause USB until the flash writes are complete? 

 

I'm using Atmel's ASF efc and udphs files. 

 

Thanks!

This topic has a solution.
Last Edited: Fri. Jul 28, 2017 - 01:20 PM
This reply has been marked as the solution. 
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

It probably takes a few milliseconds to write to flash. During that time interrupts are disabled as an erase or write to flash cause it to stop working. This means you can't execute code from flash during that period.
I'd suggest you look at using external eeprom.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Hi Kartman

 

Thanks for the reply. That's the conclusion I got too. I guess I'll look into the eeprom solution.