High performance boards, need help selecting

General project help for Adafruit customers

Moderators: adafruit_support_bill, adafruit

Please be positive and constructive with your questions and comments.
Locked
User avatar
Taymar02
 
Posts: 1
Joined: Mon Mar 20, 2023 12:44 pm

High performance boards, need help selecting

Post by Taymar02 »

Hi all, I really could use some help selecting a new board/platform please.

I'm using an arduino Mega, I need to run a CANBUS shield and a 480x320 TFT screen, ideally in parallel mode NOT SPI for performance reasons. My current setup isn't doing what I need, so I'm looking at new options.

I'd like to be able to use something compatible or similar to the Arduino IDE, or at least something that has good enough support and documentation for a relative newbie.

Aside from that, really just the fastest/most RAM board with a good compatible CANbus shield and enough pins to run the TFT in parallel mode would be great. I started looking through the Adafruit store and quickly became overwhelmed by choice.

Don't especially need bluetooth or wifi, something that's fast and still beginner friendly should be fine.

Thank you for any recommendations.

User avatar
blnkjns
 
Posts: 963
Joined: Fri Oct 02, 2020 3:33 am

Re: High performance boards, need help selecting

Post by blnkjns »

The Arduino DUE is a logical step up for many parallel pins with increased performance/RAM.
But don't skip SPI yet. I find with a Teensy 4, a SPI display can be as powerful as a parallel one on a low speed board like the MEGA.

User avatar
adafruit_support_mike
 
Posts: 67446
Joined: Thu Feb 11, 2010 2:51 pm

Re: High performance boards, need help selecting

Post by adafruit_support_mike »

You'll probably run into a conflict between the performance you want and the idea of a board being beginner-friendly.

For instance, driving a TFT through its parallel interface will probably require 24 lines carrying color data. All 24 pins need to be changed for every pixel in the image, and trying to change them one by one with digitalWrite() will be hideously slow.

The fast way to drive those pins would be with a DMA peripheral.. a block of hardware that moves data from one region of memory to another independently of the microcontroller's ALU. Learning to use a microcontroller's DMA system is a moderately advanced subject, and each chip has its own way of doing things.

The connection between advanced features and high performance.. especially when you have a lot of signals to control.. makes suggesting a board harder. You'll probably find it easier to use 'number of pins' as your first selection rule, then look at the microcontroller's datasheet to see if it looks like a device you can learn.

Locked
Please be positive and constructive with your questions and comments.

Return to “General Project help”