Ahh right, there are four modes, not three.
Snooze can do suspend mode, which is what I was initially referring to.
Why do you specifically need SNVS mode? As far as I recall, in the Snooze thread someone had done...
Okay, have revised the code, still have one screen sized source buffer and two 320*96px destination buffers, but using just one for the test.
Overall - it works! Successfully rotated the image 270 degrees and all in...
Yeah everything that’s in pxp_start was removed from pxp_init, but it only works if everything is in pxp_init.
Super odd but I’ll keep playing with it.
Something odd that I can't figure out:
If I move the following code from PXP_Init() into it's own function (lets call it PXP_Start):
void PXP_Start(){
CCM_CCGR2 |= CCM_CCGR2_PXP(CCM_CCGR_ON);
PXP_CTRL_SET =...
Making some progress with my test sketch but have very odd behavior.
For some reason one of the transfer steps happens twice (I have no idea why) and portions of the data are incorrect in some cases.
Attached is my...
So I plan to use one 480*320 16 bit frame buffer that LVGL writes to and PXP reads from.
Then I will have two smaller 48*320 16 bit output buffers that I will switch between so that I can rotate one while the other...
I felt like I was missing something, so I have done more reading in the reference manual and modified my sketch to work as follows:
PS buffer is 480*320
OUT buffer is 320*48
IF I offset the PS buffer source, I can...
Yep, unfortunately you can't do rotations from and into the same buffer, but also, the PS/AS buffer can't be bigger than the output buffer (page 1907):
So my whole idea of rotating portions of the PS buffer into...
I tried this approach using the for loop, and while for some fairly light graphics it works, when lvgl animations are triggered, this is where you can really see the for loops hanging the CPU. IF dma could do the...
Attached is my sample rotation app that works well so far
FlexIO actually has 4 buffers, so that would be 8 pixels per shift command until the buffers are empty. (Data sheet says 8, but many people here have had no...
So I actually used some of your sample code in the beginning of the post and got the rotation to work!
Source buffer is in RAM1 and destination is in RAM2.
Takes about 3ms to rotate 90/270 degrees and 13ms to transfer...
So after much testing I decided to pass through the image without rotating to see what comes out.
The image is passed though fine, but with noise in the first 20-30 lines. Also, trying to rotate does nothing, as I...
Ive moved the callback execution to (PXP_STAT & PXP_STAT_IRQ) != 0 and that seems to fix the multiple calls.
But, the rotation is still not 100% and it looks the same as before.
I can confirm the PXP is not rotating...
Got around to wiring up my ILI9486 breakout display to my custom board Teensy MM with PSRAM :cool:
Tested the sketch, but I am running into some issues:
1. The image is being rotated by 90 degrees but it looks...
@mborgerson thanks for the breakdown and code example.
I'm generating an image (480*320px @16 bit color) using LVGL and feeding that into a buffer placed in DMAMEM, which is also the source buffer for PXP.
PXP then...
@vjmuzik circling back to this as I have my custom T4.1/MM board with all the FlexIO2 pins/eLCDIF pins exposed, as well as the external PSRAM, so now is the time to start playing with this wonderful library :)
1. What...
Just a side note - I use GPT to help with the Teensy coding as well as Python/SQL.
But the current model (GPT3.5) is only trained with data up to 2021 (when it was "released"). Any info or code examples that came after...