Forum Rule: Always post complete source code & details to reproduce any issue!
Results 1 to 4 of 4

Thread: SPIFIFO & SPI library

  1. #1

    SPIFIFO & SPI library

    Quick question... Does the SPIFIFO library depend on the additional use of the SPI library in order to work?


  2. #2
    Senior Member PaulStoffregen's Avatar
    Join Date
    Nov 2012
    SPIFIFO is built into the core library for Teensy 3.2, 3.5, & 3.6. Only those 3 boards are supported. It does not work on any others. There are no plans to ever port it to Teensy 4.x.

    To be honest, SPIFIFO was sort of an old experiment which we're keeping in the code for compatibility with programs which have used it, but it's probably not what you should use for any new project.

  3. #3
    So, with this library being built into the core, is there a need to declare SPIFIFO.h in my main program?

    or will I have to do SPI.h & SPIFIFO.h both?

    or just SPI.h?


  4. #4
    Senior Member+ KurtE's Avatar
    Join Date
    Jan 2014
    Obviously the simplest thing is to try it...
    But may assumption is that I believe the only place in the cores project that includes this file is the teensy3\avr_emulation.cpp.

    So to use it, you need to include it.

    But as Paul mentioned it only works on those 3 boards,

    Also I believe it is limited to only work on the one SPI object. So for example on T3.5/6 with SPI1 and SPI2 there is no code in place to allow those to work. And it won't simply work by replacing which SPI object to use in the code as for example the FIFO queue sizes are different.

    Note: for a long time, I setup my own library SPIN, which tried to add in the support for FIFO queues and different SPI ports and had versions that ran on different processors... I did this as part of T3.6 beta cycle. And for a long time, my ili9341_t3n library relied on this... But decided to remove the requirement for this, so a lot of support stuff is now replicated in each of the libraries that try to do this stuff...

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts