### Releases v1.2.0 1. Fix `multiple-definitions` linker error. Drop `src_cpp` and `src_h` directories 2. Add example [multiFileProject](examples/multiFileProject) to demo for multiple-file project. 3. Optimize library code by using `reference-passing` instead of `value-passing` 4. Update all examples
39 lines
1.7 KiB
Arduino
39 lines
1.7 KiB
Arduino
/****************************************************************************************************************************
|
|
multiFileProject.ino
|
|
For Teensy boards
|
|
Written by Khoi Hoang
|
|
|
|
Built by Khoi Hoang https://github.com/khoih-prog/Teensy_TimerInterrupt
|
|
Licensed under MIT license
|
|
|
|
Now even you use all these new 16 ISR-based timers,with their maximum interval practically unlimited (limited only by
|
|
unsigned long miliseconds), you just consume only one NRF52 timer and avoid conflicting with other cores' tasks.
|
|
The accuracy is nearly perfect compared to software timers. The most important feature is they're ISR-based timers
|
|
Therefore, their executions are not blocked by bad-behaving functions / tasks.
|
|
This important feature is absolutely necessary for mission-critical tasks.
|
|
*****************************************************************************************************************************/
|
|
|
|
// To demo how to include files in multi-file Projects
|
|
|
|
#if !( defined(ARDUINO_ARCH_RP2040) || defined(ARDUINO_RASPBERRY_PI_PICO) || defined(ARDUINO_ADAFRUIT_FEATHER_RP2040) || defined(ARDUINO_GENERIC_RP2040) ) && !defined(ARDUINO_ARCH_MBED)
|
|
#error This code is intended to run on the non-mbed RP2040 arduino-pico platform! Please check your Tools->Board setting.
|
|
#endif
|
|
|
|
#include "multiFileProject.h"
|
|
|
|
// Can be included as many times as necessary, without `Multiple Definitions` Linker Error
|
|
#include "RPi_Pico_TimerInterrupt.h"
|
|
|
|
// To be included only in main(), .ino with setup() to avoid `Multiple Definitions` Linker Error
|
|
#include "RPi_Pico_ISR_Timer.h"
|
|
|
|
void setup()
|
|
{
|
|
// put your setup code here, to run once:
|
|
}
|
|
|
|
void loop()
|
|
{
|
|
// put your main code here, to run repeatedly:
|
|
}
|