Your current display is 8 bit parallel only. The SPI lines are for the SD card slot.
In theory, 8 bit parallel vs SPI at the same bus speed - SPI will be slower. But again, it all comes down to what you need in terms...
Yeah, it's using DIgital pins 0-8 probably as it would from an Arduino UNO, and then A0-A4 for control lines.
While this will work, it's not an efficient solution at all especially for the Teensy.
It all comes down...
You’re running the bus speed at 120mhz?! Wow!
My ILI9488 can’t cope with more than 30mhz and I have a PCB with short 1-2cm traces
What kind of frame rate are you getting? Also what are you building?
Is it possible that you need a flow control frame for the long responses?
How do you know that messages are being lost and that the fifo is overflowing?
I know that some of the CAN buses on the industrial machines and trucks have a lot of messages streamed.
Is there specific data that you are looking for? Or do you need to pass it though like a gateway? (I guess that's...
@MichaeMC I’m glad you’re using it and that it’s working (mostly)
I have 9488s from three different vendors here, and each one requires slightly different init code to function properly.
Would love to hear...
I feel you on the CPU load part. I use FlexIO w/ DMA for my project and the performance is very noticeable - animations are butter smooth and CPU load is below 20% in most cases with rendering and other tasks.
Ive...
Obvisouly on the Teensy Micromod you have 12 consecutive FlexIO2 pins, so you can easily support 4 bits per pixel on that with DMA transfers.
But I guess you need this on the T4.1 to utilize things like USB host and...
Just what I was looking for, and right in time!
I think there might be a way for you to overcome the buffer size issue using the Pixel Pipeline (PXP) and two partial buffers.
There is a whole section about it in the...
@easone sure, it's in both my display driver libraries.
FlexIO2 on a Micromod: https://github.com/david-res/ILI948x_t4_mm/blob/master/ILI948x_t4_mm.cpp#L1135
FlexIO3 on a Teensy4.1:...
I got this working eventually.
Had to modify the following:
FLEXIO_SHIFTCTL_TIMPOL bit needs to be enabled to shift on negative edge
FLEXIO_TIMCFG_TSTOP time stop bit needs to be enabled
And then to read the...
It's fundamental things like these that I forgot over the past two years since originally writing the library with @easone.
Alight, so I change FlexIO config to use shifter 3, and set the pins as inputs. Also...
I'm now trying to implement the read function into both of my libraries but I'm not having any success..
Here is my read command function; the first part where it write the command works, as this was taken from a...
Suggestion #1 - move to a Teesny 4.0 or 4.1 (this is a Teensy/PJRC forum after all..)
It has a built in CAN controller so all you need is a transceiver which I believe will be far easier to debug than the SPI based CAN...
I already have a library for the MM using FlexIO2 & DMA:
https://github.com/david-res/ILI948x_t4_mm
The T4.1 I made for a forum member that was looking for a parallel interface on the T4.1
Happy to share my 2nd library, this time for the Teensy 4.1
It's a parallel display driver that works (currently) with the ILI9488 over an 8 bit bus. I will bring a 16 bit bus support as well, when I find the spare...
Interesting observation! I've seen that image tens of times yet never actually payed attention to what was in it..
I guess there's no way on the ILI9488 to overcome this based on the brief search I did in the 9488's...
Is the same issue we had back in Sept 21..
Back then you whipped out some dark magic and got it running by loading the data in from end to start and swapping half words with the DMA engine.
Basically when you fill...
A bit of reading in the Reference manual and some chatGPT and I’ve got the interrupt method pushing out the data in the desired order:
for (int i = 0; i < SHIFTNUM; i++) {
uint32_t data =...
I just realized I had an 80ms delay in my custom callback that is triggered once all data is pushed out.
So it seem that full polling vs interrupt take the exact same time, down to the microsecond (15362uS/ 15ms) at...
As I suspected, FLEXIO3 doesn’t support the FASTACC bit, because it supports fast access by defualt.
Here is a link to NXP Community where it’s explained...
I actually got your test sketch to work with FlexIO3 but only if the FASTACC bit is not enabled, otherwise it just gets stuck when the bit is enabled and code wont execute afterwards..
See attached
I got it working mostly.
Had to flip the bytes on the half words for 16bit color transfers.
But the disappointing part is:
A fully blocking transfer takes 9ms while an interrupt based transfer takes 95ms!!
I’ll...
I haven't played around with FlexIO for a few months now, but decided to try port my MicroMod display driver to the T4.1 using FlexIO3 and interrupts.
While I can get single beat transfers working without interrupts, I...
We’ll use in internal RAM for now, just use small partial buffers.
But we do have a custom test board with SDRAMin development so can benefit from that when it’s ready
Any reason why FASTRUN is not working anymore on 1.58?
I get this error:
sketch_apr12b:11:1: error: 'FASTRUN' does not name a type
Was the attribute removed from 1.58?
It's a MacbookPro 16" M1 Pro with a fresh...