Page 1 of 1
【已解决】BK7231NL 低功耗WiFi 不同唤醒进程之间保留数据
Posted: 2023年 Jan 26日 20:47
by 梁修道
bk7231nl的涂鸦wifi sdk(ty_iot_sdk_BK7231NL_2.3.3-beta.347)开发,每次唤醒后是否都会经历pre_device_init,app_init和device_init?
每次唤醒时,ram是否会被清空?如果需要在每次唤醒之间记录数据,使用什么函数保存?
如果只能是使用flash存储的话,是否是使用tuya_hal_flash_write、tuya_hal_flash_erase、tuya_hal_flash_read这三个函数,app可以用的flash地址是多少到多少?写入、擦除最小的单元长度是多少?
Re: BK7231NL 低功耗WiFi 不同唤醒进程之间保留数据
Posted: 2023年 Jan 31日 20:56
by chaser
1). 深入睡眠唤醒后是否都会经历pre_device_init,app_init和device_init 的, 唤醒本质就是重启。
2). 每次唤醒,ram 都被清空了,因为ram断电了没有保持。 只能使用flash存储来保存数据。
3). flash操作,可以使用使用tuya_hal_flash_write、tuya_hal_flash_erase、tuya_hal_flash_read这三个函数, 也可以使用tuya_uf_db.h中的函数。 可以使用的flash地址范围:0x1D2000 - 0x1EA000 共 96k。 最小擦除单位是 4k 。
Re: BK7231NL 低功耗WiFi 不同唤醒进程之间保留数据
Posted: 2023年 Jan 31日 23:01
by 梁修道
chaser 2023年 Jan 31日 20:56
1). 深入睡眠唤醒后是否都会经历pre_device_init,app_init和device_init 的, 唤醒本质就是重启。
2). 每次唤醒,ram 都被清空了,因为ram断电了没有保持。 只能使用flash存储来保存数据。
3). flash操作,可以使用使用tuya_hal_flash_write、tuya_hal_flash_erase、tuya_hal_flash_read这三个函数, 也可以使用tuya_uf_db.h中的函数。 可以使用的flash地址范围:0x1D2000 - 0x1EA000 共 96k。 最小擦除单位是 4k 。
好的感谢 我们试一下
Re: BK7231NL 低功耗WiFi 不同唤醒进程之间保留数据
Posted: 2023年 Jan 31日 23:03
by 梁修道
chaser 2023年 Jan 31日 20:56
1). 深入睡眠唤醒后是否都会经历pre_device_init,app_init和device_init 的, 唤醒本质就是重启。
2). 每次唤醒,ram 都被清空了,因为ram断电了没有保持。 只能使用flash存储来保存数据。
3). flash操作,可以使用使用tuya_hal_flash_write、tuya_hal_flash_erase、tuya_hal_flash_read这三个函数, 也可以使用tuya_uf_db.h中的函数。 可以使用的flash地址范围:0x1D2000 - 0x1EA000 共 96k。 最小擦除单位是 4k 。
另外写入最小单位是多少?
Re: BK7231NL 低功耗WiFi 不同唤醒进程之间保留数据
Posted: 2023年 Feb 3日 14:31
by 愚者千虑必有一得
梁修道 2023年 Jan 31日 23:03
chaser 2023年 Jan 31日 20:56
1). 深入睡眠唤醒后是否都会经历pre_device_init,app_init和device_init 的, 唤醒本质就是重启。
2). 每次唤醒,ram 都被清空了,因为ram断电了没有保持。 只能使用flash存储来保存数据。
3). flash操作,可以使用使用tuya_hal_flash_write、tuya_hal_flash_erase、tuya_hal_flash_read这三个函数, 也可以使用tuya_uf_db.h中的函数。 可以使用的flash地址范围:0x1D2000 - 0x1EA000 共 96k。 最小擦除单位是 4k 。
另外写入最小单位是多少?
如果使用tuya_uf_db.h的话,可以当做文件系统,最小写入没有限制,我们的代码已经处理过了。