AnsweredAssumed Answered

Help interpreting USB OTG docs for stm32f1xx

Question asked by shibakov.alex on Sep 5, 2012
Latest reply on Sep 6, 2012 by shibakov.alex
Hi all!

The software design process we use requires that every piece of code is heavily tagged with references to the original programming manuals. Sometimes these tags are added during code reviews, etc. The question I have is therefore a bit unusual:

Where in the reference manual can one find any information on
how to use the data FIFOs?

The docs use the terms `push to FIFO' and `pop FIFO' but there are no definitions of what that means. The register map gives an `address range' for the FIFO with an annotation
`push/pop to this region'. We have written the code by looking up the fw library supplied by ST (we cannot use the library for a number of reasons, one being it does not meet our code standards) so the the way to `push to FIFO' is simply to write to the bottom address in the `address range' mentioned in the manual (`address range' should really be called `offset range') but the manual is mum about whether writing to any address in the range will work or such uses are illegal, etc. So is there a more detailed description of the FIFO somewhere else? The whole section on USB OTG is pretty much useless for writing code: one has to look up the code examples from ST which slows the process down somewhat and interferes with our design flow.