Approved content

The content below is provided by a partner.

AlexandreFrolov/DS3231 1.2.0 GitHub

DS3231

MakeCode DS3231 RTC Extension for micro:bit

https://www.maximintegrated.com/en/products/analog/real-time-clocks/DS3231.html

Add extension

Copy and paste this to Extension search box: https://github.com/AlexandreFrolov/DS3231

Date

setDate(weekday: number, day: number, month: number, year: number)

input.onButtonPressed(Button.A, function () {
    DS3231.setDate(2, 28, 7, 2020)
})
function dateString()

function doTest () {
    OLED.writeStringNewLine(DS3231.dateString())
}

Time

Currently support 24-hour mode only.

setTime(hour: number, mins: number, secs: number)

input.onButtonPressed(Button.A, function () {
    DS3231.setTime(11, 10, 50)
})
function timeString()

function doTest () {
    OLED.writeStringNewLine(DS3231.timeString())
}
hours()

function doTest () {
    OLED.writeNumNewLine(DS3231.hours())
}
minutes()

function doTest () {
    OLED.writeNumNewLine(DS3231.minutes())
}
seconds()

function doTest () {
    OLED.writeNumNewLine(DS3231.seconds())
}
year()

function doTest () {
    OLED.writeNumNewLine(DS3231.year())
}
month()

function doTest () {
    OLED.writeNumNewLine(DS3231.month())
}
day()

function doTest () {
    OLED.writeNumNewLine(DS3231.day())
}
weekday()

function doTest () {
    OLED.writeNumNewLine(DS3231.weekday())
}

Alarms

alarm1(hour: number, mins: number, secs: number)

input.onButtonPressed(Button.B, function () {
    DS3231.alarm1(11, 10, 30)
    doTest()
    basic.showIcon(IconNames.Diamond)
})
alarm2(hour: number, mins: number)

input.onButtonPressed(Button.B, function () {
    DS3231.alarm2(11, 11)
    doTest()
    basic.showIcon(IconNames.Diamond)
})
clearAlarms()

input.onButtonPressed(Button.AB, function () {
    DS3231.clearAlarms()
})

Temperature

temperature()

function doTest () {
    OLED.writeNumNewLine(DS3231.temperature())
}

License

MIT

Supported targets

DS3231=github:AlexandreFrolov/DS3231#v1.2.0