Пример #1
0
/******************************************************************************
 * FunctionName : espconn_init
 * Description  : used to init the function that should be used when
 * Parameters   : none
 * Returns      : none
*******************************************************************************/
void ICACHE_FLASH_ATTR espconn_init(void)
{
  ets_task(espconn_Task, espconn_TaskPrio, espconn_TaskQueue, espconn_TaskQueueLen);
  ets_run();
	// espcon_event_t even;
	// xTaskCreatePinnedToCore(&espconn_Task, "espconn_Task", 4096, &even, 5, NULL, 0);
}
Пример #2
0
void __attribute__((section(".entry.text"))) call_user_start1(void)
{
		SPI0_USER |= SPI_CS_SETUP; // +1 такт перед CS = 0x80000064
		// SPI на 80 MHz
#if USE_FIX_QSPI_FLASH == 80
		GPIO_MUX_CFG |= BIT(MUX_SPI0_CLK_BIT); // QSPI = 80 MHz
		SPI0_CTRL = (SPI0_CTRL & SPI_CTRL_F_MASK) | SPI_CTRL_F80MHZ;
#else  // SPI на 40 MHz
		GPIO_MUX_CFG &= ~(1<< MUX_SPI0_CLK_BIT);
		SPI0_CTRL = (SPI0_CTRL & SPI_CTRL_F_MASK) | SPI_CTRL_F40MHZ;
#endif
		flashchip->chip_size = 512*1024; // песочница для SDK в 512 килобайт flash
		// Всё - включаем кеширование, далее можно вызывать процедуры из flash
		Cache_Read_Enable_def();
		// Инициализация
		startup();
		// Очистка стека и передача управления в ROM-BIOS
		asm volatile (
				"movi	a2, 1;"
				"slli   a1, a2, 30;"
				);
		ets_run();
}		
Пример #3
0
void __attribute__((section(".entry.text"))) call_user_start1(void)
{
		// коррекция QSPI на 80 MHz
		SPI0_USER |= SPI_CS_SETUP; // +1 такт перед CS = 0x80000064
#if USE_FIX_QSPI_FLASH == 80
		GPIO_MUX_CFG |= (1<< MUX_SPI0_CLK_BIT); // QSPI = 80 MHz
		SPI0_CTRL = 0x016ab000; // ((SPI0_CTRL >> 12) << 12) | BIT(12);
#else
		GPIO_MUX_CFG &= 0xfffffeff;
		SPI0_CTRL = 0x016aa101;
#endif
		flashchip->chip_size = 512*1024; // песочница для SDK в 512 килобайт flash
		// Всё - включаем кеширование, далее можно вызывать процедуры из flash
		Cache_Read_Enable_def();
		// Инициализация
		startup();
		// Очистка стека и передача управления в ROM-BIOS
		asm volatile (
				"movi	a2, 1;"
				"slli   a1, a2, 30;"
				);
		ets_run();
}		
Пример #4
0
void call_user_start_local(void)
{
    startup();
    ets_run();
}