Oberon RTK

Change Note 2024-04-25

Alarms timing, new example programs.

New Library Module Alarms

  • Use the timer's alarms for triggering interrupt handlers.
  • [Alarms.mod]({{< relref "/docs/lib/rp-any/Alarms/" >}})

New Example Program AlarmEval

  • Introduce the test module Alarms, based on the same device concept as used for other peripherals, such as UARTs.
  • Evaluate and test the module for various timing scenarios, including different methods of recovery from attempting to arm alarms with time values in the past.
  • Evaluate pre-caching of code residing in flash memory, in lieu of loading it into SRAM.
  • Draw conclusions and design decisions for the library module Alarms, which is a simplified version of the module evaluated here, based on the test results.
  • [AlarmEval]({{<relref "/docs/examples/v1/alarmeval">}})

New Example Program AlarmTest

  • Test the library module Alarms
  • [AlarmTest]({{<relref "/docs/examples/v2/alarmtest">}})

New Example Program BlinkPlusAlarm

  • A quick very basic proof of concept to show that a thread can be scheduled by an interrupt, a feature of kernel v2 not available with kernel v1.
  • [BlinkPlusAlarm]({{<relref "/docs/examples/v1/blinkplusalarm">}})

Modules Exceptions and RuntimeErrors

  • With the expanded functionality of SYSTEM.VAL, simplify setting the thumb bit when installing exception handlers.
  • [Exceptions.mod]({{< relref "/docs/lib/rp-any/Exceptions/" >}}), [RuntimeErrors.mod]({{< relref "/docs/lib/rp-any/RuntimeErrors/" >}})

Last updated: 25 April 2024