build error using peripheral_test code

shenhome
Posts: 2
Joined: Thu Apr 06, 2017 9:14 pm

build error using peripheral_test code

Postby shenhome » Thu Apr 06, 2017 9:40 pm

Hello,

Below function was showed in user_main.c. It generates error when build .bin file.
Question: 1) why we need this function?
2) what should I do to solve this issue?




=========================================================================================
uint32 ICACHE_FLASH_ATTR
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 = 1024 - 5;
break;

default:
rf_cal_sec = 0;
break;
}

return rf_cal_sec;
}
======================================================

user_main.c: In function 'user_rf_cal_sector_set':
user_main.c:44:10: error: variable 'size_map' has initializer but incomplete type
enum flash_size_map size_map = system_get_flash_size_map();
^
user_main.c:44:25: error: storage size of 'size_map' isn't known
enum flash_size_map size_map = system_get_flash_size_map();

Her Mary
Posts: 537
Joined: Mon Oct 27, 2014 11:09 am

Re: build error using peripheral_test code

Postby Her Mary » Fri Apr 07, 2017 2:27 pm

Code: Select all

#include "ets_sys.h"
#include "osapi.h"

#include "user_interface.h"
/******************************************************************************
 * FunctionName : user_rf_cal_sector_set
 * Description  : SDK just reversed 4 sectors, used for rf init data and paramters.
 *                We add this function to force users to set rf cal sector, since
 *                we don't know which sector is free in user's application.
 *                sector map for last several sectors : ABCCC
 *                A : rf cal
 *                B : rf init data
 *                C : sdk parameters
 * Parameters   : none
 * Returns      : rf cal sector
*******************************************************************************/
uint32 ICACHE_FLASH_ATTR
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 = 1024 - 5;
            break;

        default:
            rf_cal_sec = 0;
            break;
    }

    return rf_cal_sec;
}

void ICACHE_FLASH_ATTR
user_rf_pre_init(void)
{
}

void ICACHE_FLASH_ATTR
user_init(void)
{
    os_printf("SDK version:%s\n", system_get_sdk_version());
}

Who is online

Users browsing this forum: No registered users and 60 guests