File tree Expand file tree Collapse file tree 1 file changed +2
-11
lines changed Expand file tree Collapse file tree 1 file changed +2
-11
lines changed Original file line number Diff line number Diff line change 2525#include  " core_esp8266_waveform.h" 
2626#include  " user_interface.h" 
2727
28- //  Which pins have a tone running on them?
29- static  uint32_t  _toneMap = 0 ;
30- 
31- 
3228static  void  _startTone (uint8_t  _pin, uint32_t  high, uint32_t  low, uint32_t  duration) {
3329  if  (_pin > 16 ) {
3430    return ;
3531  }
3632
37-   if  (!(_toneMap & 1UL  << _pin)) {
38-     pinMode (_pin, OUTPUT);
39-   }
33+   pinMode (_pin, OUTPUT);
4034
4135  high = std::max (high, (uint32_t )microsecondsToClockCycles (25 ));  //  new 20KHz maximum tone frequency,
4236  low = std::max (low, (uint32_t )microsecondsToClockCycles (25 ));   //  (25us high + 25us low period = 20KHz)
4337
4438  duration = microsecondsToClockCycles (duration * 1000UL );
4539  duration += high + low - 1 ;
4640  duration -= duration % (high + low);
47-   if  (startWaveformClockCycles (_pin, high, low, duration)) {
48-     _toneMap |= 1UL  << _pin;
49-   }
41+   startWaveformClockCycles (_pin, high, low, duration);
5042}
5143
5244
@@ -88,6 +80,5 @@ void noTone(uint8_t _pin) {
8880    return ;
8981  }
9082  stopWaveform (_pin);
91-   _toneMap &= ~(1UL  << _pin);
9283  digitalWrite (_pin, 0 );
9384}
    
 
   
 
     
   
   
          
     
  
    
     
 
    
      
     
 
     
    You can’t perform that action at this time.
  
 
    
  
     
    
      
        
     
 
       
      
     
   
 
    
    
  
 
  
 
     
    
0 commit comments