BaseMachine Sequencer UI Test
Dependencies: AverageAnalogIn PinDetect RotaryEncoder Sequence SequencerDisplay mbed-rtos mbed st7565LCD
Fork of CH12864F-SPI2_Test by
main.cpp@2:29f0fe703d39, 2016-08-17 (annotated)
- Committer:
- ryood
- Date:
- Wed Aug 17 12:46:21 2016 +0000
- Revision:
- 2:29f0fe703d39
- Parent:
- 1:23bc297e8bfe
- Child:
- 3:6d89fd15e299
Impl. PinDetect
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
ryood | 1:23bc297e8bfe | 1 | /* |
ryood | 1:23bc297e8bfe | 2 | * main.cpp |
ryood | 1:23bc297e8bfe | 3 | * BaseMachine Sequencer |
ryood | 1:23bc297e8bfe | 4 | * |
ryood | 1:23bc297e8bfe | 5 | * 2016.08.17 |
ryood | 1:23bc297e8bfe | 6 | * |
ryood | 1:23bc297e8bfe | 7 | */ |
ryood | 2:29f0fe703d39 | 8 | |
ryood | 2:29f0fe703d39 | 9 | #define UART_TRACE (1) |
ryood | 2:29f0fe703d39 | 10 | |
ryood | 0:cbc508b7ebff | 11 | #include "mbed.h" |
ryood | 1:23bc297e8bfe | 12 | #include "rtos.h" |
ryood | 0:cbc508b7ebff | 13 | #include "st7565LCD.h" |
ryood | 2:29f0fe703d39 | 14 | #include "PinDetect.h" |
ryood | 2:29f0fe703d39 | 15 | //#include "RotaryEncoder.h" |
ryood | 2:29f0fe703d39 | 16 | #include "Sequence.h" |
ryood | 2:29f0fe703d39 | 17 | #include "ST7565_SequencerDisplay.h" |
ryood | 1:23bc297e8bfe | 18 | |
ryood | 1:23bc297e8bfe | 19 | #define TITLE_STR1 ("BaseMachine Sequencer") |
ryood | 1:23bc297e8bfe | 20 | #define TITLE_STR2 ("20160817") |
ryood | 1:23bc297e8bfe | 21 | |
ryood | 1:23bc297e8bfe | 22 | const int SEQUENCE_N = 16; |
ryood | 1:23bc297e8bfe | 23 | const int PITCH_MAX = 12; |
ryood | 1:23bc297e8bfe | 24 | const int BPM_MIN = 60; |
ryood | 1:23bc297e8bfe | 25 | const int BPM_MAX = 240; |
ryood | 1:23bc297e8bfe | 26 | |
ryood | 2:29f0fe703d39 | 27 | // Devices |
ryood | 2:29f0fe703d39 | 28 | // |
ryood | 0:cbc508b7ebff | 29 | //ST7565(PinName mosi, PinName sclk, PinName cs, PinName rst, PinName a0); |
ryood | 1:23bc297e8bfe | 30 | ST7565 gLCD(PB_15, PB_13, PB_12, PB_2, PB_1); |
ryood | 1:23bc297e8bfe | 31 | |
ryood | 1:23bc297e8bfe | 32 | AnalogIn AinPulseWidth(PC_2); |
ryood | 1:23bc297e8bfe | 33 | AnalogIn AinCutOff(PB_0); |
ryood | 1:23bc297e8bfe | 34 | AnalogIn AinResonance(PC_1); |
ryood | 1:23bc297e8bfe | 35 | AnalogIn AinEnvMod(PC_3); |
ryood | 1:23bc297e8bfe | 36 | AnalogIn AinLevel(PC_0); |
ryood | 1:23bc297e8bfe | 37 | AnalogIn AinDuration(PA_4); |
ryood | 1:23bc297e8bfe | 38 | AnalogIn AinDecay(PA_1); |
ryood | 1:23bc297e8bfe | 39 | AnalogIn AinSustain(PA_0); |
ryood | 2:29f0fe703d39 | 40 | /* |
ryood | 2:29f0fe703d39 | 41 | RotaryEncoder RotEncStep(D2, D3, 0, SEQUENCE_N - 1, 0); |
ryood | 2:29f0fe703d39 | 42 | RotaryEncoder RotEncPitch(D4, D5, 0, PITCH_MAX, 0); |
ryood | 2:29f0fe703d39 | 43 | RotaryEncoder RotEncBpm(D14, D15, BPM_MIN, BPM_MAX, 120); |
ryood | 2:29f0fe703d39 | 44 | */ |
ryood | 2:29f0fe703d39 | 45 | PinDetect PinWaveShape(PD_2, PullUp); |
ryood | 2:29f0fe703d39 | 46 | PinDetect PinModNumber(PC_11, PullUp); |
ryood | 2:29f0fe703d39 | 47 | PinDetect PinOctaveUp(PC_10, PullUp); |
ryood | 2:29f0fe703d39 | 48 | PinDetect PinOctaveDown(PC_12, PullUp); |
ryood | 2:29f0fe703d39 | 49 | PinDetect PinNoteOnOff(PA_13, PullUp); |
ryood | 2:29f0fe703d39 | 50 | PinDetect PinTie(PA_14, PullUp); |
ryood | 2:29f0fe703d39 | 51 | PinDetect PinAccent(PA_15, PullUp); |
ryood | 2:29f0fe703d39 | 52 | PinDetect PinRunStop(PB_7, PullUp); |
ryood | 2:29f0fe703d39 | 53 | |
ryood | 2:29f0fe703d39 | 54 | // Grobal Variables |
ryood | 2:29f0fe703d39 | 55 | // |
ryood | 2:29f0fe703d39 | 56 | Sequence sequences[SEQUENCE_N]; |
ryood | 2:29f0fe703d39 | 57 | ST7565_SequencerDisplay sequencerDisplay(&gLCD, sequences, SEQUENCE_N); |
ryood | 2:29f0fe703d39 | 58 | |
ryood | 2:29f0fe703d39 | 59 | int currentStep = 0; |
ryood | 2:29f0fe703d39 | 60 | bool isRunning = false; |
ryood | 2:29f0fe703d39 | 61 | bool isDirty = false; |
ryood | 2:29f0fe703d39 | 62 | int bpm = 120; |
ryood | 2:29f0fe703d39 | 63 | |
ryood | 2:29f0fe703d39 | 64 | volatile uint8_t pinFlag = 0x00; |
ryood | 2:29f0fe703d39 | 65 | |
ryood | 2:29f0fe703d39 | 66 | enum { |
ryood | 2:29f0fe703d39 | 67 | bWaveShape = 0x01, |
ryood | 2:29f0fe703d39 | 68 | bModNumber = 0x02, |
ryood | 2:29f0fe703d39 | 69 | bOctaveUp = 0x04, |
ryood | 2:29f0fe703d39 | 70 | bOctaveDown = 0x08, |
ryood | 2:29f0fe703d39 | 71 | bNoteOnOff = 0x10, |
ryood | 2:29f0fe703d39 | 72 | bTie = 0x20, |
ryood | 2:29f0fe703d39 | 73 | bAccent = 0x40, |
ryood | 2:29f0fe703d39 | 74 | bRunStop = 0x80 |
ryood | 2:29f0fe703d39 | 75 | }; |
ryood | 1:23bc297e8bfe | 76 | |
ryood | 1:23bc297e8bfe | 77 | // とりあえずの変数(後でClassのメンバ変数に格納) |
ryood | 1:23bc297e8bfe | 78 | int waveShape = 0; |
ryood | 1:23bc297e8bfe | 79 | int modNumber = 0; |
ryood | 1:23bc297e8bfe | 80 | #define WAVESHAPE_N 2 |
ryood | 1:23bc297e8bfe | 81 | #define MOD_NUMBER_MAX 1 |
ryood | 1:23bc297e8bfe | 82 | uint8_t pulseWidth; |
ryood | 1:23bc297e8bfe | 83 | uint8_t cutOff; |
ryood | 1:23bc297e8bfe | 84 | uint8_t resonance; |
ryood | 1:23bc297e8bfe | 85 | uint8_t envMod; |
ryood | 1:23bc297e8bfe | 86 | uint8_t level; |
ryood | 1:23bc297e8bfe | 87 | uint8_t duration; |
ryood | 1:23bc297e8bfe | 88 | uint8_t decay; |
ryood | 1:23bc297e8bfe | 89 | uint8_t sustain; |
ryood | 1:23bc297e8bfe | 90 | |
ryood | 1:23bc297e8bfe | 91 | //------------------------------------------------------------------------ |
ryood | 2:29f0fe703d39 | 92 | // PinDetect ISR |
ryood | 2:29f0fe703d39 | 93 | //------------------------------------------------------------------------ |
ryood | 2:29f0fe703d39 | 94 | void swWaveShapePressed() |
ryood | 2:29f0fe703d39 | 95 | { |
ryood | 2:29f0fe703d39 | 96 | pinFlag |= bWaveShape; |
ryood | 2:29f0fe703d39 | 97 | } |
ryood | 2:29f0fe703d39 | 98 | |
ryood | 2:29f0fe703d39 | 99 | void swModNumberPressed() |
ryood | 2:29f0fe703d39 | 100 | { |
ryood | 2:29f0fe703d39 | 101 | pinFlag |= bModNumber; |
ryood | 2:29f0fe703d39 | 102 | } |
ryood | 2:29f0fe703d39 | 103 | |
ryood | 2:29f0fe703d39 | 104 | void swOctaveUpPressed() |
ryood | 2:29f0fe703d39 | 105 | { |
ryood | 2:29f0fe703d39 | 106 | pinFlag |= bOctaveUp; |
ryood | 2:29f0fe703d39 | 107 | } |
ryood | 2:29f0fe703d39 | 108 | |
ryood | 2:29f0fe703d39 | 109 | void swOctaveDownPressed() |
ryood | 2:29f0fe703d39 | 110 | { |
ryood | 2:29f0fe703d39 | 111 | pinFlag |= bOctaveDown; |
ryood | 2:29f0fe703d39 | 112 | } |
ryood | 2:29f0fe703d39 | 113 | |
ryood | 2:29f0fe703d39 | 114 | void swNoteOnOffPressed() |
ryood | 2:29f0fe703d39 | 115 | { |
ryood | 2:29f0fe703d39 | 116 | pinFlag |= bNoteOnOff; |
ryood | 2:29f0fe703d39 | 117 | } |
ryood | 2:29f0fe703d39 | 118 | |
ryood | 2:29f0fe703d39 | 119 | void swTiePressed() |
ryood | 2:29f0fe703d39 | 120 | { |
ryood | 2:29f0fe703d39 | 121 | pinFlag |= bTie; |
ryood | 2:29f0fe703d39 | 122 | } |
ryood | 2:29f0fe703d39 | 123 | |
ryood | 2:29f0fe703d39 | 124 | void swAccentPressed() |
ryood | 2:29f0fe703d39 | 125 | { |
ryood | 2:29f0fe703d39 | 126 | pinFlag |= bAccent; |
ryood | 2:29f0fe703d39 | 127 | } |
ryood | 2:29f0fe703d39 | 128 | |
ryood | 2:29f0fe703d39 | 129 | void swRunStopPressed() |
ryood | 2:29f0fe703d39 | 130 | { |
ryood | 2:29f0fe703d39 | 131 | pinFlag |= bRunStop; |
ryood | 2:29f0fe703d39 | 132 | } |
ryood | 2:29f0fe703d39 | 133 | |
ryood | 2:29f0fe703d39 | 134 | //------------------------------------------------------------------------ |
ryood | 1:23bc297e8bfe | 135 | // Functions |
ryood | 1:23bc297e8bfe | 136 | //------------------------------------------------------------------------ |
ryood | 1:23bc297e8bfe | 137 | void pollingPots() |
ryood | 1:23bc297e8bfe | 138 | { |
ryood | 1:23bc297e8bfe | 139 | //pulseWidth = AinPulseWidth.read_u16() >> 8; |
ryood | 1:23bc297e8bfe | 140 | cutOff = AinCutOff.read_u16() >> 8; |
ryood | 1:23bc297e8bfe | 141 | resonance = AinResonance.read_u16() >> 8; |
ryood | 1:23bc297e8bfe | 142 | //envMod = AinEnvMod.read_u16() >> 8; |
ryood | 1:23bc297e8bfe | 143 | //level = AinLevel.read_u16() >> 8; |
ryood | 1:23bc297e8bfe | 144 | duration = AinDuration.read_u16() >> 8; |
ryood | 1:23bc297e8bfe | 145 | decay = AinDecay.read_u16() >> 8; |
ryood | 1:23bc297e8bfe | 146 | sustain = AinSustain.read_u16() >> 8; |
ryood | 1:23bc297e8bfe | 147 | } |
ryood | 1:23bc297e8bfe | 148 | |
ryood | 2:29f0fe703d39 | 149 | void pollingPins() |
ryood | 2:29f0fe703d39 | 150 | { |
ryood | 2:29f0fe703d39 | 151 | if (pinFlag & bWaveShape) { |
ryood | 2:29f0fe703d39 | 152 | #if (UART_TRACE) |
ryood | 2:29f0fe703d39 | 153 | printf("PinWaveShape Pushed\r\n"); |
ryood | 2:29f0fe703d39 | 154 | #endif |
ryood | 2:29f0fe703d39 | 155 | waveShape++; |
ryood | 2:29f0fe703d39 | 156 | if (waveShape == WAVESHAPE_N) { |
ryood | 2:29f0fe703d39 | 157 | waveShape = 0; |
ryood | 2:29f0fe703d39 | 158 | } |
ryood | 2:29f0fe703d39 | 159 | pinFlag &= ~bWaveShape; |
ryood | 2:29f0fe703d39 | 160 | } |
ryood | 2:29f0fe703d39 | 161 | |
ryood | 2:29f0fe703d39 | 162 | if (pinFlag & bModNumber) { |
ryood | 2:29f0fe703d39 | 163 | #if (UART_TRACE) |
ryood | 2:29f0fe703d39 | 164 | printf("PinModNumber Pushed\r\n"); |
ryood | 2:29f0fe703d39 | 165 | #endif |
ryood | 2:29f0fe703d39 | 166 | modNumber++; |
ryood | 2:29f0fe703d39 | 167 | if (modNumber > MOD_NUMBER_MAX) { |
ryood | 2:29f0fe703d39 | 168 | modNumber = 0; |
ryood | 2:29f0fe703d39 | 169 | } |
ryood | 2:29f0fe703d39 | 170 | pinFlag &= ~bModNumber; |
ryood | 2:29f0fe703d39 | 171 | } |
ryood | 2:29f0fe703d39 | 172 | |
ryood | 2:29f0fe703d39 | 173 | if (pinFlag & bOctaveUp) { |
ryood | 2:29f0fe703d39 | 174 | #if (UART_TRACE) |
ryood | 2:29f0fe703d39 | 175 | printf("PinOctaveUp Pushed\r\n"); |
ryood | 2:29f0fe703d39 | 176 | #endif |
ryood | 2:29f0fe703d39 | 177 | sequences[currentStep].setOctave(sequences[currentStep].getOctave() + 1); |
ryood | 2:29f0fe703d39 | 178 | pinFlag &= ~bOctaveUp; |
ryood | 2:29f0fe703d39 | 179 | } |
ryood | 2:29f0fe703d39 | 180 | |
ryood | 2:29f0fe703d39 | 181 | if (pinFlag & bOctaveDown) { |
ryood | 2:29f0fe703d39 | 182 | #if (UART_TRACE) |
ryood | 2:29f0fe703d39 | 183 | printf("PinOctaveDown Pushed\r\n"); |
ryood | 2:29f0fe703d39 | 184 | #endif |
ryood | 2:29f0fe703d39 | 185 | sequences[currentStep].setOctave(sequences[currentStep].getOctave() - 1); |
ryood | 2:29f0fe703d39 | 186 | pinFlag &= ~bOctaveDown; |
ryood | 2:29f0fe703d39 | 187 | } |
ryood | 2:29f0fe703d39 | 188 | |
ryood | 2:29f0fe703d39 | 189 | if (pinFlag & bNoteOnOff) { |
ryood | 2:29f0fe703d39 | 190 | #if (UART_TRACE) |
ryood | 2:29f0fe703d39 | 191 | printf("PinNoteOnOff Pushed\r\n"); |
ryood | 2:29f0fe703d39 | 192 | #endif |
ryood | 2:29f0fe703d39 | 193 | sequences[currentStep].noteOn = !sequences[currentStep].noteOn; |
ryood | 2:29f0fe703d39 | 194 | pinFlag &= ~bNoteOnOff; |
ryood | 2:29f0fe703d39 | 195 | } |
ryood | 2:29f0fe703d39 | 196 | |
ryood | 2:29f0fe703d39 | 197 | if (pinFlag & bTie) { |
ryood | 2:29f0fe703d39 | 198 | #if (UART_TRACE) |
ryood | 2:29f0fe703d39 | 199 | printf("PinTie Pushed\r\n"); |
ryood | 2:29f0fe703d39 | 200 | #endif |
ryood | 2:29f0fe703d39 | 201 | sequences[currentStep].tie = !sequences[currentStep].tie; |
ryood | 2:29f0fe703d39 | 202 | pinFlag &= ~bTie; |
ryood | 2:29f0fe703d39 | 203 | } |
ryood | 2:29f0fe703d39 | 204 | |
ryood | 2:29f0fe703d39 | 205 | if (pinFlag & bAccent) { |
ryood | 2:29f0fe703d39 | 206 | #if (UART_TRACE) |
ryood | 2:29f0fe703d39 | 207 | printf("PinAccent Pushed\r\n"); |
ryood | 2:29f0fe703d39 | 208 | #endif |
ryood | 2:29f0fe703d39 | 209 | sequences[currentStep].accent = !sequences[currentStep].accent; |
ryood | 2:29f0fe703d39 | 210 | pinFlag &= ~bAccent; |
ryood | 2:29f0fe703d39 | 211 | } |
ryood | 2:29f0fe703d39 | 212 | |
ryood | 2:29f0fe703d39 | 213 | if (pinFlag & bRunStop) { |
ryood | 2:29f0fe703d39 | 214 | #if (UART_TRACE) |
ryood | 2:29f0fe703d39 | 215 | printf("PinRunStop Pushed\r\n"); |
ryood | 2:29f0fe703d39 | 216 | #endif |
ryood | 2:29f0fe703d39 | 217 | isRunning = !isRunning; |
ryood | 2:29f0fe703d39 | 218 | pinFlag &= ~bRunStop; |
ryood | 2:29f0fe703d39 | 219 | } |
ryood | 2:29f0fe703d39 | 220 | } |
ryood | 2:29f0fe703d39 | 221 | |
ryood | 1:23bc297e8bfe | 222 | void dumpToLCD() |
ryood | 1:23bc297e8bfe | 223 | { |
ryood | 1:23bc297e8bfe | 224 | char buff[64]; |
ryood | 1:23bc297e8bfe | 225 | int col = 0; |
ryood | 1:23bc297e8bfe | 226 | |
ryood | 1:23bc297e8bfe | 227 | gLCD.clear(); |
ryood | 2:29f0fe703d39 | 228 | |
ryood | 1:23bc297e8bfe | 229 | sprintf(buff, "Run: %d", isRunning); |
ryood | 1:23bc297e8bfe | 230 | gLCD.drawstring(0, col++, buff); |
ryood | 1:23bc297e8bfe | 231 | sprintf(buff, "BPM: %d", bpm); |
ryood | 1:23bc297e8bfe | 232 | gLCD.drawstring(0, col++, buff); |
ryood | 1:23bc297e8bfe | 233 | |
ryood | 1:23bc297e8bfe | 234 | sprintf(buff, "Step: %d", currentStep); |
ryood | 1:23bc297e8bfe | 235 | gLCD.drawstring(0, col++, buff); |
ryood | 1:23bc297e8bfe | 236 | sprintf(buff, "NoteOn: %d", sequences[currentStep].noteOn); |
ryood | 1:23bc297e8bfe | 237 | gLCD.drawstring(0, col++, buff); |
ryood | 1:23bc297e8bfe | 238 | sprintf(buff, "Pitch: %d", sequences[currentStep].getPitch()); |
ryood | 1:23bc297e8bfe | 239 | gLCD.drawstring(0, col++, buff); |
ryood | 1:23bc297e8bfe | 240 | sprintf(buff, "Octave: %d", sequences[currentStep].getOctave()); |
ryood | 1:23bc297e8bfe | 241 | gLCD.drawstring(0, col++, buff); |
ryood | 1:23bc297e8bfe | 242 | sprintf(buff, "Tie: %d", sequences[currentStep].tie); |
ryood | 1:23bc297e8bfe | 243 | gLCD.drawstring(0, col++, buff); |
ryood | 1:23bc297e8bfe | 244 | sprintf(buff, "Accent: %d", sequences[currentStep].accent); |
ryood | 1:23bc297e8bfe | 245 | gLCD.drawstring(0, col++, buff); |
ryood | 1:23bc297e8bfe | 246 | |
ryood | 1:23bc297e8bfe | 247 | col = 0; |
ryood | 1:23bc297e8bfe | 248 | sprintf(buff, "WavS: %d", waveShape); |
ryood | 1:23bc297e8bfe | 249 | gLCD.drawstring(64, col++, buff); |
ryood | 1:23bc297e8bfe | 250 | sprintf(buff, "ModN: %d", modNumber); |
ryood | 1:23bc297e8bfe | 251 | gLCD.drawstring(64, col++, buff); |
ryood | 1:23bc297e8bfe | 252 | |
ryood | 1:23bc297e8bfe | 253 | col = 2; |
ryood | 1:23bc297e8bfe | 254 | sprintf(buff, "PW%3d CO%3d", pulseWidth, cutOff); |
ryood | 1:23bc297e8bfe | 255 | gLCD.drawstring(60, col++, buff); |
ryood | 1:23bc297e8bfe | 256 | sprintf(buff, "RS%3d EV%3d", resonance, envMod); |
ryood | 1:23bc297e8bfe | 257 | gLCD.drawstring(60, col++, buff); |
ryood | 1:23bc297e8bfe | 258 | sprintf(buff, "LV%3d DR%3d", level, duration); |
ryood | 1:23bc297e8bfe | 259 | gLCD.drawstring(60, col++, buff); |
ryood | 1:23bc297e8bfe | 260 | sprintf(buff, "DC%3d ST%3d", decay, sustain); |
ryood | 1:23bc297e8bfe | 261 | gLCD.drawstring(60, col++, buff); |
ryood | 1:23bc297e8bfe | 262 | |
ryood | 1:23bc297e8bfe | 263 | gLCD.display(); |
ryood | 1:23bc297e8bfe | 264 | } |
ryood | 0:cbc508b7ebff | 265 | |
ryood | 2:29f0fe703d39 | 266 | //------------------------------------------------------------------------ |
ryood | 2:29f0fe703d39 | 267 | // Main routine |
ryood | 2:29f0fe703d39 | 268 | //------------------------------------------------------------------------ |
ryood | 0:cbc508b7ebff | 269 | int main() |
ryood | 0:cbc508b7ebff | 270 | { |
ryood | 2:29f0fe703d39 | 271 | #if (UART_TRACE) |
ryood | 2:29f0fe703d39 | 272 | printf("*** BaseMachine Sequencer ***\r\n"); |
ryood | 2:29f0fe703d39 | 273 | #endif |
ryood | 2:29f0fe703d39 | 274 | |
ryood | 2:29f0fe703d39 | 275 | gLCD.begin(0x12); |
ryood | 2:29f0fe703d39 | 276 | gLCD.clear(); |
ryood | 2:29f0fe703d39 | 277 | gLCD.drawstring(0, 0, TITLE_STR1); |
ryood | 2:29f0fe703d39 | 278 | gLCD.drawstring(0, 1, TITLE_STR2); |
ryood | 2:29f0fe703d39 | 279 | gLCD.display(); |
ryood | 2:29f0fe703d39 | 280 | Thread::wait(1000); |
ryood | 2:29f0fe703d39 | 281 | |
ryood | 2:29f0fe703d39 | 282 | PinWaveShape.attach_asserted(&swWaveShapePressed); |
ryood | 2:29f0fe703d39 | 283 | PinWaveShape.setAssertValue(0); |
ryood | 2:29f0fe703d39 | 284 | PinWaveShape.setSampleFrequency(); |
ryood | 2:29f0fe703d39 | 285 | |
ryood | 2:29f0fe703d39 | 286 | PinModNumber.attach_asserted(&swModNumberPressed); |
ryood | 2:29f0fe703d39 | 287 | PinModNumber.setAssertValue(0); |
ryood | 2:29f0fe703d39 | 288 | PinModNumber.setSampleFrequency(); |
ryood | 2:29f0fe703d39 | 289 | |
ryood | 2:29f0fe703d39 | 290 | PinOctaveUp.attach_asserted(&swOctaveUpPressed); |
ryood | 2:29f0fe703d39 | 291 | PinOctaveUp.setAssertValue(0); |
ryood | 2:29f0fe703d39 | 292 | PinOctaveUp.setSampleFrequency(); |
ryood | 2:29f0fe703d39 | 293 | |
ryood | 2:29f0fe703d39 | 294 | PinOctaveDown.attach_asserted(&swOctaveDownPressed); |
ryood | 2:29f0fe703d39 | 295 | PinOctaveDown.setAssertValue(0); |
ryood | 2:29f0fe703d39 | 296 | PinOctaveDown.setSampleFrequency(); |
ryood | 0:cbc508b7ebff | 297 | |
ryood | 2:29f0fe703d39 | 298 | PinNoteOnOff.attach_asserted(&swNoteOnOffPressed); |
ryood | 2:29f0fe703d39 | 299 | PinNoteOnOff.setAssertValue(0); |
ryood | 2:29f0fe703d39 | 300 | PinNoteOnOff.setSampleFrequency(); |
ryood | 2:29f0fe703d39 | 301 | |
ryood | 2:29f0fe703d39 | 302 | PinTie.attach_asserted(&swTiePressed); |
ryood | 2:29f0fe703d39 | 303 | PinTie.setAssertValue(0); |
ryood | 2:29f0fe703d39 | 304 | PinTie.setSampleFrequency(); |
ryood | 2:29f0fe703d39 | 305 | |
ryood | 2:29f0fe703d39 | 306 | PinAccent.attach_asserted(&swAccentPressed); |
ryood | 2:29f0fe703d39 | 307 | PinAccent.setAssertValue(0); |
ryood | 2:29f0fe703d39 | 308 | PinAccent.setSampleFrequency(); |
ryood | 2:29f0fe703d39 | 309 | |
ryood | 2:29f0fe703d39 | 310 | PinRunStop.attach_asserted(&swRunStopPressed); |
ryood | 2:29f0fe703d39 | 311 | PinRunStop.setAssertValue(0); |
ryood | 2:29f0fe703d39 | 312 | PinRunStop.setSampleFrequency(); |
ryood | 2:29f0fe703d39 | 313 | |
ryood | 2:29f0fe703d39 | 314 | #if (UART_TRACE) |
ryood | 2:29f0fe703d39 | 315 | printf("Setup Devices OK\r\n"); |
ryood | 2:29f0fe703d39 | 316 | #endif |
ryood | 2:29f0fe703d39 | 317 | |
ryood | 2:29f0fe703d39 | 318 | for (;;) { |
ryood | 1:23bc297e8bfe | 319 | pollingPots(); |
ryood | 2:29f0fe703d39 | 320 | pollingPins(); |
ryood | 1:23bc297e8bfe | 321 | dumpToLCD(); |
ryood | 2:29f0fe703d39 | 322 | } |
ryood | 0:cbc508b7ebff | 323 | } |