Skip to content

Commit ee97951

Browse files
author
Me No Dev
committed
Optimize methods a bit
1 parent 5afbb4b commit ee97951

File tree

2 files changed

+3
-10
lines changed

2 files changed

+3
-10
lines changed

Diff for: cores/esp8266/core_esp8266_timer.c

+1-1
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@ void ICACHE_RAM_ATTR timer1_write(uint32_t ticks){
6666
if ((T1C & (1 << TCIT)) == 0) TEIE |= TEIE1;//edge int enable
6767
}
6868

69-
void timer1_disable(){
69+
void ICACHE_RAM_ATTR timer1_disable(){
7070
T1C = 0;
7171
T1I = 0;
7272
}

Diff for: cores/esp8266/core_esp8266_wiring_pwm.c

+2-9
Original file line numberDiff line numberDiff line change
@@ -171,8 +171,7 @@ void ICACHE_RAM_ATTR pwm_stop_pin(uint8_t pin)
171171
pwm_mask &= ~(1 << pin);
172172
if(pwm_mask == 0) {
173173
ETS_FRC_TIMER1_NMI_INTR_ATTACH(NULL);
174-
T1C = 0;
175-
T1I = 0;
174+
timer1_disable();
176175
timer1_isr_init();
177176
}
178177
}
@@ -182,14 +181,8 @@ extern void __analogWrite(uint8_t pin, int value)
182181
{
183182
bool start_timer = false;
184183
if(value == 0) {
185-
pwm_mask &= ~(1 << pin);
186-
prep_pwm_steps();
187184
digitalWrite(pin, LOW);
188-
if(pwm_mask == 0) {
189-
ETS_FRC_TIMER1_NMI_INTR_ATTACH(NULL);
190-
timer1_disable();
191-
timer1_isr_init();
192-
}
185+
prep_pwm_steps();
193186
return;
194187
}
195188
if((pwm_mask & (1 << pin)) == 0) {

0 commit comments

Comments
 (0)