Xyris  0.5
RTC Namespace Reference

Functions

void init ()
 
uint64_t getEpoch ()
 

Variables

uint32_t second
 
uint32_t minute
 
uint32_t hour
 
uint32_t day
 
uint32_t month
 
uint32_t year
 
uint32_t century
 

Function Documentation

◆ getEpoch()

uint64_t RTC::getEpoch ( )

Get a epoch number from rtc.

Returns
uint64_t A epoch number

Definition at line 193 of file rtc.cpp.

194 {
195  read();
196  return getUnixEpoch(second, minute, hour, day, month, year);
197 }
+ Here is the caller graph for this function:

◆ init()

void RTC::init ( )

Initializes the Real Time Clock driver for the x86_64 architecture.

Definition at line 43 of file rtc.cpp.

44 {
45  // Initializer
46  writeByte(RTC_CMOS_PORT, 0x8A);
47  writeByte(RTC_DATA_PORT, 0x20);
48  // Enable hardware interrupt 8 - Make sure interrupts are disabled beforehand
49  writeByte(RTC_CMOS_PORT, 0x8B);
50  char prev = readByte(RTC_DATA_PORT);
51  writeByte(RTC_CMOS_PORT, 0x8B);
52  writeByte(RTC_DATA_PORT, (prev | 0x40));
53  // Register our callback function with hardware interrupt 8
55 }
+ Here is the call graph for this function:

Variable Documentation

◆ century

uint32_t RTC::century

Definition at line 41 of file rtc.cpp.

◆ day

uint32_t RTC::day

Definition at line 38 of file rtc.cpp.

◆ hour

uint32_t RTC::hour

Definition at line 37 of file rtc.cpp.

◆ minute

uint32_t RTC::minute

Definition at line 36 of file rtc.cpp.

◆ month

uint32_t RTC::month

Definition at line 39 of file rtc.cpp.

◆ second

uint32_t RTC::second

Definition at line 35 of file rtc.cpp.

◆ year

uint32_t RTC::year

Definition at line 40 of file rtc.cpp.

RTC::second
uint32_t second
Definition: rtc.cpp:35
RTC::hour
uint32_t hour
Definition: rtc.cpp:37
RTC_DATA_PORT
#define RTC_DATA_PORT
Definition: rtc.cpp:21
RTC::minute
uint32_t minute
Definition: rtc.cpp:36
RTC::month
uint32_t month
Definition: rtc.cpp:39
Interrupts::registerHandler
void registerHandler(uint8_t interrupt, InterruptHandler_t handler)
Definition: isr.cpp:98
Interrupts::INTERRUPT_8
@ INTERRUPT_8
Definition: isr.hpp:68
RTC::day
uint32_t day
Definition: rtc.cpp:38
writeByte
void writeByte(uint16_t port, uint8_t data)
Writes a byte (8 bits) to the CPU bus at a given port address.
Definition: ports.cpp:19
RTC_CMOS_PORT
#define RTC_CMOS_PORT
Definition: rtc.cpp:20
readByte
uint8_t readByte(uint16_t port)
Reads a byte (8 bits) off the CPU bus at a given port address.
Definition: ports.cpp:13
RTC::year
uint32_t year
Definition: rtc.cpp:40