Analyzer for low level debugging of the QSPI Protocol, for use with Saleae and Kingst Logic Analyzers.
- Command, Address, Dummy and Data blocks.
- Supports SIO, DIO, and QIO for Command, Address, and data. Dummy is SIO.
- Endianess, CPOL/CPHA, CS Idle State, Extra CS Pre and Post cycles
- All settings simulated.
- Octal IO
- Operation without chip select
- DDR
- Download and install Kingst Virtual Instruments Studio
- Place
QSpiAnalyzer.dllinto your\KingstVIS\Analyzerfolder. (Default C:\Program Files\KingstVIS\Analyzer) - Open KingstVIS and add "QSPI" to Analyzer list
- Set the channels and settings to match your QSPI master device.
- Capture data from Logic Analyzer or press play without device connected, which will simulate data.
- Download and install Saleae Logic 1 or Download and install Saleae Logic 2
- Custom Analyzer Install Instructions
- Add "QSPI" to Analyzer list
- Set the channels and settings to match your QSPI master device.
- Capture data from Logic Analyzer or press play without device connected to simulate data.
Note: Saleae users must also run git submodule update --init --recursive to download the Saleae Analyzer SDK.
Building with CMake
- For Windows - simply open
Visual Studio->Continue Without Code->File->Open->CMakeand select the corresponding CMakeLists.txt from the project folder. Then just select the target configuration(Release or Debug x64) and build it. - For Linux, execute the following in the cloned repository folder
mkdir build && cd build
cmake -G"Unix Makefiles" -DCMAKE_BUILD_TYPE=Release ..
cmake --build .Then just copy libQSPI_Analyzer.so to the directory where you'd like to store Saleae plugins.
Building
- Open Project in Visual Studio with Administrative rights *1
- Select either the "KingstVIS" or "Saleae project" depending on which software you are using.
- Hit Play, and your software will launch with a debugger attached.
The following steps are "optionally required" if any of the following are true
- Your software was not installed to default location
- Your system is 32 bit
- You are using Saleae Logic 1
- Edit Project
Properties->Debugging->Commandto target your software's executable - Edit Project
Properties->Build Events->Post-Build Event->Command Lineto make sure the copy target is your software's Analyzers folder.
*1 Only required to run as admin when your software is installed in a protected folder like Program Files, and if you wish to use post-build event to copy DLL directly to your analyzers folder
Note: I am not very familiar with CMAKE or Linux/Mac build systems, so all I can provide are basic instructions.
- You must add these preprocessor definitions. (or define inside QSpiAnalyzer.h)
- SALEAE=1
- KINGSTVIS=2
- ANALYZER_VERSION=SALEAE or ANALYZER_VERSION=KINGSTVIS
- Add
srcto your include directories.
KingstVIS I edited the make files that were included with the SDK to target the source, includes and library. All that should need to be done is the preprocessor definitions.
Saleae
- Add
SaleaeAnalyzerSDK\includeto your include directories. - Add
SaleaeAnalyzerSDK\lib_x86_64to your libraries directories
Another option would be to build following Saleae's Sample Analyzer's build instructions.
I'm not sure what is generated for Linux/Mac, so I suggest renaming to "QSPI" before copying pasting the source files.
Also make sure inside QSpiAnalyer.h and QSpiAnalyer.cpp, ANALYZER_VERSION gets renamed to Analyzer2.
They are both almost identical, but unfortunately are not compatible.
The only difference I noticed at first glance was the "Analyzers SDK" has/uses the Analyzer2 class which derives from Analyzer.
- Author : Addio
- Website : www.Addio.io



