瀏覽代碼

Merge pull request #1693 from chris-bo/rework_lcd_beeper

use only one implementation for beeper feedback
Scott Lahteine 10 年之前
父節點
當前提交
abfcbd793f
共有 4 個檔案被更改,包括 27 行新增39 行删除
  1. 1
    0
      Marlin/Configuration.h
  2. 0
    12
      Marlin/dogm_lcd_implementation.h
  3. 26
    1
      Marlin/ultralcd.cpp
  4. 0
    26
      Marlin/ultralcd_implementation_hitachi_HD44780.h

+ 1
- 0
Marlin/Configuration.h 查看文件

582
 //#define ULTIPANEL  //the UltiPanel as on Thingiverse
582
 //#define ULTIPANEL  //the UltiPanel as on Thingiverse
583
 //#define LCD_FEEDBACK_FREQUENCY_HZ 1000	// this is the tone frequency the buzzer plays when on UI feedback. ie Screen Click
583
 //#define LCD_FEEDBACK_FREQUENCY_HZ 1000	// this is the tone frequency the buzzer plays when on UI feedback. ie Screen Click
584
 //#define LCD_FEEDBACK_FREQUENCY_DURATION_MS 100 // the duration the buzzer plays the UI feedback sound. ie Screen Click
584
 //#define LCD_FEEDBACK_FREQUENCY_DURATION_MS 100 // the duration the buzzer plays the UI feedback sound. ie Screen Click
585
+                                               // 0 to disable buzzer feedback  
585
 
586
 
586
 // PanelOne from T3P3 (via RAMPS 1.4 AUX2/AUX3)
587
 // PanelOne from T3P3 (via RAMPS 1.4 AUX2/AUX3)
587
 // http://reprap.org/wiki/PanelOne
588
 // http://reprap.org/wiki/PanelOne

+ 0
- 12
Marlin/dogm_lcd_implementation.h 查看文件

408
 #define lcd_implementation_drawmenu_gcode(sel, row, pstr, gcode) lcd_implementation_drawmenu_generic(sel, row, pstr, '>', ' ')
408
 #define lcd_implementation_drawmenu_gcode(sel, row, pstr, gcode) lcd_implementation_drawmenu_generic(sel, row, pstr, '>', ' ')
409
 #define lcd_implementation_drawmenu_function(sel, row, pstr, data) lcd_implementation_drawmenu_generic(sel, row, pstr, '>', ' ')
409
 #define lcd_implementation_drawmenu_function(sel, row, pstr, data) lcd_implementation_drawmenu_generic(sel, row, pstr, '>', ' ')
410
 
410
 
411
-static void lcd_implementation_quick_feedback() {
412
-  #if BEEPER > -1
413
-    SET_OUTPUT(BEEPER);
414
-    for(int8_t i=0; i<10; i++) {
415
-      WRITE(BEEPER,HIGH);
416
-      delay(3);
417
-      WRITE(BEEPER,LOW);
418
-      delay(3);
419
-    }
420
-  #endif
421
-}
422
-
423
 #endif //__DOGM_LCD_IMPLEMENTATION_H
411
 #endif //__DOGM_LCD_IMPLEMENTATION_H

+ 26
- 1
Marlin/ultralcd.cpp 查看文件

1137
 static void lcd_quick_feedback() {
1137
 static void lcd_quick_feedback() {
1138
   lcdDrawUpdate = 2;
1138
   lcdDrawUpdate = 2;
1139
   blocking_enc = millis() + 500;
1139
   blocking_enc = millis() + 500;
1140
-  lcd_implementation_quick_feedback();
1140
+    
1141
+  #ifdef LCD_USE_I2C_BUZZER
1142
+    #ifndef LCD_FEEDBACK_FREQUENCY_HZ
1143
+      #define LCD_FEEDBACK_FREQUENCY_HZ 100
1144
+    #endif
1145
+    #ifndef LCD_FEEDBACK_FREQUENCY_DURATION_MS
1146
+      #define LCD_FEEDBACK_FREQUENCY_DURATION_MS (1000/6)
1147
+    #endif    
1148
+    lcd_buzz(LCD_FEEDBACK_FREQUENCY_DURATION_MS, LCD_FEEDBACK_FREQUENCY_HZ);
1149
+  #elif defined(BEEPER) && BEEPER > -1
1150
+    SET_OUTPUT(BEEPER);
1151
+    #ifndef LCD_FEEDBACK_FREQUENCY_HZ
1152
+      #define LCD_FEEDBACK_FREQUENCY_HZ 500
1153
+    #endif
1154
+    #ifndef LCD_FEEDBACK_FREQUENCY_DURATION_MS
1155
+      #define LCD_FEEDBACK_FREQUENCY_DURATION_MS 50
1156
+    #endif
1157
+    const unsigned int delay = 1000000 / LCD_FEEDBACK_FREQUENCY_HZ / 2;
1158
+    int i = LCD_FEEDBACK_FREQUENCY_DURATION_MS * LCD_FEEDBACK_FREQUENCY_HZ / 1000;
1159
+    while (i--) {
1160
+      WRITE(BEEPER,HIGH);
1161
+      delayMicroseconds(delay);
1162
+      WRITE(BEEPER,LOW);
1163
+      delayMicroseconds(delay);
1164
+     }
1165
+  #endif
1141
 }
1166
 }
1142
 
1167
 
1143
 /** Menu action functions **/
1168
 /** Menu action functions **/

+ 0
- 26
Marlin/ultralcd_implementation_hitachi_HD44780.h 查看文件

709
 #define lcd_implementation_drawmenu_gcode(sel, row, pstr, gcode) lcd_implementation_drawmenu_generic(sel, row, pstr, '>', ' ')
709
 #define lcd_implementation_drawmenu_gcode(sel, row, pstr, gcode) lcd_implementation_drawmenu_generic(sel, row, pstr, '>', ' ')
710
 #define lcd_implementation_drawmenu_function(sel, row, pstr, data) lcd_implementation_drawmenu_generic(sel, row, pstr, '>', ' ')
710
 #define lcd_implementation_drawmenu_function(sel, row, pstr, data) lcd_implementation_drawmenu_generic(sel, row, pstr, '>', ' ')
711
 
711
 
712
-static void lcd_implementation_quick_feedback()
713
-{
714
-  #ifdef LCD_USE_I2C_BUZZER
715
-    #if defined(LCD_FEEDBACK_FREQUENCY_DURATION_MS) && defined(LCD_FEEDBACK_FREQUENCY_HZ)
716
-      lcd_buzz(LCD_FEEDBACK_FREQUENCY_DURATION_MS, LCD_FEEDBACK_FREQUENCY_HZ);
717
-    #else
718
-      lcd_buzz(1000/6, 100);
719
-    #endif
720
-  #elif defined(BEEPER) && BEEPER > -1
721
-    SET_OUTPUT(BEEPER);
722
-    #if !defined(LCD_FEEDBACK_FREQUENCY_HZ) || !defined(LCD_FEEDBACK_FREQUENCY_DURATION_MS)
723
-      const unsigned int delay = 100;
724
-      uint8_t i = 10;
725
-    #else
726
-      const unsigned int delay = 1000000 / LCD_FEEDBACK_FREQUENCY_HZ / 2;
727
-      int8_t i = LCD_FEEDBACK_FREQUENCY_DURATION_MS * LCD_FEEDBACK_FREQUENCY_HZ / 1000;
728
-    #endif
729
-    while (i--) {
730
-      WRITE(BEEPER,HIGH);
731
-      delayMicroseconds(delay);
732
-      WRITE(BEEPER,LOW);
733
-      delayMicroseconds(delay);
734
-    }
735
-  #endif
736
-}
737
-
738
 #ifdef LCD_HAS_STATUS_INDICATORS
712
 #ifdef LCD_HAS_STATUS_INDICATORS
739
 static void lcd_implementation_update_indicators()
713
 static void lcd_implementation_update_indicators()
740
 {
714
 {

Loading…
取消
儲存