<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
<p><br>
</p>
<p>Note that the STM32 2D accelerator stuff requires use of their
closed source library software, as the HW is <i>undocumented</i>.</p>
<p><a class="moz-txt-link-freetext" href="http://efton.sk/STM32/gotcha/g207.html">http://efton.sk/STM32/gotcha/g207.html</a></p>
<p><br>
</p>
<blockquote type="cite"
cite="mid:CAJ-kJoDF4mL_euW-gMKn3XmO5XpVCcJJDuNa+NtJ_7_bB95+TQ@mail.gmail.com">On
Sun, 16 Jun 2024, 13:48 Benjamin Tremblay via Synth-diy, <<a
href="mailto:synth-diy@synth-diy.org" moz-do-not-send="true"
class="moz-txt-link-freetext">synth-diy@synth-diy.org</a>>
wrote:<br>
<div class="gmail_quote">
<blockquote class="gmail_quote" style="margin:0 0 0
.8ex;border-left:1px #ccc solid;padding-left:1ex">Thanks
Brian! <br>
<br>
Benjamin Tremblay<br>
<br>
> On Jun 15, 2024, at 11:49 PM, brianw <<a
href="mailto:brianw@audiobanshee.com" target="_blank"
rel="noreferrer" moz-do-not-send="true"
class="moz-txt-link-freetext">brianw@audiobanshee.com</a>>
wrote:<br>
> <br>
> I am not a particular fan of ST Micro (*), but they have
a great line of processors that can directly drive parallel
LCD modules.<br>
> <br>
> Look at the STM32F series. I recall that there are
evaluation boards, but I'm not sure where mine got to in the
pile of old demo boards.<br>
> <br>
> The bus can handle at least 24-bit width, but you might
end up only needing an 8-bit parallel LCD module. In addition
to treating the LCD like fast memory, these chips also have 2D
accelerators in the processor that can convert bit depth and
colors when blending resources in memory to the display. For
example, you could have 1-bit fonts in memory, to save space,
but then put the LCD in 8-bit color or 4-bit color mode and
have the 2D accelerator handle the format conversion in
hardware. I think ST calls this the "ART Accelerator"
(Adaptive Real-Time Accelerator).<br>
> <br>
> <a
href="https://www.st.com/en/microcontrollers-microprocessors/stm32f4-series.html"
rel="noreferrer noreferrer" target="_blank"
moz-do-not-send="true" class="moz-txt-link-freetext">https://www.st.com/en/microcontrollers-microprocessors/stm32f4-series.html</a><br>
> <br>
> The catch is that you'll have to graduate from the hobby
developer environments and write your own bare metal or RTOS
firmware. That is a big step, but it's usually the only way to
get maximum performance anyway.<br>
> <br>
> * I have nothing against ST Micro, per se. There are just
so many ARM choices out there, and I've already got my
favorites. That said, when something they specialize in is
needed, I wouldn't hesitate to use ST.<br>
> <br>
> I worked on a project where a single STM32F40x was
driving 27 color LCD displays. Yep, twenty-seven of them, and
the updates were plenty fast.<br>
> <br>
> Brian Willoughby<br>
> <br>
> <br>
>> On Jun 15, 2024, at 7:36 PM, Benjamin Tremblay wrote:<br>
>> Nope, I made an error. Wasn’t really using spi. Now
it runs better.<br>
>> I do think I want to find a larger monochrome
display.<br>
>> Benjamin Tremblay<br>
>> <br>
>>> On Jun 15, 2024, at 8:54 PM, Benjamin Tremblay
wrote:<br>
>>> I’ve been working on some virtual synth code,
and also learning how to send nrpn midi messages. It’s all
going well but for midi controller and synth projects I
envision a paged Oled display with virtual knob animation and
maybe a touchscreen.<br>
>>> What kind of hardware do I need for this? I
purchased 2” and 3” displays from Amazon and tried out sample
code on an arduino mega and then ran it on a Teensy LC. I
have a teensy 4 and a pico and some Stm32F401 boards.<br>
>>> I am using the Adafruit gfx library and so far
using an offscreen canvas is too slow.<br>
>>> Should I use a 1-bit display? Repainting the
screens is sluggish; maybe 2fps max. Should I use a faster SPI
implementation? I know teensy LC is slow. Should I use another
graphics library?<br>
>>> I’m going to assume displays are nice for things
like waveform editing and such. I have seen some fast
oscilloscope demos on Oled displays.<br>
>>> Hm.<br>
>>> <br>
>>> Benjamin Tremblay<br>
> <br>
<br>
________________________________________________________<br>
This is the Synth-diy mailing list<br>
Submit email to: <a href="mailto:Synth-diy@synth-diy.org"
target="_blank" rel="noreferrer" moz-do-not-send="true"
class="moz-txt-link-freetext">Synth-diy@synth-diy.org</a><br>
View archive at: <a
href="https://synth-diy.org/pipermail/synth-diy/"
rel="noreferrer noreferrer" target="_blank"
moz-do-not-send="true" class="moz-txt-link-freetext">https://synth-diy.org/pipermail/synth-diy/</a><br>
Check your settings at: <a
href="https://synth-diy.org/mailman/listinfo/synth-diy"
rel="noreferrer noreferrer" target="_blank"
moz-do-not-send="true" class="moz-txt-link-freetext">https://synth-diy.org/mailman/listinfo/synth-diy</a><br>
Selling or trading? Use <a
href="mailto:marketplace@synth-diy.org" target="_blank"
rel="noreferrer" moz-do-not-send="true"
class="moz-txt-link-freetext">marketplace@synth-diy.org</a><br>
</blockquote>
</div>
<br>
<fieldset class="moz-mime-attachment-header"></fieldset>
<pre class="moz-quote-pre" wrap="">________________________________________________________
This is the Synth-diy mailing list
Submit email to: <a class="moz-txt-link-abbreviated" href="mailto:Synth-diy@synth-diy.org">Synth-diy@synth-diy.org</a>
View archive at: <a class="moz-txt-link-freetext" href="https://synth-diy.org/pipermail/synth-diy/">https://synth-diy.org/pipermail/synth-diy/</a>
Check your settings at: <a class="moz-txt-link-freetext" href="https://synth-diy.org/mailman/listinfo/synth-diy">https://synth-diy.org/mailman/listinfo/synth-diy</a>
Selling or trading? Use <a class="moz-txt-link-abbreviated" href="mailto:marketplace@synth-diy.org">marketplace@synth-diy.org</a>
</pre>
</blockquote>
<p><br>
</p>
</body>
</html>