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...
100 ohms is a good starting point. Important to place it close to the transmitter.
If using a 4+ layer PCB that has an unbroken ground plane directly underneath the traces and especially with wider traces, you might want a somewhat lower...
The series resistor is placed between the IC pin that drives the signal voltage, and the rest of the signal trace.
(If we put the series resistor on the other side, near the input pin, we get reflections and other nasty stuff, because electrical...
Use one SPI as a master, connected to CLK+MOSI+MISO1. Then, use another SPI as a slave, connected to CLK+MISO2, with MOSI unconnected. Teensy 4.x are all well suited for this.
If you want more parallel buses with the same clock, you could use...
I do suspect the issues alexandros is seeing are due to timing mismatch between clock and data signals, as well as noise. Schmitt triggers on input can help with the noise, but to fix the timing issues, both clock and data signals must be routed...
For pure shift registers:
Let's assume we use three signals: SCLK, MOSI, and MISO.
Each socket receives SCLK_PREV, MOSI_PREV, and MISO_PREV from the previous socket, forwarding them to the next socket as SCLK_NEXT, MOSI_NEXT, MISO_NEXT. (That...
Yep; there are many digital isolator chips available with different configurations (both unidirectional and bidirectional, different number of channels, different channel direction configurations for unidirectional one) that can also do voltage...
Instead of a tree-like structure, where the signals pass through several transistors, you should consider a bus like structure.
I prefer to use unidirectional voltage level translators like TI TXU0304 for SPI, TXU0204 for UART with hardware...