readysteadi
Active member
I'm trying to generate a PPM signal using the Pulse Position library but even the example sketches are not compiling and return an error : Compilation Error: Exit status 1 I have proper board selected as well as port and code is straight from example of loopback. I'm providing the text from the error messages here:
Code:
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp: In constructor 'PulsePositionOutput::PulsePositionOutput()':
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp:83:65: error: 'CLOCKS_PER_MICROSECOND' was not declared in this scope; did you mean 'CLOCKS_PER_SEC'?
83 | #define TX_MINIMUM_FRAME_CLOCKS (uint32_t)(TX_MINIMUM_FRAME * CLOCKS_PER_MICROSECOND)
| ^~~~~~~~~~~~~~~~~~~~~~
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp:109:26: note: in expansion of macro 'TX_MINIMUM_FRAME_CLOCKS'
109 | pulse_width[0] = TX_MINIMUM_FRAME_CLOCKS;
| ^~~~~~~~~~~~~~~~~~~~~~~
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp: In constructor 'PulsePositionOutput::PulsePositionOutput(int)':
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp:83:65: error: 'CLOCKS_PER_MICROSECOND' was not declared in this scope; did you mean 'CLOCKS_PER_SEC'?
83 | #define TX_MINIMUM_FRAME_CLOCKS (uint32_t)(TX_MINIMUM_FRAME * CLOCKS_PER_MICROSECOND)
| ^~~~~~~~~~~~~~~~~~~~~~
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp:119:26: note: in expansion of macro 'TX_MINIMUM_FRAME_CLOCKS'
119 | pulse_width[0] = TX_MINIMUM_FRAME_CLOCKS;
| ^~~~~~~~~~~~~~~~~~~~~~~
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp: In member function 'bool PulsePositionOutput::begin(uint8_t, uint8_t)':
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp:142:13: error: 'FTM0_MOD' was not declared in this scope
142 | if (FTM0_MOD != 0xFFFF || (FTM0_SC & 0x7F) != FTM0_SC_VALUE) {
| ^~~~~~~~
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp:142:36: error: 'FTM0_SC' was not declared in this scope
142 | if (FTM0_MOD != 0xFFFF || (FTM0_SC & 0x7F) != FTM0_SC_VALUE) {
| ^~~~~~~
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp:88:24: error: 'FTM_SC_TOIE' was not declared in this scope; did you mean 'FTM0_SC_VALUE'?
88 | #define FTM0_SC_VALUE (FTM_SC_TOIE | FTM_SC_CLKS(1) | FTM_SC_PS(0))
| ^~~~~~~~~~~
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp:142:55: note: in expansion of macro 'FTM0_SC_VALUE'
142 | if (FTM0_MOD != 0xFFFF || (FTM0_SC & 0x7F) != FTM0_SC_VALUE) {
| ^~~~~~~~~~~~~
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp:88:38: error: 'FTM_SC_CLKS' was not declared in this scope; did you mean 'FTM0_SC_VALUE'?
88 | #define FTM0_SC_VALUE (FTM_SC_TOIE | FTM_SC_CLKS(1) | FTM_SC_PS(0))
| ^~~~~~~~~~~
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp:142:55: note: in expansion of macro 'FTM0_SC_VALUE'
142 | if (FTM0_MOD != 0xFFFF || (FTM0_SC & 0x7F) != FTM0_SC_VALUE) {
| ^~~~~~~~~~~~~
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp:88:55: error: 'FTM_SC_PS' was not declared in this scope
88 | #define FTM0_SC_VALUE (FTM_SC_TOIE | FTM_SC_CLKS(1) | FTM_SC_PS(0))
| ^~~~~~~~~
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp:142:55: note: in expansion of macro 'FTM0_SC_VALUE'
142 | if (FTM0_MOD != 0xFFFF || (FTM0_SC & 0x7F) != FTM0_SC_VALUE) {
| ^~~~~~~~~~~~~
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp:144:17: error: 'FTM0_CNT' was not declared in this scope
144 | FTM0_CNT = 0;
| ^~~~~~~~
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp:152:40: error: 'FTM0_C4SC' was not declared in this scope
152 | case 6: channel = 4; reg = &FTM0_C4SC; break;
| ^~~~~~~~~
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp:153:40: error: 'FTM0_C2SC' was not declared in this scope
153 | case 9: channel = 2; reg = &FTM0_C2SC; break;
| ^~~~~~~~~
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp:154:40: error: 'FTM0_C3SC' was not declared in this scope
154 | case 10: channel = 3; reg = &FTM0_C3SC; break;
| ^~~~~~~~~
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp:155:40: error: 'FTM0_C5SC' was not declared in this scope
155 | case 20: channel = 5; reg = &FTM0_C5SC; break;
| ^~~~~~~~~
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp:156:40: error: 'FTM0_C0SC' was not declared in this scope
156 | case 22: channel = 0; reg = &FTM0_C0SC; break;
| ^~~~~~~~~
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp:157:40: error: 'FTM0_C1SC' was not declared in this scope
157 | case 23: channel = 1; reg = &FTM0_C1SC; break;
| ^~~~~~~~~
In file included from C:\Users\Marco\AppData\Local\Arduino15\packages\teensy\hardware\avr\1.58.1\cores\teensy4/core_pins.h:33,
from C:\Users\Marco\AppData\Local\Arduino15\packages\teensy\hardware\avr\1.58.1\cores\teensy4/wiring.h:39,
from C:\Users\Marco\AppData\Local\Arduino15\packages\teensy\hardware\avr\1.58.1\cores\teensy4/WProgram.h:46,
from C:\Users\Marco\AppData\Local\Temp\arduino\sketches\D4BFE03DFE67738E5C0AE842BDA8AAA5/pch/Arduino.h:6,
from c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.h:29,
from c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp:31:
C:\Users\Marco\AppData\Local\Arduino15\packages\teensy\hardware\avr\1.58.1\cores\teensy4/pins_arduino.h:142:71: error: cannot convert 'volatile uint32_t*' {aka 'volatile long unsigned int*'} to 'volatile uint8_t*' {aka 'volatile unsigned char*'} in assignment
142 | #define portOutputRegister(pin) ((digital_pin_to_info_PGM[(pin)].reg + 0))
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~
| |
| volatile uint32_t* {aka volatile long unsigned int*}
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp:166:31: note: in expansion of macro 'portOutputRegister'
166 | framePinReg = portOutputRegister(framePin);
| ^~~~~~~~~~~~~~~~~~
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp:169:17: error: 'FRAME_PIN_SET' was not declared in this scope
169 | FRAME_PIN_SET();
| ^~~~~~~~~~~~~
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp:178:9: error: 'CSC_CHANGE' was not declared in this scope; did you mean 'CHANGE'?
178 | CSC_CHANGE(ftm, cscSet); // set on compare match & interrupt
| ^~~~~~~~~~
| CHANGE
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp:181:38: error: 'PORT_PCR_MUX' was not declared in this scope
181 | *portConfigRegister(txPin) = PORT_PCR_MUX(4) | PORT_PCR_DSE | PORT_PCR_SRE;
| ^~~~~~~~~~~~
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp:181:56: error: 'PORT_PCR_DSE' was not declared in this scope
181 | *portConfigRegister(txPin) = PORT_PCR_MUX(4) | PORT_PCR_DSE | PORT_PCR_SRE;
| ^~~~~~~~~~~~
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp:181:71: error: 'PORT_PCR_SRE' was not declared in this scope
181 | *portConfigRegister(txPin) = PORT_PCR_MUX(4) | PORT_PCR_DSE | PORT_PCR_SRE;
| ^~~~~~~~~~~~
In file included from C:\Users\Marco\AppData\Local\Arduino15\packages\teensy\hardware\avr\1.58.1\cores\teensy4/core_pins.h:32,
from C:\Users\Marco\AppData\Local\Arduino15\packages\teensy\hardware\avr\1.58.1\cores\teensy4/wiring.h:39,
from C:\Users\Marco\AppData\Local\Arduino15\packages\teensy\hardware\avr\1.58.1\cores\teensy4/WProgram.h:46,
from C:\Users\Marco\AppData\Local\Temp\arduino\sketches\D4BFE03DFE67738E5C0AE842BDA8AAA5/pch/Arduino.h:6,
from c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.h:29,
from c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp:31:
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp:182:27: error: 'IRQ_FTM0' was not declared in this scope; did you mean 'IRQ_CTI0'?
182 | NVIC_SET_PRIORITY(IRQ_FTM0, 32);
| ^~~~~~~~
C:\Users\Marco\AppData\Local\Arduino15\packages\teensy\hardware\avr\1.58.1\cores\teensy4/imxrt.h:9783:83: note: in definition of macro 'NVIC_SET_PRIORITY'
9783 | #define NVIC_SET_PRIORITY(irqnum, priority) (*((volatile uint8_t *)0xE000E400 + (irqnum)) = (uint8_t)(priority))
| ^~~~~~
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp: In member function 'bool PulsePositionOutput::write(uint8_t, float)':
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp:193:33: error: 'CLOCKS_PER_MICROSECOND' was not declared in this scope; did you mean 'CLOCKS_PER_SEC'?
193 | clocks = microseconds * CLOCKS_PER_MICROSECOND;
| ^~~~~~~~~~~~~~~~~~~~~~
| CLOCKS_PER_SEC
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp: In member function 'void PulsePositionOutput::isr()':
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp:84:63: error: 'CLOCKS_PER_MICROSECOND' was not declared in this scope; did you mean 'CLOCKS_PER_SEC'?
84 | #define TX_PULSE_WIDTH_CLOCKS (uint32_t)(TX_PULSE_WIDTH * CLOCKS_PER_MICROSECOND)
| ^~~~~~~~~~~~~~~~~~~~~~
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp:223:28: note: in expansion of macro 'TX_PULSE_WIDTH_CLOCKS'
223 | ftm->cv += TX_PULSE_WIDTH_CLOCKS;
| ^~~~~~~~~~~~~~~~~~~~~
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp:224:17: error: 'CSC_CHANGE_INTACK' was not declared in this scope
224 | CSC_CHANGE_INTACK(ftm, cscClear); // clear on compare match & interrupt
| ^~~~~~~~~~~~~~~~~
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp:84:63: error: 'CLOCKS_PER_MICROSECOND' was not declared in this scope; did you mean 'CLOCKS_PER_SEC'?
84 | #define TX_PULSE_WIDTH_CLOCKS (uint32_t)(TX_PULSE_WIDTH * CLOCKS_PER_MICROSECOND)
| ^~~~~~~~~~~~~~~~~~~~~~
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp:237:57: note: in expansion of macro 'TX_PULSE_WIDTH_CLOCKS'
237 | width = pulse_buffer[channel] - TX_PULSE_WIDTH_CLOCKS;
| ^~~~~~~~~~~~~~~~~~~~~
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp:244:41: error: 'FRAME_PIN_SET' was not declared in this scope
244 | FRAME_PIN_SET();
| ^~~~~~~~~~~~~
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp:246:41: error: 'FRAME_PIN_CLEAR' was not declared in this scope
246 | FRAME_PIN_CLEAR();
| ^~~~~~~~~~~~~~~
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp:255:25: error: 'CSC_CHANGE_INTACK' was not declared in this scope
255 | CSC_CHANGE_INTACK(ftm, cscSet); // set on compare match & interrupt
| ^~~~~~~~~~~~~~~~~
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp:259:25: error: 'CSC_INTACK' was not declared in this scope
259 | CSC_INTACK(ftm, cscClear); // clear on compare match & interrupt
| ^~~~~~~~~~
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp: In function 'void ftm0_isr()':
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp:268:13: error: 'FTM0_SC' was not declared in this scope
268 | if (FTM0_SC & 0x80) {
| ^~~~~~~
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp:279:33: error: 'FTM0_C0SC' was not declared in this scope
279 | if ((maskin & 0x01) && (FTM0_C0SC & 0x80)) PulsePositionInput::list[0]->isr();
| ^~~~~~~~~
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp:280:33: error: 'FTM0_C1SC' was not declared in this scope
280 | if ((maskin & 0x02) && (FTM0_C1SC & 0x80)) PulsePositionInput::list[1]->isr();
| ^~~~~~~~~
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp:281:33: error: 'FTM0_C2SC' was not declared in this scope
281 | if ((maskin & 0x04) && (FTM0_C2SC & 0x80)) PulsePositionInput::list[2]->isr();
| ^~~~~~~~~
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp:282:33: error: 'FTM0_C3SC' was not declared in this scope
282 | if ((maskin & 0x08) && (FTM0_C3SC & 0x80)) PulsePositionInput::list[3]->isr();
| ^~~~~~~~~
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp:283:33: error: 'FTM0_C4SC' was not declared in this scope
283 | if ((maskin & 0x10) && (FTM0_C4SC & 0x80)) PulsePositionInput::list[4]->isr();
| ^~~~~~~~~
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp:284:33: error: 'FTM0_C5SC' was not declared in this scope
284 | if ((maskin & 0x20) && (FTM0_C5SC & 0x80)) PulsePositionInput::list[5]->isr();
| ^~~~~~~~~
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp:290:34: error: 'FTM0_C0SC' was not declared in this scope
290 | if ((maskout & 0x01) && (FTM0_C0SC & 0x80)) PulsePositionOutput::list[0]->isr();
| ^~~~~~~~~
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp:291:34: error: 'FTM0_C1SC' was not declared in this scope
291 | if ((maskout & 0x02) && (FTM0_C1SC & 0x80)) PulsePositionOutput::list[1]->isr();
| ^~~~~~~~~
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp:292:34: error: 'FTM0_C2SC' was not declared in this scope
292 | if ((maskout & 0x04) && (FTM0_C2SC & 0x80)) PulsePositionOutput::list[2]->isr();
| ^~~~~~~~~
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp:293:34: error: 'FTM0_C3SC' was not declared in this scope
293 | if ((maskout & 0x08) && (FTM0_C3SC & 0x80)) PulsePositionOutput::list[3]->isr();
| ^~~~~~~~~
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp:294:34: error: 'FTM0_C4SC' was not declared in this scope
294 | if ((maskout & 0x10) && (FTM0_C4SC & 0x80)) PulsePositionOutput::list[4]->isr();
| ^~~~~~~~~
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp:295:34: error: 'FTM0_C5SC' was not declared in this scope
295 | if ((maskout & 0x20) && (FTM0_C5SC & 0x80)) PulsePositionOutput::list[5]->isr();
| ^~~~~~~~~
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp: In member function 'bool PulsePositionInput::begin(uint8_t)':
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp:327:13: error: 'FTM0_MOD' was not declared in this scope
327 | if (FTM0_MOD != 0xFFFF || (FTM0_SC & 0x7F) != FTM0_SC_VALUE) {
| ^~~~~~~~
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp:327:36: error: 'FTM0_SC' was not declared in this scope
327 | if (FTM0_MOD != 0xFFFF || (FTM0_SC & 0x7F) != FTM0_SC_VALUE) {
| ^~~~~~~
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp:88:24: error: 'FTM_SC_TOIE' was not declared in this scope; did you mean 'FTM0_SC_VALUE'?
88 | #define FTM0_SC_VALUE (FTM_SC_TOIE | FTM_SC_CLKS(1) | FTM_SC_PS(0))
| ^~~~~~~~~~~
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp:327:55: note: in expansion of macro 'FTM0_SC_VALUE'
327 | if (FTM0_MOD != 0xFFFF || (FTM0_SC & 0x7F) != FTM0_SC_VALUE) {
| ^~~~~~~~~~~~~
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp:88:38: error: 'FTM_SC_CLKS' was not declared in this scope; did you mean 'FTM0_SC_VALUE'?
88 | #define FTM0_SC_VALUE (FTM_SC_TOIE | FTM_SC_CLKS(1) | FTM_SC_PS(0))
| ^~~~~~~~~~~
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp:327:55: note: in expansion of macro 'FTM0_SC_VALUE'
327 | if (FTM0_MOD != 0xFFFF || (FTM0_SC & 0x7F) != FTM0_SC_VALUE) {
| ^~~~~~~~~~~~~
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp:88:55: error: 'FTM_SC_PS' was not declared in this scope
88 | #define FTM0_SC_VALUE (FTM_SC_TOIE | FTM_SC_CLKS(1) | FTM_SC_PS(0))
| ^~~~~~~~~
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp:327:55: note: in expansion of macro 'FTM0_SC_VALUE'
327 | if (FTM0_MOD != 0xFFFF || (FTM0_SC & 0x7F) != FTM0_SC_VALUE) {
| ^~~~~~~~~~~~~
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp:329:17: error: 'FTM0_CNT' was not declared in this scope
329 | FTM0_CNT = 0;
| ^~~~~~~~
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp:337:40: error: 'FTM0_C4SC' was not declared in this scope
337 | case 6: channel = 4; reg = &FTM0_C4SC; break;
| ^~~~~~~~~
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp:338:40: error: 'FTM0_C2SC' was not declared in this scope
338 | case 9: channel = 2; reg = &FTM0_C2SC; break;
| ^~~~~~~~~
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp:339:40: error: 'FTM0_C3SC' was not declared in this scope
339 | case 10: channel = 3; reg = &FTM0_C3SC; break;
| ^~~~~~~~~
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp:340:40: error: 'FTM0_C5SC' was not declared in this scope
340 | case 20: channel = 5; reg = &FTM0_C5SC; break;
| ^~~~~~~~~
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp:341:40: error: 'FTM0_C0SC' was not declared in this scope
341 | case 22: channel = 0; reg = &FTM0_C0SC; break;
| ^~~~~~~~~
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp:342:40: error: 'FTM0_C1SC' was not declared in this scope
342 | case 23: channel = 1; reg = &FTM0_C1SC; break;
| ^~~~~~~~~
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp:356:36: error: 'PORT_PCR_MUX' was not declared in this scope
356 | *portConfigRegister(pin) = PORT_PCR_MUX(4);
| ^~~~~~~~~~~~
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp:357:9: error: 'CSC_CHANGE' was not declared in this scope; did you mean 'CHANGE'?
357 | CSC_CHANGE(ftm, cscEdge); // input capture & interrupt on rising edge
| ^~~~~~~~~~
| CHANGE
In file included from C:\Users\Marco\AppData\Local\Arduino15\packages\teensy\hardware\avr\1.58.1\cores\teensy4/core_pins.h:32,
from C:\Users\Marco\AppData\Local\Arduino15\packages\teensy\hardware\avr\1.58.1\cores\teensy4/wiring.h:39,
from C:\Users\Marco\AppData\Local\Arduino15\packages\teensy\hardware\avr\1.58.1\cores\teensy4/WProgram.h:46,
from C:\Users\Marco\AppData\Local\Temp\arduino\sketches\D4BFE03DFE67738E5C0AE842BDA8AAA5/pch/Arduino.h:6,
from c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.h:29,
from c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp:31:
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp:358:27: error: 'IRQ_FTM0' was not declared in this scope; did you mean 'IRQ_CTI0'?
358 | NVIC_SET_PRIORITY(IRQ_FTM0, 32);
| ^~~~~~~~
C:\Users\Marco\AppData\Local\Arduino15\packages\teensy\hardware\avr\1.58.1\cores\teensy4/imxrt.h:9783:83: note: in definition of macro 'NVIC_SET_PRIORITY'
9783 | #define NVIC_SET_PRIORITY(irqnum, priority) (*((volatile uint8_t *)0xE000E400 + (irqnum)) = (uint8_t)(priority))
| ^~~~~~
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp: In member function 'void PulsePositionInput::isr()':
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp:368:9: error: 'CSC_INTACK' was not declared in this scope
368 | CSC_INTACK(ftm, cscEdge); // input capture & interrupt on rising edge
| ^~~~~~~~~~
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp:85:65: error: 'CLOCKS_PER_MICROSECOND' was not declared in this scope; did you mean 'CLOCKS_PER_SEC'?
85 | #define RX_MINIMUM_SPACE_CLOCKS (uint32_t)(RX_MINIMUM_SPACE * CLOCKS_PER_MICROSECOND)
| ^~~~~~~~~~~~~~~~~~~~~~
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp:377:22: note: in expansion of macro 'RX_MINIMUM_SPACE_CLOCKS'
377 | if (count >= RX_MINIMUM_SPACE_CLOCKS) {
| ^~~~~~~~~~~~~~~~~~~~~~~
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp: In member function 'float PulsePositionInput::read(uint8_t)':
c:\Users\Marco\Documents\Arduino\libraries\PulsePosition\PulsePosition.cpp:417:38: error: 'CLOCKS_PER_MICROSECOND' was not declared in this scope; did you mean 'CLOCKS_PER_SEC'?
417 | return (float)value / (float)CLOCKS_PER_MICROSECOND;
| ^~~~~~~~~~~~~~~~~~~~~~
| CLOCKS_PER_SEC
exit status 1
Compilation error: exit status 1