On a Saturday morning, I was struggling on establishing an SPI communication between my STM32F4 and an ADC chip. I did not have my logic analyzer nor my oscilloscope with me, so I thought I was screwed. But after researching on the internet, I found that an STM32F4Discovery board could be turned a 16 channel 20Mhz Logic Analyzer! Brilliant!
All I had to do was flash the board with a bin file from a website. Here's the website where I got the files & the directions:
-
https://code.google.com/p/logicdiscovery/ <= Go to the download page for the download
-
http://habrahabr.ru/post/165853/ <= The page is in Russian, unless you can read Russian, Google Translate!
Note: Thanks to the user who made this awesomeness! All thanks goes to him/her
This program interfaces with a program called open logic sniffer. It is a fully featured logic analyzer program (operating on the SUMP protocol) and is open source, available on Win, OS X, and Linux(yay!)
Here's the download link:
http://www.lxtreme.nl/ols/#Download/(By the way, the link is also in the guide above.)
This literally saved my a$$ from hours of trouble shooting. Also, if you do not have a logic analyzer and are on a tight budget, I think this could be a solution. STM32F4Disc is only 15 bucks on digikey, so it can be a cheap, powerful alternative. Once you get a proper logic analyzer, use it as a development board, like it was suppose to be
Here's the spec given on the author's Google project page:
Features
Sampling rate up to 20MHz
16 channels
up to 24k samples
Edge sensitive triggers
RLE encoding of samples for longer runs
USB and UART interfaces for connecting to host
SUMP-compatible protocol
Limitations
Comapred to original SUMP device and it's clones
Maximum sampling rate is 20MHz instead of 200MHz
No noise filtering
RLE only up to 5MHz
Channel groups can be only first or first+second
Triggers are edge sensitive, matching by value is not supported