Hi,
I reported a bug on the 18th & was asked to test some different code to isolate the problem .
I ran the code & reported back on the 19th .
I've sent 3 emails now & had no response ?
Regards
Barry
** Update **
Got an Email with a response .
Thank you .
BBP#102
Re: BBP#102
Postby BarryP » Wed May 27, 2015 7:34 am
Hi,
The timer Problem has become worse with SDKv1.1.0
My original problem was the us Timer was stopping and restarting with long time periods between each stop or start .
Now the problem is resulting in wdt resets .
I have done further tests on the problem using my scope.
I toggle a pin on each timer event.
I have been triggering on pulses less than 10uS with the uS Timer setup at 100uS .
This is the results .
1/ 100uS pulses stop for 5.4 milli Secs
2/ 200uS of 4uS pulses
3/ 60uS of mark or space
4/ normal 100uS pulses resume
Here is the code .
Regards
Barry
The timer Problem has become worse with SDKv1.1.0
My original problem was the us Timer was stopping and restarting with long time periods between each stop or start .
Now the problem is resulting in wdt resets .
I have done further tests on the problem using my scope.
I toggle a pin on each timer event.
I have been triggering on pulses less than 10uS with the uS Timer setup at 100uS .
This is the results .
1/ 100uS pulses stop for 5.4 milli Secs
2/ 200uS of 4uS pulses
3/ 60uS of mark or space
4/ normal 100uS pulses resume
Here is the code .
Code: Select all
/*
* user_config.h
*
* Created on: 18/05/2015
* Author: Barry
*/
#ifndef USER_USER_CONFIG_H_
#define USER_USER_CONFIG_H_
#define USE_US_TIMER
#endif /* USER_USER_CONFIG_H_ */
Code: Select all
/*
* user_main.c
*
* Created on: 18/05/2015
* Author: Barry
*/
#include "osapi.h"
#include "c_types.h"
#include "ets_sys.h"
#include "gpio.h"
#include "user_config.h"
#include "user_interface.h"
static bool inpinval = true;
static bool toggle = true;
static volatile os_timer_t sample_window_timer;
void user_rf_pre_init(void)
{
}
void sample_window_timer_cb(void *arg){
inpinval = GPIO_INPUT_GET(GPIO_ID_PIN(5)); //5
toggle = !toggle;
GPIO_OUTPUT_SET(GPIO_ID_PIN(15), toggle);//15
}
//Init function
void user_init()
{
system_timer_reinit();
gpio_init();
uart_div_modify(0, UART_CLK_FREQ / 115200);
// GPIO15 As Output
PIN_FUNC_SELECT(PERIPHS_IO_MUX_MTDO_U,FUNC_GPIO15);
GPIO_OUTPUT_SET(GPIO_ID_PIN(15), 1);
// GPIO5 as Input
PIN_FUNC_SELECT(PERIPHS_IO_MUX_GPIO5_U, FUNC_GPIO5);
inpinval = GPIO_INPUT_GET(GPIO_ID_PIN(5));
os_timer_disarm(&sample_window_timer);
os_timer_setfn(&sample_window_timer, (os_timer_func_t *)sample_window_timer_cb, NULL);
#ifdef USE_US_TIMER
os_timer_arm_us(&sample_window_timer, 100, 1);
#else
os_timer_arm(&sample_window_timer, 1, 1);
#endif
}
Regards
Barry
Who is online
Users browsing this forum: No registered users and 5 guests
Login
Newbies Start Here
Are you new to ESP8266?
Unsure what to do?
Dunno where to start?
Start right here!
Latest SDK
Documentation
Complete listing of the official ESP8266 related documentation release by ESPRESSIF!
Must read here!
- All times are UTC+08:00
- Top
- Delete all board cookies
About Us
Espressif Systems is a fabless semiconductor company providing cutting-edge low power WiFi SoCs and wireless solutions for wireless communications and Internet of Things applications. We are the manufacturer of ESP8266EX.