Subversion Repositories svn.mios

Rev

Rev 1186 | Rev 1228 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1186 Rev 1200
Line 79... Line 79...
79
Up to 256 buttons can be connected to up to 32 DIN shift registers.<BR>
79
Up to 256 buttons can be connected to up to 32 DIN shift registers.<BR>
80
   The <I>hw_id</I> ranges from 1..256
80
   The <I>hw_id</I> ranges from 1..256
81
  <LI><I>LED</I>: the first LED (1) is connected to the first DOUT shift register, pin D7 (!), the second LED (2) to the first DOUT shift register, pin D6, ... the 9th LED to the second DOUT shift register, pin D7, etc...<BR>
81
  <LI><I>LED</I>: the first LED (1) is connected to the first DOUT shift register, pin D7 (!), the second LED (2) to the first DOUT shift register, pin D6, ... the 9th LED to the second DOUT shift register, pin D7, etc...<BR>
82
Up to 256 LEDs can be connected to up to 32 DOUT shift registers.<BR>
82
Up to 256 LEDs can be connected to up to 32 DOUT shift registers.<BR>
83
   The <I>hw_id</I> ranges from 1..256
83
   The <I>hw_id</I> ranges from 1..256
-
 
84
  <LI><I>RGBLED</I>: WS2812 based LED strips are currently only supported for the MBHP_CORE_STM32F4 module. The data input has to be connected to J4B.SC, ground to J4B.VS and +5V to an external PSU (required, since each RGB LED can consume up to 20 mA!)<BR>
-
 
85
Up to 64 RGB LEDs can be driven by the core. More could be enabled if desired by increasing the number with '#define WS2812_NUM_LEDS &lt;number&gt;' in the mios32_config.h file, but note that each LED will consume 48 bytes and therefore the RAM limit of the STM32F4 could be reached quickly! However, 128 LEDs are working ok so far, but this could change than more firmware features are added in future.
84
  <LI><I>ENC</I>: rotary encoders allocate two DIN pins, which have to be assigned with the ENC command which is described later in this chapter.<BR>
86
  <LI><I>ENC</I>: rotary encoders allocate two DIN pins, which have to be assigned with the ENC command which is described later in this chapter.<BR>
85
Up to 128 rotary encoders are currently supported.
87
Up to 128 rotary encoders are currently supported.
86
   The <I>hw_id</I> ranges from 1..128
88
   The <I>hw_id</I> ranges from 1..128
87
  <LI><I>AIN</I>: 6 AIN (analog input) pins are directly available on the <A HREF="mbhp_core_stm32.html">MBHP_CORE_STM32</A> and <A HREF="mbhp_core_lpc17.html">MBHP_CORE_LPC17</A> module at J5A.A0 .. J5B.A5 - conversion values are working at 7bit resolution only due to the reduced voltage range of 0..3.3V. For higher resolutions or more inputs please use the AINSER option!<BR>
89
  <LI><I>AIN</I>: 6 AIN (analog input) pins are directly available on the <A HREF="mbhp_core_stm32.html">MBHP_CORE_STM32</A> and <A HREF="mbhp_core_lpc17.html">MBHP_CORE_LPC17</A> module at J5A.A0 .. J5B.A5 - conversion values are working at 7bit resolution only due to the reduced voltage range of 0..3.3V. For higher resolutions or more inputs please use the AINSER option!<BR>
88
   The <I>hw_id</I> ranges from 1..6
90
   The <I>hw_id</I> ranges from 1..6
Line 206... Line 208...
206
    <TD CLASS=TABCOLOR2>A button can send a MIDI event whenever it's pressed or depressed. If pressed, the maximum value of the specified range will be sent (typically 127), if depressed the minimum value (typically 0). In toggle mode, the on/off state will be updated when it receives the same event.
208
    <TD CLASS=TABCOLOR2>A button can send a MIDI event whenever it's pressed or depressed. If pressed, the maximum value of the specified range will be sent (typically 127), if depressed the minimum value (typically 0). In toggle mode, the on/off state will be updated when it receives the same event.
207
  </TR>
209
  </TR>
208
  <TR>
210
  <TR>
209
    <TD CLASS=TABCOLOR2 WIDTH=150><I>EVENT_LED</I></TD>
211
    <TD CLASS=TABCOLOR2 WIDTH=150><I>EVENT_LED</I></TD>
210
    <TD CLASS=TABCOLOR2>A LED can receive a MIDI event. It's turned on if the received value is >= the mid value of the specified range, otherwise it's turned off.
212
    <TD CLASS=TABCOLOR2>A LED can receive a MIDI event. It's turned on if the received value is >= the mid value of the specified range, otherwise it's turned off.
-
 
213
    </TD>
-
 
214
  </TR>
-
 
215
-
 
216
  <TR>
-
 
217
    <TD CLASS=TABCOLOR2 WIDTH=150><I>EVENT_RGBLED</I></TD>
-
 
218
    <TD CLASS=TABCOLOR2>A WS2812 based RGB LED can receive a MIDI event. By default the received velocity controls the brightness of a pre-configured colour, but it's also possible to control the colour instead. Configuration examples can be found in <A HREF="http://svnmios.midibox.org/filedetails.php?repname=svn.mios32&path=%2Ftrunk%2Fapps%2Fcontrollers%2Fmidibox_ng_v1%2Fcfg%2Ftests%2Frgbled_1.ngc" TARGET="_blank">rgbled_1.ngc</A>
211
    </TD>
219
    </TD>
212
  </TR>
220
  </TR>
213
221
214
  <TR>
222
  <TR>
215
    <TD CLASS=TABCOLOR2 WIDTH=150><I>EVENT_BUTTON_MATRIX</I></TD>
223
    <TD CLASS=TABCOLOR2 WIDTH=150><I>EVENT_BUTTON_MATRIX</I></TD>
Line 399... Line 407...
399
    <TD CLASS=TABCOLOR2 WIDTH=150><I>type=&lt;event-type&gt;</I></TD>
407
    <TD CLASS=TABCOLOR2 WIDTH=150><I>type=&lt;event-type&gt;</I></TD>
400
    <TD CLASS=TABCOLOR2>Specifies the MIDI event type which should be sent and/or received.<BR>
408
    <TD CLASS=TABCOLOR2>Specifies the MIDI event type which should be sent and/or received.<BR>
401
       <UL CLASS=CL>
409
       <UL CLASS=CL>
402
         <LI><I>NoteOff</I>: will send/receive a Note Off event with the specified key value
410
         <LI><I>NoteOff</I>: will send/receive a Note Off event with the specified key value
403
         <LI><I>NoteOn</I>: will send/receive a Note On event with the specified key value. Please consider that the MIDI protocol handles a NoteOn with value 0 like a Note Off event, therefore <I>type=NoteOff</I> is actually redundant.
411
         <LI><I>NoteOn</I>: will send/receive a Note On event with the specified key value. Please consider that the MIDI protocol handles a NoteOn with value 0 like a Note Off event, therefore <I>type=NoteOff</I> is actually redundant.
-
 
412
         <LI><I>NoteOnOff</I>: will send a NoteOn, and immediately a NoteOff event.
404
         <LI><I>PolyPressure</I>: will send/receive a Poly Pressure event with the specified key value
413
         <LI><I>PolyPressure</I>: will send/receive a Poly Pressure event with the specified key value
405
         <LI><I>CC</I>: will send/receive a CC event with the specified cc value
414
         <LI><I>CC</I>: will send/receive a CC event with the specified cc value
406
         <LI><I>ProgramChange</I>: will send/recieve a Program Change event
415
         <LI><I>ProgramChange</I>: will send/recieve a Program Change event
407
         <LI><I>Aftertouch</I>: will send/recieve an Aftertouch event with the specified key value
416
         <LI><I>Aftertouch</I>: will send/recieve an Aftertouch event with the specified key value
408
         <LI><I>PitchBend</I>: will send/recieve a Pitch Bender event with the specified 14bit (!) value
417
         <LI><I>PitchBend</I>: will send/recieve a Pitch Bender event with the specified 14bit (!) value
Line 534... Line 543...
534
        <LI><I>IncSnapshot</I>: increments the snapshot number
543
        <LI><I>IncSnapshot</I>: increments the snapshot number
535
        <LI><I>DecSnapshot</I>: decrements the snapshot number
544
        <LI><I>DecSnapshot</I>: decrements the snapshot number
536
        <LI><I>CycleSnapshot</I>: increments the snapshot number, resets to 0 if last snapshot reached
545
        <LI><I>CycleSnapshot</I>: increments the snapshot number, resets to 0 if last snapshot reached
537
        <LI><I>LoadSnapshot</I>: loads a snapshot with the currently selected number from the .NGS file
546
        <LI><I>LoadSnapshot</I>: loads a snapshot with the currently selected number from the .NGS file
538
        <LI><I>SaveSnapshot</I>: stores a snapshot with the currently selected number into the .NGS file
547
        <LI><I>SaveSnapshot</I>: stores a snapshot with the currently selected number into the .NGS file
-
 
548
        <LI><I>SaveDelayedSnapshot:&lt;seconds&gt;</I>: this command will request to store the currently selected snapshot after at least the given seconds.<BR>Usage should be prefered over SaveSnapshot whenever multiple EVENTs could trigger the store operation to avoid unwanted delays.
539
        <LI><I>DumpSnapshot</I>: dumps the values of all control elements which haven't specified no_dump=1.<BR>
549
        <LI><I>DumpSnapshot</I>: dumps the values of all control elements which haven't specified no_dump=1.<BR>
540
        Note that multiple meta commands can be assigned to an event, e.g. to set, auto-load and dump a snapshot from an encoder write:
550
        Note that multiple meta commands can be assigned to an event, e.g. to set, auto-load and dump a snapshot from an encoder write:
541
551
542
<TT><PRE style="margin-left:20px; font-size:8pt">
552
<TT><PRE style="margin-left:20px; font-size:8pt">
543
EVENT_ENC ... type=Meta meta=SetSnapshot meta=LoadSnapshot meta=DumpSnapshot
553
EVENT_ENC ... type=Meta meta=SetSnapshot meta=LoadSnapshot meta=DumpSnapshot
Line 583... Line 593...
583
593
584
        <LI><I>KbBreakIsMake:&lt;keyboard-number&gt;</I>: this command changes the behaviour of a keyboard (EVENT_KB): with value > 0 the keyboard will already trigger a note event when the break contact is activated (nice for playing organ style).<BR>
594
        <LI><I>KbBreakIsMake:&lt;keyboard-number&gt;</I>: this command changes the behaviour of a keyboard (EVENT_KB): with value > 0 the keyboard will already trigger a note event when the break contact is activated (nice for playing organ style).<BR>
585
      Trigger it from a toggle button function as shown in <A HREF="http://svnmios.midibox.org/filedetails.php?repname=svn.mios32&path=%2Ftrunk%2Fapps%2Fcontrollers%2Fmidibox_ng_v1%2Fcfg%2Ftests%2Fkb_5.ngc" TARGET="_blank">kb_5.ngc</A><BR>
595
      Trigger it from a toggle button function as shown in <A HREF="http://svnmios.midibox.org/filedetails.php?repname=svn.mios32&path=%2Ftrunk%2Fapps%2Fcontrollers%2Fmidibox_ng_v1%2Fcfg%2Ftests%2Fkb_5.ngc" TARGET="_blank">kb_5.ngc</A><BR>
586
      Can be optionally set from the terminal as well with following
596
      Can be optionally set from the terminal as well with following
587
      command: <I>set kb &lt;keyboard-number&gt; break_is_make &lt;on|off&gt;</I> (e.g. <I>set kb 1 break_is_make on</I>).
597
      command: <I>set kb &lt;keyboard-number&gt; break_is_make &lt;on|off&gt;</I> (e.g. <I>set kb 1 break_is_make on</I>).
-
 
598
-
 
599
        <LI><I>SendEvent&lt;controller&gt;:&lt;id&gt;:&lt;min&gt;:&lt;max&gt;</I>: allows to remote control one or more events from a single event within a given value range and direction.<BR>
-
 
600
           Usage Examples:
-
 
601
           <TT><PRE style="margin-left:20px; font-size:8pt">
-
 
602
# MetaA sends EVENT_ENC id=3, 4, 5, 6 in different ranges
-
 
603
EVENT_ENC    id=  1  hw_id =  1          fwd_id=LED_MATRIX:1    fwd_to_lcd=1  \
-
 
604
             type=Meta \
-
 
605
             meta=SendEvent:ENC:3:64:127 \
-
 
606
             meta=SendEvent:ENC:4:127:64 \
-
 
607
             meta=SendEvent:ENC:5:10:117 \
-
 
608
             meta=SendEvent:ENC:6:117:10 \
-
 
609
             range=  0:127 offset=  0  lcd_pos=1:1:1  label="ENC MetaA   %3d@(1:1:2)%B"
-
 
610
-
 
611
# MetaB sends EVENT_ENC id=7, 8, 9, 10 in different ranges
-
 
612
EVENT_ENC    id=  2  hw_id =  2          fwd_id=LED_MATRIX:2    fwd_to_lcd=1  \
-
 
613
             type=Meta \
-
 
614
             meta=SendEvent:ENC:7:64:127  \
-
 
615
             meta=SendEvent:ENC:8:127:64  \
-
 
616
             meta=SendEvent:ENC:9:10:117  \
-
 
617
             meta=SendEvent:ENC:10:117:10 \
-
 
618
             range=  0:127 offset=  0  lcd_pos=1:1:1  label="ENC MetaB   %3d@(1:2:2)%B"
-
 
619
           </PRE></TT>
-
 
620
       See also <A HREF="http://svnmios.midibox.org/filedetails.php?repname=svn.mios32&path=%2Ftrunk%2Fapps%2Fcontrollers%2Fmidibox_ng_v1%2Fcfg%2Ftests%2Fmetalrn.ngc" TARGET="_blank">metalrn.ngc</A> for further information</LI>
-
 
621
-
 
622
        <LI><I>LearnEvent&lt;controller&gt;:&lt;id&gt;</I>: allows to learn SendEvent based controller assignments during runtime.<BR>
-
 
623
       See also <A HREF="http://svnmios.midibox.org/filedetails.php?repname=svn.mios32&path=%2Ftrunk%2Fapps%2Fcontrollers%2Fmidibox_ng_v1%2Fcfg%2Ftests%2Fmetalrn.ngc" TARGET="_blank">metalrn.ngc</A> for further information</LI>
-
 
624
-
 
625
-
 
626
        <LI><I>RgbLedClearAll</I>: (clears all LEDs)
-
 
627
        <LI><I>RgbLedSetRgb:&lt;led&gt;:&lt;r&gt;:&lt;g&gt;:&lt;b&gt;</I>: (led=1..64, r/g/b=0..255)
-
 
628
        <LI><I>RgbLedSetHsv:&lt;led&gt;:&lt;h&gt;:&lt;s&gt;:&lt;v&gt;</I>: (led=1..64, h=0..359, s=0..100, v=0..100)
-
 
629
        <LI><I>RgbLedRainbow:&lt;speed&gt;:&lt;brightness&gt;</I>: (speed=1..255, brightness=0..100)<BR>
-
 
630
           Most simple way to test a LED strip: enter following command in MIOS Terminal:
-
 
631
           <TT><PRE style="margin-left:20px; font-size:8pt">
-
 
632
              ngr exec_meta RgbLedRainbow:9:100
-
 
633
           </PRE></TT>
-
 
634
           (don't forget to wear sunglasses, or start with brightness 20!!! ;-)</LI>
588
635
589
        <LI><I>ScsEnc</I>: emulates a SCS encoder movement. This Meta event can either be issued from EVENT_ENC or EVENT_BUTTON events. A usage example is given below.
636
        <LI><I>ScsEnc</I>: emulates a SCS encoder movement. This Meta event can either be issued from EVENT_ENC or EVENT_BUTTON events. A usage example is given below.
590
        <LI><I>ScsSoft1</I>: emulates the SOFT1 button of the SCS
637
        <LI><I>ScsSoft1</I>: emulates the SOFT1 button of the SCS
591
        <LI><I>ScsSoft2</I>: emulates the SOFT2 button of the SCS
638
        <LI><I>ScsSoft2</I>: emulates the SOFT2 button of the SCS
592
        <LI><I>ScsSoft3</I>: emulates the SOFT3 button of the SCS
639
        <LI><I>ScsSoft3</I>: emulates the SOFT3 button of the SCS
Line 852... Line 899...
852
     <UL CLASS=CL>
899
     <UL CLASS=CL>
853
       <LI><A HREF="http://svnmios.midibox.org/filedetails.php?repname=svn.mios32&path=%2Ftrunk%2Fapps%2Fcontrollers%2Fmidibox_ng_v1%2Fcfg%2Ftests%2Frgb_1.ngc" TARGET="_blank">rgb_1.ngc</A>: individual brightness levels for RGB LEDs
900
       <LI><A HREF="http://svnmios.midibox.org/filedetails.php?repname=svn.mios32&path=%2Ftrunk%2Fapps%2Fcontrollers%2Fmidibox_ng_v1%2Fcfg%2Ftests%2Frgb_1.ngc" TARGET="_blank">rgb_1.ngc</A>: individual brightness levels for RGB LEDs
854
       <LI><A HREF="http://svnmios.midibox.org/filedetails.php?repname=svn.mios32&path=%2Ftrunk%2Fapps%2Fcontrollers%2Fmidibox_ng_v1%2Fcfg%2Ftests%2Frgb_2.ngc" TARGET="_blank">rgb_2.ngc</A>: individual brightness levels for RGB LEDs forwarded from EVENT_BUTTON
901
       <LI><A HREF="http://svnmios.midibox.org/filedetails.php?repname=svn.mios32&path=%2Ftrunk%2Fapps%2Fcontrollers%2Fmidibox_ng_v1%2Fcfg%2Ftests%2Frgb_2.ngc" TARGET="_blank">rgb_2.ngc</A>: individual brightness levels for RGB LEDs forwarded from EVENT_BUTTON
855
       <LI><A HREF="http://svnmios.midibox.org/filedetails.php?repname=svn.mios32&path=%2Ftrunk%2Fapps%2Fcontrollers%2Fmidibox_ng_v1%2Fcfg%2Ftests%2Frgb_3.ngc" TARGET="_blank">rgb_3.ngc</A>: different RGB brightness levels are used in different banks
902
       <LI><A HREF="http://svnmios.midibox.org/filedetails.php?repname=svn.mios32&path=%2Ftrunk%2Fapps%2Fcontrollers%2Fmidibox_ng_v1%2Fcfg%2Ftests%2Frgb_3.ngc" TARGET="_blank">rgb_3.ngc</A>: different RGB brightness levels are used in different banks
856
     </UL>
903
     </UL>
-
 
904
     <B>Note:</B> <I>rgb</I> also works with "normal" LEDs directly connected to DOUT pins. In this case the <I>&lt;red&gt;</I> value will statically set the brightness level of the single-colour LED. The remaining <I>&lt;green&gt;</I> and <I>&lt;blue&gt;</I> levels have no effect in this case.<BR>
857
     <B>Note:</B> <I>rgb</I> also works with "normal" LEDs directly connected to DOUT pins. In this case the <I>&lt;red&gt;</I> value will statically set the brightness level of the single-colour LED. The remaining <I>&lt;green&gt;</> and <I>&lt;blue&gt;</I> levels have no effect in this case.
905
     <B>Note2:</B> <I>rgb</I> will also work for WS2812 based RGBLEDs, but due to the higher resolution the hsv parameter described below is prefered.
858
    </TD>
906
    </TD>
-
 
907
  </TR>
-
 
908
-
 
909
  <TR>
-
 
910
    <TD CLASS=TABCOLOR2 WIDTH=150><I>hsv=&lt;hue&gt;:&lt;saturation&gt;&lt;brightness&gt;</I></TD>
-
 
911
    <TD CLASS=TABCOLOR2>This command will only work for WS2812 based RGBLEDs!<BR>
-
 
912
                        Sets the hue/saturation/value colour code of a WS2812 based RGBLED. H ranges from 0..359 (grad); saturation and value (brightness) range from 0..100 (percentage)<BR>
-
 
913
     Configuration Example:
-
 
914
     <UL CLASS=CL>
-
 
915
       <LI><A HREF="http://svnmios.midibox.org/filedetails.php?repname=svn.mios32&path=%2Ftrunk%2Fapps%2Fcontrollers%2Fmidibox_ng_v1%2Fcfg%2Ftests%2Frgbled_1.ngc" TARGET="_blank">rgbled_1.ngc</A>: various usage examples for WS2812 based RGBLEDs
-
 
916
     </UL>
-
 
917
    </TD>
-
 
918
  </TR>
-
 
919
-
 
920
  <TR>
-
 
921
    <TD CLASS=TABCOLOR2 WIDTH=150><I>inverted=&lt;0|1&gt;</I></TD>
-
 
922
    <TD CLASS=TABCOLOR2>Only relevant for EVENT_BUTTON and EVENT_LED: with <I>inverted=1</I> the DIN input resp. DOUT output will be inverted.</TD>
859
  </TR>
923
  </TR>
860
924
861
  <TR>
925
  <TR>
862
    <TD CLASS=TABCOLOR2 WIDTH=150><I>cv_inverted=&lt;0|1&gt;</I></TD>
926
    <TD CLASS=TABCOLOR2 WIDTH=150><I>cv_inverted=&lt;0|1&gt;</I></TD>
863
    <TD CLASS=TABCOLOR2>Only relevant for EVENT_CV: with <I>cv_inverted=1</I> the CV output will be inverted.</TD>
927
    <TD CLASS=TABCOLOR2>Only relevant for EVENT_CV: with <I>cv_inverted=1</I> the CV output will be inverted.</TD>
Line 1300... Line 1364...
1300
    <TH WIDTH=150>LED_MATRIX_PATTERN Parameter</TD>
1364
    <TH WIDTH=150>LED_MATRIX_PATTERN Parameter</TD>
1301
    <TH>Description</TD>
1365
    <TH>Description</TD>
1302
  </TR>
1366
  </TR>
1303
  <TR>
1367
  <TR>
1304
    <TD CLASS=TABCOLOR2 WIDTH=150><I>n=&lt;1..4&gt;</I></TD>
1368
    <TD CLASS=TABCOLOR2 WIDTH=150><I>n=&lt;1..4&gt;</I></TD>
1305
    <TD CLASS=TABCOLOR2>Specifies the pattern-set number; it can range from 1..8</TD>
1369
    <TD CLASS=TABCOLOR2>Specifies the pattern-set number; it can range from 1..4</TD>
1306
  </TR>
1370
  </TR>
1307
  <TR>
1371
  <TR>
1308
    <TD CLASS=TABCOLOR2 WIDTH=150><I>pos=&lt;0..15|M&gt;</I></TD>
1372
    <TD CLASS=TABCOLOR2 WIDTH=150><I>pos=&lt;0..15|M&gt;</I></TD>
1309
    <TD CLASS=TABCOLOR2>Specifies the position for the following pattern (0..15, or M for middle position)
1373
    <TD CLASS=TABCOLOR2>Specifies the position for the following pattern (0..15, or M for middle position)
1310
  <TR>
1374
  <TR>
1311
  <TR>
1375
  <TR>
1312
    <TD CLASS=TABCOLOR2 WIDTH=150><I>pattern=&lt;16-bit-binary&gt;</I></TD>
1376
    <TD CLASS=TABCOLOR2 WIDTH=150><I>pattern=&lt;16-bit-binary&gt;</I></TD>
1313
    <TD CLASS=TABCOLOR2>Sets the pattern for the given position. It consists of 16 binary digits (0 or 1 for LED off/on)
1377
    <TD CLASS=TABCOLOR2>Sets the pattern for the given position. It consists of 16 binary digits (0 or 1 for LED off/on)
1314
  <TR>
1378
  <TR>
-
 
1379
</TABLE>
-
 
1380
-
 
1381
-
 
1382
<H2> <IMG SRC="images/bullet.gif" ALT=""> SRIO </H2>
-
 
1383
-
 
1384
<TABLE WIDTH="100%" BORDER=0 CELLSPACING=5 CELLPADDING=0>
-
 
1385
  <TR>
-
 
1386
    <TH WIDTH=150>SRIO Command</TD>
-
 
1387
    <TH>Description</TD>
-
 
1388
  </TR>
-
 
1389
  <TR>
-
 
1390
    <TD CLASS=TABCOLOR2 WIDTH=150><I>num_sr=&lt;1..32&gt;</I></TD>
-
 
1391
    <TD CLASS=TABCOLOR2>By default 32 DIN and DOUT shift registers are scanned, which result into an update rate of ca. 420 uS on a STM32F4 based core.<BR>
-
 
1392
    With (for example) <I>SRIO sr_num=8</I> only up to 8 DIN and 8 DOUT SRs will be scanned anymore, but the update rate is reduced to ca. 110..120 uS (a little bit more than a quarter due to SR handling overhead).</TD>
-
 
1393
  </TR>
-
 
1394
  <TR>
-
 
1395
    <TD CLASS=TABCOLOR2 WIDTH=150><I>debounce_cycles=&lt;0..255&gt;</I></TD>
-
 
1396
    <TD CLASS=TABCOLOR2>This command allows to enable a debouncing mechanism for digital inputs (buttons). The number specifies the dead time in SRIO cycles at which button events will be rejected.<BR>
-
 
1397
The time of a SRIO cycle depends on the num_sr configuration, typically it's around 420 uS for 32 SRs, which means that with debounce_cycles=20 the debouncing dead time is 8.4 mS.</TD>
-
 
1398
  </TR>
1315
</TABLE>
1399
</TABLE>
1316
1400
1317
1401
1318
<H2> <IMG SRC="images/bullet.gif" ALT=""> DIO </H2>
1402
<H2> <IMG SRC="images/bullet.gif" ALT=""> DIO </H2>
1319
1403
Line 1374... Line 1458...
1374
  <LI><A HREF="http://svnmios.midibox.org/filedetails.php?repname=svn.mios32&path=%2Ftrunk%2Fapps%2Fcontrollers%2Fmidibox_ng_v1%2Fcfg%2Ftests%2Fkb_5.ngc" TARGET="_blank">kb_5.ngc</A>: using the KbBreakIsMake option
1458
  <LI><A HREF="http://svnmios.midibox.org/filedetails.php?repname=svn.mios32&path=%2Ftrunk%2Fapps%2Fcontrollers%2Fmidibox_ng_v1%2Fcfg%2Ftests%2Fkb_5.ngc" TARGET="_blank">kb_5.ngc</A>: using the KbBreakIsMake option
1375
</UL>
1459
</UL>
1376
1460
1377
1461
1378
<P CLASS=DESC>Please note, that the configuration commands are identical "set kb..." as documented at the <A HREF="http://www.ucapps.de/midibox_kb.html">MIDIbox KB page</A>. This means, that the keyboard parameters can also be changed during runtime to determine the best matching values, before they are written into the .NGC file.</P>
1462
<P CLASS=DESC>Please note, that the configuration commands are identical "set kb..." as documented at the <A HREF="http://www.ucapps.de/midibox_kb.html">MIDIbox KB page</A>. This means, that the keyboard parameters can also be changed during runtime to determine the best matching values, before they are written into the .NGC file.</P>
-
 
1463
-
 
1464
<P CLASS=DESC>Optionally the delay_slowest values can be calibrated for each individual key of the keyboard. The values are stored in the .NGK file, and can be edited with the MIOS Filebrowser.
1379
1465
1380
<H2> <IMG SRC="images/bullet.gif" ALT=""> AIN </H2>
1466
<H2> <IMG SRC="images/bullet.gif" ALT=""> AIN </H2>
1381
1467
1382
<P CLASS=DESC>The AIN command allows to enable/disable core based analog inputs with the <I>enable_mask</I> parameter. It consists of 6 binary digits which stand for J5A.A0..J5B.A5
1468
<P CLASS=DESC>The AIN command allows to enable/disable core based analog inputs with the <I>enable_mask</I> parameter. It consists of 6 binary digits which stand for J5A.A0..J5B.A5
1383
1469
Line 1772... Line 1858...
1772
      </UL>
1858
      </UL>
1773
      Additional modes can be added in future on request:
1859
      Additional modes can be added in future on request:
1774
      </TD>
1860
      </TD>
1775
  </TR>
1861
  </TR>
1776
</TABLE>
1862
</TABLE>
1777
-
 
1778
-
 
1779
<H2> <IMG SRC="images/bullet.gif" ALT=""> SRIO </H2>
-
 
1780
-
 
1781
<P CLASS=DESC><I>SRIO num_sr=&lt;1..32&gt;</I>: By default 32 DIN and DOUT shift registers are scanned, which result into an update rate of ca. 420 uS on a STM32F4 based core.</P>
-
 
1782
-
 
1783
<P CLASS=DESC>With (for example) <I>SRIO sr_num=8</I> only up to 8 DIN and 8 DOUT SRs will be scanned anymore, but the update rate is reduced to ca. 110..120 uS (a little bit more than a quarter due to SR handling overhead).</P>
-
 
1784
-
 
1785
<H2> <IMG SRC="images/bullet.gif" ALT=""> DebounceCtr </H2>
-
 
1786
-
 
1787
<P CLASS=DESC><I>DebounceCtr &lt;0..255&gt;</I>: this command allows to enable a debouncing mechanism for digital inputs (buttons). The number specifies the dead time in mS at which button events will be rejected.
-
 
1788
1863
1789
1864
1790
<H2> <IMG SRC="images/bullet.gif" ALT=""> GlobalChannel </H2>
1865
<H2> <IMG SRC="images/bullet.gif" ALT=""> GlobalChannel </H2>
1791
1866
1792
<P CLASS=DESC><I>GlobalChannel &lt;0..16&gt;</I>: if set to a value &gt;0, all MIDI events generated with EVENT_* commands will be forced to the given MIDI channel. <B>not implemented yet!</B>
1867
<P CLASS=DESC><I>GlobalChannel &lt;0..16&gt;</I>: if set to a value &gt;0, all MIDI events generated with EVENT_* commands will be forced to the given MIDI channel. <B>not implemented yet!</B>