![]() |
Forum Index : Microcontroller and PC projects : Picomite feature request
Author | Message | ||||
Volhout Guru ![]() Joined: 05/03/2018 Location: NetherlandsPosts: 5090 |
Dear Peter, I am aware of the fact that you declared picomite "feature complete" and (apart from bugfixes) want to archive the project as "done". But I do have a feature request for the picomite, and hope you see benefit in this request. The VGApicomite generates video from an internal frame buffer. This goes at the cost of program RAM. For video generation you use one of the pio sequencers and the second ARM core. The standard picomite is designed to connect to an LCD, either at cost of many pins (parallel) or more efficient through SPI. I am working on a project (mains analyzer) and someone is working on a heartbeat monitor, and we both use SPI displays (320x240). Both project could benefit from fast painting on the LCD. But the 252MHz 32bit ARM must write data to the LCD through a 16Mbps (16MHz clock) wire. Do you think it is possible to improve on the speed of the LCD painting by a/ implementing a write cache for LCD painting -or preferably- b/ implement a framebuffer (same as VGA picomite) for a 16 color 320x240 (yes that is a limitation from 16bit colours) mode, and have the lcd painting processed by the other ARM. This is for a large part the same architecture as the VGApicomite. I can imagine that this requires the ILI9341 to connect to it's own SPI bus, and not share this SPI bus with the touch and SD card. Thank you for reading this. Volhout PicomiteVGA PETSCII ROBOTS |
||||
Amnesie Guru ![]() Joined: 30/06/2020 Location: GermanyPosts: 675 |
This way all my own designed PCBs would be useless... If Peter decides to work on this I hope there is another way. Hm... but I guess this is the risk... aaaaaand design a new one .... :/ ![]() ![]() -Daniel Edited 2022-02-18 20:40 by Amnesie |
||||
matherp Guru ![]() Joined: 11/12/2012 Location: United KingdomPosts: 10315 |
Volhout I'm unclear how there is much to be gained. Writing to the SPI port is slow whichever CPU does it. It takes the SPI speed times the number of bytes regardless. If you did it on the second processor you would have to create a command queue of output and then find some way of synchronising with MMbasic so that the Basic programmer knows that something that was needed to be seen has been output. Regardless it would be a major bit of development with limited utility so I'm afraid the answer is no. |
||||
Mixtel90![]() Guru ![]() Joined: 05/10/2019 Location: United KingdomPosts: 7937 |
@Volhout Any serial display will be a bottleneck. I've seen reports of people running the ILI9341 at much greater SPI speeds than it's rated for though. Could you do it the other way, using a PicoMite to drive a parallel display and, if there are insufficient pins left, connect it to a Micromite or a second PicoMite over SPI? Mick Zilog Inside! nascom.info for Nascom & Gemini Preliminary MMBasic docs & my PCB designs |
||||
Volhout Guru ![]() Joined: 05/03/2018 Location: NetherlandsPosts: 5090 |
Mixtel, The spi bandwidth bottleneck will always exist. But currently this botlleneck exists inside the excecution of the basic program. If you add a line, box, or text statement you add a slow command to the loop, where as caching, or frame buffer would keep the main loop fast. I currently dont have a pico, waiting for arrival, but you van do the test. Run any program (gui test) on both VGA and LCD versions. In example, my backpack tracer spends equal amount of time in drawing, as in reading the ADC. By executing tthe draw in the background (cache or framebuffer) while waiting for the ADC you double the speed. Edited 2022-02-19 18:12 by Volhout PicomiteVGA PETSCII ROBOTS |
||||
matherp Guru ![]() Joined: 11/12/2012 Location: United KingdomPosts: 10315 |
If you use the ADC command correctly the ADC works in the background which can happen while you are drawing with no changes needed |
||||
Bill.b![]() Senior Member ![]() Joined: 25/06/2011 Location: AustraliaPosts: 235 |
Hi Peter is it possible to extend the the WS2812 from 256 to 300+ as I need to address a full 5m strip of 60 leds/m. Bill In the interests of the environment, this post has been constructed entirely from recycled electrons. |
||||
![]() |
![]() |
The Back Shed's forum code is written, and hosted, in Australia. | © JAQ Software 2025 |