I don't think attachInterrupt ISR requires asm volatile ("dsb");. Teensy 4 core interrupt.c spins testing the ISR clear flag.
I think the missing brackets { } (post #2) is the problem.
Also, the declaration of...
Weird. Test it with a few non-UART pins, e.g. change the first argument of attachInterrupt(pin, ....) and attach GPX TX pin
do you have another Teensy that you can try?
Here is a simple sketch to count rising pulses on pin 0. Connect GPS TX to Teensy pin 0.
volatile uint32_t ticks;
void ding() {
ticks++;
}
void setup() {
Serial.begin(9600);
while (!Serial);
...
your photos suggest you are using 5v from Teensy to power ublox. Teensy 4.1 is NOT 5v tolerant. you may have damaged the Rx pin on the Teensy. You should power ublox from 3v3 pin
I have NEO-M8U and NEO-M9N, and...
You have misplaced "{" in loop()
should be
void loop() {
for (int i = 0; i <= 191; i = i + 1) {
analogWrite(A21, sine_dataA); //6.25 khz approx
analogWrite(A22, sine_dataB); ...
Even with pinMode() commented out, i get sinewave (5.8khz on DAC0/A21 and DAC1/A22 is straight line at 1.6 v. If i comment out DAC0 write, scope shows DAC1 sinewave at 16.7 khz.
same behaviour on T3.6, but faster...