Module tm4c123x_hal::sysctl

source ·
Expand description

System Control

The SYSCTL peripheral controls clocks and power.

The TM4C123x can be clocked from the Main Oscillator or the PLL, through a divider. The Main Oscillator can be either the internal 16 MHz precision oscillator, a 4 MHz derivation of the same, or an external crystal.

SYSCTL includes the following registers:

  • Device ID (class, major, minor, family, package, temperature range, )
  • Brown-out reset control
  • Brown-out/PLL interrupt control
  • Reset cause
  • Run-time clock configuration
  • GPIO high-performance bus control
  • System Properties
  • Registers to indicate whether peripherals are present
  • Registers to reset peripherals
  • Registers to enable/disable clocking of peripherals

See the LM4F120 datasheet, page 228 for a full list.

Modules

This module is all about identifying the physical chip we’re running on.

Structs

Used to configure the clock generators.
Frozen clock frequencies
Used to gate access to the run-time power control features of the chip.
Constrained SYSCTL peripheral.

Enums

Selects which crystal is fitted to the XOSC pins.
Selects how much to divide the system oscillator down.
List of peripherals that can be enabled or disabled
Selects the system oscillator source
Selects what to divide the PLL’s 400MHz down to.
Select whether the peripheral should be on or off
Select in which mode the peripheral should be affected
Selects the source for the system clock

Traits

Extension trait that constrains the SYSCTL peripheral

Functions

Activate or De-Activate clocks and power to the given peripheral in the given run mode.
Reset a peripheral