MCU Services: Difference between revisions
m Put the assembly opcode in a code section to make it appearent that it's an assembly opcode and not part of some English sentence |
Add function signatures; only create page for bit more complex functions |
||
Line 124: | Line 124: | ||
|- | |- | ||
| 0x00010080 | | 0x00010080 | ||
| SetRTC | | [[MCURTC:SetRTC|SetRTC]] | ||
|- | |- | ||
| 0x00020000 | | 0x00020000 | ||
| GetRTC | | [[MCURTC:GetRTC|GetRTC]] | ||
|- | |- | ||
| 0x00030040 | | 0x00030040 | ||
| SetRTCSeconds | | SetRTCSeconds(u8 seconds) | ||
|- | |- | ||
| 0x00040000 | | 0x00040000 | ||
| GetRTCSeconds | | u8 GetRTCSeconds | ||
|- | |- | ||
| 0x00050040 | | 0x00050040 | ||
| SetRTCMinutes | | SetRTCMinutes(u8 minutes) | ||
|- | |- | ||
| 0x00060000 | | 0x00060000 | ||
| GetRTCMinutes | | u8 GetRTCMinutes | ||
|- | |- | ||
| 0x00070040 | | 0x00070040 | ||
| SetRTCHours | | SetRTCHours(u8 hours) | ||
|- | |- | ||
| 0x00080000 | | 0x00080000 | ||
| GetRTCHours | | u8 GetRTCHours | ||
|- | |- | ||
| 0x00090040 | | 0x00090040 | ||
| SetRTCDayOfWeek | | SetRTCDayOfWeek(u8 dayno) | ||
|- | |- | ||
| 0x000A0000 | | 0x000A0000 | ||
| GetRTCDayOfWeek | | u8 GetRTCDayOfWeek | ||
|- | |- | ||
| 0x000B0040 | | 0x000B0040 | ||
| SetRTCDayOfMonth | | SetRTCDayOfMonth(u8 day) | ||
|- | |- | ||
| 0x000C0000 | | 0x000C0000 | ||
| GetRTCDayOfMonth | | u8 GetRTCDayOfMonth | ||
|- | |- | ||
| 0x000D0040 | | 0x000D0040 | ||
| SetRTCMonth | | SetRTCMonth(u8 month) | ||
|- | |- | ||
| 0x000E0000 | | 0x000E0000 | ||
| GetRTCMonth | | u8 GetRTCMonth | ||
|- | |- | ||
| 0x000F0040 | | 0x000F0040 | ||
| SetRTCYear | | SetRTCYear(u8 year) where year = year - 2000 | ||
|- | |- | ||
| 0x00100000 | | 0x00100000 | ||
| GetRTCYear | | u8 GetRTCYear where year = result + 2000 | ||
|- | |- | ||
| 0x00110040 | | 0x00110040 | ||
| SetRTCLeapYearCounter | | SetRTCLeapYearCounter(u8 leap) | ||
|- | |- | ||
| 0x00120000 | | 0x00120000 | ||
| GetRTCLeapYearCounter | | u8 GetRTCLeapYearCounter | ||
|- | |- | ||
| 0x00130080 | | 0x00130080 | ||
| SetRTCAlarm | | [[MCURTC:SetRTCAlarm|SetRTCAlarm]] | ||
|- | |- | ||
| 0x00140000 | | 0x00140000 | ||
| GetRTCAlarm | | [[MCURTC:GetRTCAlarm|GetRTCAlarm]] | ||
|- | |- | ||
| 0x00150040 | | 0x00150040 | ||
| SetRTCAlarmComponent[0] | | SetRTCAlarmComponent[0] (u8 val) | ||
|- | |- | ||
| 0x00160000 | | 0x00160000 | ||
| GetRTCAlarmComponent[0] | | u8 GetRTCAlarmComponent[0] | ||
|- | |- | ||
| 0x00170040 | | 0x00170040 | ||
| SetRTCAlarmComponent[1] | | SetRTCAlarmComponent[1] (u8 val) | ||
|- | |- | ||
| 0x00180000 | | 0x00180000 | ||
| GetRTCAlarmComponent[1] | | u8 GetRTCAlarmComponent[1] | ||
|- | |- | ||
| 0x00190040 | | 0x00190040 | ||
| SetRTCAlarmComponent[2] | | SetRTCAlarmComponent[2] (u8 val) | ||
|- | |- | ||
| 0x001A0000 | | 0x001A0000 | ||
| GetRTCAlarmComponent[2] | | u8 GetRTCAlarmComponent[2] | ||
|- | |- | ||
| 0x001B0040 | | 0x001B0040 | ||
| SetRTCAlarmComponent[3] | | SetRTCAlarmComponent[3] (u8 val) | ||
|- | |- | ||
| 0x001C0000 | | 0x001C0000 | ||
| GetRTCAlarmComponent[3] | | u8 GetRTCAlarmComponent[3] | ||
|- | |- | ||
| 0x001D0040 | | 0x001D0040 | ||
| SetRTCAlarmComponent[4] | | SetRTCAlarmComponent[4] (u8 val) | ||
|- | |- | ||
| 0x001E0000 | | 0x001E0000 | ||
| GetRTCAlarmComponent[4] | | u8 GetRTCAlarmComponent[4] | ||
|- | |- | ||
| 0x001F0040 | | 0x001F0040 | ||
| SetPedometerRecordingMode | | SetPedometerRecordingMode(u8 mode) | ||
|- | |- | ||
| 0x00200000 | | 0x00200000 | ||
| GetPedometerRecordingMode | | u8 GetPedometerRecordingMode | ||
|- | |- | ||
| 0x00210080 | | 0x00210080 | ||
| GetStepCount (for the current day) | | u8 GetStepCount (for the current day) | ||
|- | |- | ||
| 0x00220042 | | 0x00220042 | ||
Line 226: | Line 226: | ||
|- | |- | ||
| 0x00230000 | | 0x00230000 | ||
| ??? writes 1 to register 0x4E which is not writable | | void ??? writes 1 to register 0x4E which is not writable | ||
|- | |- | ||
| 0x00240000 | | 0x00240000 | ||
| GetPowerEventHandle. MCU notifications 1, 8, 9, 10, 13, 14 and 15 signal this. | | Handle GetPowerEventHandle. MCU notifications 1, 8, 9, 10, 13, 14 and 15 signal this. | ||
see [[I2C_Registers#Device_3|Register 0x18]] | see [[I2C_Registers#Device_3|Register 0x18]] | ||
|- | |- | ||
| 0x00250000 | | 0x00250000 | ||
| GetPowerInterruptHistory | | u32 GetPowerInterruptHistory | ||
|- | |- | ||
| 0x00260000 | | 0x00260000 | ||
| CheckRegister02hBit0 | | bool CheckRegister02hBit0 | ||
|- | |- | ||
| 0x00270000 | | 0x00270000 | ||
| ClearRegister02hBit0 (does nothing since the register is not writable) | | void ClearRegister02hBit0 (does nothing since the register is not writable) | ||
|- | |- | ||
| 0x00280000 | | 0x00280000 | ||
| CheckRegister02hBit1 | | bool CheckRegister02hBit1 | ||
|- | |- | ||
| 0x00290000 | | 0x00290000 | ||
| ClearRegister02hBit1 | | void ClearRegister02hBit1 | ||
|- | |- | ||
| 0x002A0000 | | 0x002A0000 | ||
| GetShellState. This writes the value of I2C-MCU register 0xf bit1 to u8 cmdreply[2]. | | bool GetShellState. This writes the value of I2C-MCU register 0xf bit1 to u8 cmdreply[2]. | ||
|- | |- | ||
| 0x002B0000 | | 0x002B0000 | ||
| GetAdapterState. This writes the value of I2C-MCU register 0xf bit3 to u8 cmdreply[2]. | | bool GetAdapterState. This writes the value of I2C-MCU register 0xf bit3 to u8 cmdreply[2]. | ||
|- | |- | ||
| 0x002C0000 | | 0x002C0000 | ||
| GetBatteryChargeState. This writes the value of I2C-MCU register 0xf bit4 to u8 cmdreply[2]. | | bool GetBatteryChargeState. This writes the value of I2C-MCU register 0xf bit4 to u8 cmdreply[2]. | ||
|- | |- | ||
| 0x002D0000 | | 0x002D0000 | ||
Line 260: | Line 260: | ||
|- | |- | ||
| 0x002E0000 | | 0x002E0000 | ||
| GetBatteryEmptyPatternByte0 | | u8 GetBatteryEmptyPatternByte0 | ||
|- | |- | ||
| 0x002F0000 | | 0x002F0000 | ||
| GetBatteryEmptyPatternByte0_safe™ | | u8 GetBatteryEmptyPatternByte0_safe™ | ||
|- | |- | ||
| 0x00300040 | | 0x00300040 | ||
| SetLEDBrightness (see [[I2C_Registers#Device_3|Register 0x28]]) | | SetLEDBrightness(u8 brightness) (see [[I2C_Registers#Device_3|Register 0x28]]) | ||
|- | |- | ||
| 0x00310000 | | 0x00310000 | ||
| GetLEDBrightness (see [[I2C_Registers#Device_3|Register 0x28]]) | | u8 GetLEDBrightness (see [[I2C_Registers#Device_3|Register 0x28]]) | ||
|- | |- | ||
| 0x00320000 | | 0x00320000 | ||
| PowerOff (writes 0x1 to i2c MCU device, [[I2C_Registers#Device_3|reg 0x20]]) | | void PowerOff (writes 0x1 to i2c MCU device, [[I2C_Registers#Device_3|reg 0x20]]) | ||
|- | |- | ||
| 0x00330000 | | 0x00330000 | ||
| HardwareReboot (writes 0x4 to i2c MCU device, [[I2C_Registers#Device_3|reg 0x20]]) | | void HardwareReboot (writes 0x4 to i2c MCU device, [[I2C_Registers#Device_3|reg 0x20]]) | ||
|- | |- | ||
| 0x00340000 | | 0x00340000 | ||
Line 284: | Line 284: | ||
|- | |- | ||
| 0x00360040 | | 0x00360040 | ||
| SetWatchdogTimer | | SetWatchdogTimer(u8 timer) | ||
|- | |- | ||
| 0x00370000 | | 0x00370000 | ||
| GetWatchdogTimer | | u8 GetWatchdogTimer | ||
|- | |- | ||
| 0x00380042 | | 0x00380042 | ||
Line 308: | Line 308: | ||
|- | |- | ||
| 0x003E0040 | | 0x003E0040 | ||
| WriteRegister50h | | WriteRegister50h(u8 value) | ||
|- | |- | ||
| 0x003F0000 | | 0x003F0000 | ||
| ReadRegister50h | | u8 ReadRegister50h | ||
|- | |- | ||
| 0x00400040 | | 0x00400040 | ||
| WriteRegister51h | | WriteRegister51h(u8 value) | ||
|- | |- | ||
| 0x00410000 | | 0x00410000 | ||
| ReadRegister51h | | u8 ReadRegister51h | ||
|- | |- | ||
| 0x00420040 | | 0x00420040 | ||
Line 323: | Line 323: | ||
|- | |- | ||
| 0x00430040 | | 0x00430040 | ||
| SetScreenFlickerTop | | SetScreenFlickerTop(u8 flicker) | ||
|- | |- | ||
| 0x00440000 | | 0x00440000 | ||
| GetScreenFlickerTop | | u8 GetScreenFlickerTop | ||
|- | |- | ||
| 0x00450040 | | 0x00450040 | ||
| SetScreenFlickerBottom | | SetScreenFlickerBottom(u8 flicker) | ||
|- | |- | ||
| 0x00460000 | | 0x00460000 | ||
| GetScreenFlickerBottom | | u8 GetScreenFlickerBottom | ||
|- | |- | ||
| 0x00470080 | | 0x00470080 | ||
| SetVolumeSliderBounds | | SetVolumeSliderBounds(u8 low, u8 high) (see [[I2C_Registers#Device_3|Register 0x58]]) | ||
|- | |- | ||
| 0x00480000 | | 0x00480000 | ||
| GetVolumeSliderBounds | | u8 low, u8 high GetVolumeSliderBounds | ||
|- | |- | ||
| 0x00490040 | | 0x00490040 | ||
| SetInterruptMask (see [[I2C_Registers#Device_3|Register 0x18]]) | | SetInterruptMask(u32 mask) (see [[I2C_Registers#Device_3|Register 0x18]]) | ||
|- | |- | ||
| 0x004A0000 | | 0x004A0000 | ||
| GetInterruptMask (see [[I2C_Registers#Device_3|Register 0x18]]) | | u32 GetInterruptMask (see [[I2C_Registers#Device_3|Register 0x18]]) | ||
|- | |- | ||
| 0x004B0000 | | 0x004B0000 | ||
| ExitExclusiveInterruptMode | | void ExitExclusiveInterruptMode | ||
|- | |- | ||
| 0x004C0000 | | 0x004C0000 | ||
| EnterExclusiveInterruptMode | | void EnterExclusiveInterruptMode | ||
|- | |- | ||
| 0x004D0000 | | 0x004D0000 | ||
| [[MCURTC: | | [[MCURTC:ReadInterrupt|ReadInterrupt]] (see [[I2C_Registers#Device_3|Register 0x10]]) | ||
|- | |- | ||
| 0x004E0040 | | 0x004E0040 | ||
Line 362: | Line 362: | ||
|- | |- | ||
| 0x00500000 | | 0x00500000 | ||
| IsMCUFirmUpdated | | u32 IsMCUFirmUpdated | ||
|- | |- | ||
| 0x00510040 | | 0x00510040 |