Merge branch 'bugfix/pwm_channel_num_type_error' into 'master'

bugfix(pwm): fix pwm channel num type error

See merge request sdk/ESP8266_RTOS_SDK!941
This commit is contained in:
Dong Heng
2019-05-16 17:09:56 +08:00
5 changed files with 8 additions and 8 deletions

View File

@ -514,7 +514,7 @@ static esp_err_t pwm_obj_free(void)
return ESP_OK; return ESP_OK;
} }
static esp_err_t pwm_obj_malloc(uint32_t channel_num) static esp_err_t pwm_obj_malloc(uint8_t channel_num)
{ {
pwm_obj = (pwm_obj_t *)heap_caps_malloc(sizeof(pwm_obj_t), MALLOC_CAP_8BIT); pwm_obj = (pwm_obj_t *)heap_caps_malloc(sizeof(pwm_obj_t), MALLOC_CAP_8BIT);
@ -539,7 +539,7 @@ static esp_err_t pwm_obj_malloc(uint32_t channel_num)
return ESP_OK; return ESP_OK;
} }
esp_err_t pwm_init(uint32_t period, uint32_t *duties, uint32_t channel_num, const uint32_t *pin_num) esp_err_t pwm_init(uint32_t period, uint32_t *duties, uint8_t channel_num, const uint32_t *pin_num)
{ {
PWM_CHECK(pwm_obj == NULL, "pwm has been initialized", ESP_FAIL); PWM_CHECK(pwm_obj == NULL, "pwm has been initialized", ESP_FAIL);
PWM_CHECK(channel_num <= MAX_PWM_CHANNEL, "Channel num out of range", ESP_ERR_INVALID_ARG); PWM_CHECK(channel_num <= MAX_PWM_CHANNEL, "Channel num out of range", ESP_ERR_INVALID_ARG);

View File

@ -27,7 +27,7 @@ extern "C" {
* @param period PWM period, unit: us. * @param period PWM period, unit: us.
* e.g. For 1KHz PWM, period is 1000 us. Do not set the period below 20us. * e.g. For 1KHz PWM, period is 1000 us. Do not set the period below 20us.
* @param duties duty cycle of each channels. * @param duties duty cycle of each channels.
* @param pwm_channel_num PWM channel number, maximum is 8 * @param channel_num PWM channel number, maximum is 8
* @param pin_num GPIO number of PWM channel * @param pin_num GPIO number of PWM channel
* *
* @return * @return
@ -35,7 +35,7 @@ extern "C" {
* - ESP_ERR_INVALID_ARG Parameter error * - ESP_ERR_INVALID_ARG Parameter error
* - ESP_FAIL Init error * - ESP_FAIL Init error
*/ */
esp_err_t pwm_init(uint32_t period, uint32_t *duties, uint32_t pwm_channel_num, const uint32_t *pin_num); esp_err_t pwm_init(uint32_t period, uint32_t *duties, uint8_t channel_num, const uint32_t *pin_num);
/** /**
* @brief PWM function uninstall * @brief PWM function uninstall

View File

@ -47,7 +47,7 @@ I (220) gpio: GPIO[12]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldo
I (225) gpio: GPIO[13]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0 I (225) gpio: GPIO[13]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0
I (247) gpio: GPIO[14]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0 I (247) gpio: GPIO[14]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0
I (251) gpio: GPIO[15]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0 I (251) gpio: GPIO[15]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0
I (265) pwm: --- PWM v3.0 I (265) pwm: --- PWM v3.2
I (20276) main: PWM stop I (20276) main: PWM stop

View File

@ -30,8 +30,8 @@
#define PWM_2_OUT_IO_NUM 14 #define PWM_2_OUT_IO_NUM 14
#define PWM_3_OUT_IO_NUM 15 #define PWM_3_OUT_IO_NUM 15
// PWM period 500us(2Khz), same as depth // PWM period 1000us(1Khz), same as depth
#define PWM_PERIOD (500) #define PWM_PERIOD (1000)
static const char *TAG = "pwm_example"; static const char *TAG = "pwm_example";
@ -45,7 +45,7 @@ const uint32_t pin_num[4] = {
// duties table, real_duty = duties[x]/PERIOD // duties table, real_duty = duties[x]/PERIOD
uint32_t duties[4] = { uint32_t duties[4] = {
250, 250, 250, 250, 500, 500, 500, 500,
}; };
// phase table, delay = (phase[x]/360)*PERIOD // phase table, delay = (phase[x]/360)*PERIOD

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.0 KiB

After

Width:  |  Height:  |  Size: 1.1 KiB