mirror of
https://github.com/esp8266/Arduino.git
synced 2025-06-23 19:21:59 +03:00
Add offset parameter to rtcUserMemoryRead/Write, expose RTC_USER_MEM in esp8266_peri.h
This commit is contained in:
@ -112,21 +112,21 @@ void EspClass::deepSleep(uint32_t time_us, WakeMode mode)
|
||||
esp_yield();
|
||||
}
|
||||
|
||||
bool EspClass::rtcUserMemoryRead(uint32_t *data, size_t size)
|
||||
bool EspClass::rtcUserMemoryRead(uint32_t offset, uint32_t *data, size_t size)
|
||||
{
|
||||
if (size > 512) {
|
||||
if (size + offset > 512) {
|
||||
return false;
|
||||
} else {
|
||||
return system_rtc_mem_read(64, data, size);
|
||||
return system_rtc_mem_read(64 + offset, data, size);
|
||||
}
|
||||
}
|
||||
|
||||
bool EspClass::rtcUserMemoryWrite(uint32_t *data, size_t size)
|
||||
bool EspClass::rtcUserMemoryWrite(uint32_t offset, uint32_t *data, size_t size)
|
||||
{
|
||||
if (size > 512) {
|
||||
if (size + offset > 512) {
|
||||
return false;
|
||||
} else {
|
||||
return system_rtc_mem_write(64, data, size);
|
||||
return system_rtc_mem_write(64 + offset, data, size);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -94,8 +94,8 @@ class EspClass {
|
||||
|
||||
void deepSleep(uint32_t time_us, RFMode mode = RF_DEFAULT);
|
||||
|
||||
bool rtcUserMemoryRead(uint32_t *data, size_t size);
|
||||
bool rtcUserMemoryWrite(uint32_t *data, size_t size);
|
||||
bool rtcUserMemoryRead(uint32_t offset, uint32_t *data, size_t size);
|
||||
bool rtcUserMemoryWrite(uint32_t offset, uint32_t *data, size_t size);
|
||||
|
||||
void reset();
|
||||
void restart();
|
||||
|
@ -169,6 +169,8 @@ extern uint8_t esp8266_gpioToFn[16];
|
||||
#define RTCIC ESP8266_REG(0x724) //RTC INT Clear
|
||||
#define RTCIE ESP8266_REG(0x728) //RTC INT Enable
|
||||
|
||||
#define RTC_USER_MEM ((volatile uint32_t*)0x60001200)
|
||||
|
||||
//IO SWAP Register
|
||||
#define IOSWAP ESP8266_DREG(0x28)
|
||||
#define IOSWAPU 0 //Swaps UART
|
||||
|
Reference in New Issue
Block a user