Skip to content

Latest commit

 

History

History

README.md

SpiIO Components

QSpice C-Block code and schematics to implement custom SPI master & slave components.

See the SpiIO_Dev_Doc.pdf document for information about using and customizing these components for specific use cases.

At this point, this is Proof of Concept stuff. The code is not well-thought-through, well-tested, well-organized, nor well-commented.

You have been warned.

Original SPI Framework Files

  • SpiIO_Dev_Doc.pdf — Developer documentation for using/modifying the components.
  • DemoSpiIO.qsch — The top-level QSpice schematic demonstrating the master and slave components.
  • SpiMaster.qsch — Master component ADC/DAC driver schematic.
  • SpiMaster.cpp — SPI master component code. Drives the ADC and DAC slave components.
  • SpiMaster.dll — Compiled SpiMaster DLL.
  • SpiADC.qsch — 8-bit ADC component schematic.
  • SpiADC.cpp — 8-bit ADC component C-Block code.
  • SpiADC.dll — Compiled SpiADC DLL.
  • SpiDAC.qsch — 8-bit DAC component schematic.
  • SpiDAC.cpp — 8-bit DAC component C-Block code.
  • SpiDAC.dll — Compiled SpiADC DLL.
  • PinIO.h — Header file containing "pin" state management classes.
  • SpiIO.h — SPI serial buffer class and SPI mode management code.

The code compiles with MS VC.

SpiPot Component (A Framework Demo)

These two files demonstrate how easy it is to use the SpiIO framework to implement a new SPI slave device. This SPI potentiometer slave started with a copy of DemoSpiIO.qsch, a copy of SpiDAC.qsch, and my voltage-controlled potentiometer subcircuit/symbol (see Pot_Vctrl.qsym in the Miscellany folder). No C-Block code changes required.

  • DemoSpiIO_Pot.qsch — The top-level demonstration schematic.
  • SpiPot.qsch — The SPI potentiometer slave device.