标签:bre class sys 系统 return cal img 编译链接 nts
uint32 ICACHE_FLASH_ATTR
user_rf_cal_sector_set(void)
用户必须在程序中实现此函数,否则编译链接时会报错。但?用户程序?无需调?用此函数, SDK
底层会调?用它,将 RF_CAL 参数保存在?用户指定的 Flash 扇区?里里,这将占?用?用户参数区的?一个
扇区。
? SDK 预留留的 4 个扇区的系统参数区已经使?用,因此 RF_CAL 参数需要占?用到?用户参数区的空
间,由?用户通过此函数设置?一个可?用扇区供 SDK 底层使?用。
? 建议整个系统需要初始化时,或需要重新进?行行 RF_CAL 时,烧录 blank.bin 初始化 RF_CAL 参
数区,并烧录 esp_init_data.bin。
***注意, esp_init_data.bin ?至少需要烧录?一次。
例:
将 RF 参数设置存放在 Flash 倒数第 5 个扇区
uint32 user_rf_cal_sector_set(void)
{
enum flash_size_map size_map = system_get_flash_size_map();
uint32 rf_cal_sec = 0;
switch (size_map) {
case FLASH_SIZE_4M_MAP_256_256:
rf_cal_sec = 128 - 5;
break;
case FLASH_SIZE_8M_MAP_512_512:
rf_cal_sec = 256 - 5;
break;
case FLASH_SIZE_16M_MAP_512_512:
case FLASH_SIZE_16M_MAP_1024_1024:
rf_cal_sec = 512 - 5;
break;
case FLASH_SIZE_32M_MAP_512_512:
case FLASH_SIZE_32M_MAP_1024_1024:
rf_cal_sec = 512 - 5;
break;
case FLASH_SIZE_64M_MAP_1024_1024:
rf_cal_sec = 2048 - 5;
break;
case FLASH_SIZE_128M_MAP_1024_1024:
rf_cal_sec = 4096 - 5;
break;
default:
rf_cal_sec = 0;
break;
}
return rf_cal_sec;
}
****************
uint32 ICACHE_FLASH_ATTR user_rf_cal_sector_set(void)
标签:bre class sys 系统 return cal img 编译链接 nts
原文地址:https://www.cnblogs.com/xiangyangerxing/p/14921984.html