CORE API Documentation - Core8-16F
The CORE object is an instance of the CORE16F_System_Interface_t structure, which provides a collection of core functionalities available in the CORE8-16F framework. Below is a brief overview of the key functions and features available through CORE.
CORE Definition
const CORE16F_System_Interface_t CORE = {
.Initialize = &CORE16F_init,
#ifdef _CORE16F_SYSTEM_INCLUDE_DELAYS_ENABLE
.Delay_MS = &CORE16F_Delay_BlockingMS,
#endif /_CORE16F_SYSTEM_INCLUDE_DELAYS_ENABLE/
_CORE16F_SYSTEM_INCLUDE_DELAYS_ENABLE/
#ifdef _CORE16F_SYSTEM_EVENTS_ENABLE
.Events_Initialize = &TimedEventSystem_Init,
.Events_Add = &ScheduleEvent,
.Events_Check = &CheckEvents,
.Events_Remove = &CancelEvent,
#endif
.Make16 = &CORE_Make_16,
.Low4 = &CORE_Return_4bit_Low,
.High4 = &CORE_Return_4bit_High,
.Set_Bit = &CORE_Set_Bit,
.Clear_Bit = &CORE_Clear_Bit,
.FloatToString = &CORE_floatToString,
.IntToString = &CORE_intToString,
};
Key Functionalities of CORE
- Initialization: CORE.Initialize() initializes the core system, including clock and peripheral setup.
- Delays (Conditional): If enabled, CORE.Delay_MS(timeMS) provides a blocking delay in milliseconds.
- Event Management (Conditional): If enabled, CORE offers several event management functions:
- CORE.Events_Initialize(): Initializes the event management system, allowing events to be scheduled and handled.
- CORE.Events_Add(delay_ms, callback, interval): Schedules an event to occur after a specified delay in milliseconds. The callback function will be called when the event occurs, and interval specifies if the event should repeat (0 for a one-time event).
- CORE.Events_Check(): Checks for any pending events and executes their associated callbacks if the conditions are met.
- CORE.Events_Remove(callback): Cancels a previously scheduled event by providing the callback function associated with it. This is useful for stopping recurring events or removing unwanted scheduled events.
- Utility Functions: Various helper functions are provided:
- CORE.Make16(high_byte, low_byte): Combines two 8-bit values into a 16-bit value.
- CORE.Low4(byte), CORE.High4(byte): Extracts lower or higher 4 bits from an 8-bit value.
- CORE.Set_Bit(byte, bit_position), CORE.Clear_Bit(byte, bit_position): Sets or clears a specific bit in an 8-bit value.
- CORE.FloatToString(number, buffer, decimalPlaces): Converts a float to a string representation.
- CORE.IntToString(number, buffer): Converts an integer to a string representation.
The CORE object provides a convenient and centralized interface for accessing key functions of the CORE8-16F system, making it easier for developers to initialize, control, and manage the microcontroller's features effectively.