I would use a pair of Teensy 4.0's, with either WS2812 or similar digitally-controlled RGB LEDs to limit the number of I/Os needed, or a dedicated LED matrix controller IC; with a nice shielded 6-wire (RX+GND twisted, TX+GND twisted, 5V, GND)...
I have the same displays, and have played a bit with different ways of driving the LEDs.
I have not built it this suggestion yet myself, but (KiCAD/ngspice) simulations show it should work fine at up to 10 kHz PWM.
The idea is to use a low-drop...
For the 14 SPST toggle switches (OFF-ON), 3 SPDT (ON-OFF-ON) toggle switches, rocker switch (OFF-ON), and push button (OFF-(ON), i.e. momentary), I'd use a 4×6 matrix with diodes, using 10 pins, and 12 BAT54C Schottky diodes in SOT23-3 (a common...
Adafruit #2050, 3.5" 320×480 TFT, actually uses the HX8357D controller and the Adafruit_TFTLCD library.
It should not be too difficult to copy the ILI9341_t3 library as HX8357D_t4 –– that way there is no library resolution issues! –– and change...
Oh, I just meant that it is nontrivial to do in any case, especially when you only have 320×240 display modules at hand; and not specific to Teensy at all. Making a library too general is feature creep, and since features you cannot test are...
Mostly, it depends on how you call Serial.write(). If you use it to write individual bytes or words, Teensy 4.x tops out at about 4 Mbytes/sec. If you collect data into buffers (in binary) and write in chunks of 32 bytes or more (up to 512...
In general terms in C and C++, the pattern is to define the macros before the include statements, so that in the included (library!) code you do
#ifndef FOO
#define FOO 456 // Default
#endif /* FOO */
This means that if FOO is not defined...
Yep, I'm fully aware it might change in the future. As I explained above, I do have a way to work around it, by using a two-bit bus switch with inverted enable, so that a GPIO pin that is floating or low at startup (like B0_12, pin 32, which...
I can confirm the above, it can be used as we did disconnect from the bootloader on the dev board.
I used it as a FlexIO pin.
But as Paul mentioned when I had initially asked, it’s usage for the bootloader could change in the future
I believe it does - @Dogbone06 made this board that has B0_13 disconnected from PTB4. You can see there's pads on the board to join them if needed, but at the moment it runs fine without that connection.
@PaulStoffregen: Is this still true for the current bootloader version (as of 2024-01-31)?
Or would it be better to use a digital bus switch, for example Toshiba TC7WB67CFK, to ensure it is connected (and other functions for the B0_13 pin...
You can obviously fix that by usingLRsample = (((uint64_t)((uint32_t)leftSample)) << 32) | ((uint32_t)rightSample);
It is important to first cast the value to the same size but unsigned, to prevent sign extension. You can safely assign an...
That makes even more sense to me too. The current-limiting series resistor is often used with logic IC chips with signal levels exceeding VCC, and their datasheets often mention it (and it works because of small rail-clamping diodes within the...
In series with the RX and TX signals, of course, so they'd limit the current in the signal to what the tiny little ESD diodes or whachamacallits' in the Teensy can handle; sure. I just prefer those level translators and isolators, because...
Is there a reason you're not using a TXU0202 (Mouser, DigiKey) or even two 74LVC1T45's in SOT-26 (LCSC, Mouser) dead-bugged (soldered directly to wires and covered with heatshrink)?
I keep telling microcontroller users to stock up on...
BuyDisplay ER-TFT034-1 is 42.6mm × 92.8mm (display itself 38.24mm × 86.02mm, so touch panel could sit on top), with IPS panel and 412×960 resolution, and a capacitive touch panel; but is difficult to drive as it expects continuously refreshed RGB...