1# Source for the button debouncing wave diagram 2# Paste into http://wavedrom.com/editor.html 3{signal: [ 4 {name:'current mode', wave: '3............', data: ['normal button press and release']}, 5 {name:'physical button', wave: '01......0....'}, 6 {name:'application ', wave: '01......0....'}, 7 {}, 8 ['bounce mode', 9 {name:'current mode', wave: '4............', data: ['debounced button press']}, 10 {name:'physical button', wave: '0101...0.....'}, 11 {name: 'timeouts', wave: '01...0.1...0.'}, 12 {name:'application ', wave: '01.....0.....'}, 13 {}, 14 {name:'current mode', wave: '4............', data: ['debounced button release']}, 15 {name:'physical button', wave: '1...010......'}, 16 {name: 'timeouts', wave: '0...1...0....'}, 17 {name:'application ', wave: '1...0........'}, 18 {}, 19 {name:'current mode', wave: '5............', data: ['delayed button press']}, 20 {name:'physical button', wave: '1...01.......'}, 21 {name: 'timeouts', wave: '0...1...0....'}, 22 {name:'application ', wave: '1...0...1....'}, 23 {}, 24 {name:'current mode', wave: '5............', data: ['delayed button release']}, 25 {name:'physical button', wave: '0...10.......'}, 26 {name: 'timeouts', wave: '0...1...0....'}, 27 {name:'application ', wave: '0...1...0....'}, 28 ], 29 {}, 30 ['spurious mode', 31 {name:'current mode', wave: '3............', data: ['first spurious button release ']}, 32 {name:'physical button', wave: '1.......01...'}, 33 {name:'application ', wave: '1.......01...'}, 34 {}, 35 {name:'current mode', wave: '3............', data: ['later spurious button release ']}, 36 {name:'physical button', wave: '1....01......'}, 37 {name: 'timeouts', wave: '0....1..0....'}, 38 {name:'application ', wave: '1............'}, 39 {}, 40 {name:'current mode', wave: '3............', data: ['delayed release in spurious mode ']}, 41 {name:'physical button', wave: '1....0.......'}, 42 {name: 'timeouts', wave: '0....1..0....'}, 43 {name:'application ', wave: '1.......0....'} 44 ], 45 46], 47 head:{ 48 text:'Button Debouncing Scenarios', 49 }, 50} 51