VT100 Terminal App
Circle VT100 module documentation
Loading...
Searching...
No Matches
CHAL Class Reference

Provides buzzer control, GPIO switching, and timing utilities. More...

#include <hal.h>

Public Member Functions

 CHAL (CInterruptSystem *pInterruptSystem, CTimer *pTimer)
 Construct the hardware abstraction layer with timer context.
 
 ~CHAL (void)
 Ensure peripherals are quiesced on shutdown.
 
boolean Initialize (void)
 Prepare GPIO and timer resources required for HAL features.
 
void BEEP (void)
 Play a fixed-duration beep using current volume setting.
 
void Click (void)
 Play a short click feedback tone.
 
void StartBuzzer (unsigned duty, unsigned duration=0)
 Begin buzzer output with optional auto-stop duration.
 
void StopBuzzer (void)
 Halt buzzer activity immediately.
 
void SwitchRxTx (void)
 Toggle the hardware RX/TX pin swap relay.
 
void ConfigureRxTxSwap (boolean enableSwap)
 Set the RX/TX swap mode explicitly.
 
void ConfigureBuzzerVolume (unsigned volumePercent)
 Store the buzzer volume percentage.
 
void Update (void)
 Update fast timers to manage auto-stop behavior.
 

Static Public Member Functions

static CHALGet (void)
 Access the singleton HAL instance.
 

Detailed Description

Provides buzzer control, GPIO switching, and timing utilities.

The hardware abstraction maintains the PWM backing timer, supervises auto-stop behavior, and exposes helper methods for the kernel to trigger audible feedback. It also implements logic for dynamically swapping the UART pins when RS-232 wiring requires it.


The documentation for this class was generated from the following files: