Example of using file interfaces for mDot
Fork of BackupRegisterExample by
Diff: main.cpp
- Revision:
- 27:0bc6554f0bad
- Parent:
- 26:99458ed6fd31
--- a/main.cpp Sun Feb 04 01:12:04 2018 +0000 +++ b/main.cpp Wed Feb 07 19:44:15 2018 +0000 @@ -45,36 +45,42 @@ assert(dot); - printf("\r\nenter loop*****\r\n"); + printf("\r\nCreate a file\r\n"); + + uint8_t buffer[20]; + + memset(buffer, 0x23, 20); + + dot->saveUserFile("Test", buffer, 20); + + uint8_t new_buffer[20]; + + memset(new_buffer, 0, 20); + + dot->readUserFile("Test", new_buffer, 20); + + printf("Read from file: %02x %02x %02x\r\n", new_buffer[0], new_buffer[1], new_buffer[2]); + + + memset(buffer, 0x78, 20); + + + // Similar to C open interface + // see http://codewiki.wikidot.com/c:system-calls:open + mDot::mdot_file my_file = dot->openUserFile("Test2", mDot::FM_CREAT | mDot::FM_WRONLY | mDot::FM_APPEND); + + dot->writeUserFile(my_file, buffer, 20); + + dot->closeUserFile(my_file); + + memset(new_buffer, 0, 20); + + dot->readUserFile("Test2", new_buffer, 20); + + printf("Read from file: %02x %02x %02x\r\n", new_buffer[0], new_buffer[1], new_buffer[2]); while (true) { - int8_t bk_reg = 1; // 0, 1, mDot::UBR0, or mDot::UBR1 - uint32_t value; - - dot->readUserBackupRegister(bk_reg, value); - - printf("initial read value %lu from reg UBR%d\r\n", value, bk_reg); - - value = rand(); - - printf("save value %lu to reg UBR%d\r\n", value, bk_reg); - - dot->writeUserBackupRegister(bk_reg, value); - - dot->readUserBackupRegister(bk_reg, value); - - printf("after write read value %lu from reg UBR%d\r\n", value, bk_reg); - - // ONLY ONE of the three functions below should be uncommented depending on the desired wakeup method - //sleep_wake_rtc_only(deep_sleep); - //sleep_wake_interrupt_only(deep_sleep); - printf("sleep 5 seconds\r\n"); - dot->sleep(5, mDot::RTC_ALARM, deep_sleep); - - dot->readUserBackupRegister(bk_reg, value); - - printf("\r\n********after sleep read value %lu from reg UBR%d\r\n\r\n", value, bk_reg); - + osDelay(5000); } return 0;