Ich habe mich mit dem Midibox16E (PIC16 non MIOS) bzw. dem MIDIbox64E (PIC18F MIOS) Projekt noch nie beschäftigt aber vielleicht hilft Dir…
ENC Anschlüsse:
http://www.ucapps.de/mbhp/mbhp_dinx4_16enc.pdf
http://www.ucapps.de/mbhp/mbhp_midibox16e.gif (Core: J6 und J7 bei PIC18/MIOS Firmware nicht benutzen!)
Zum DIN Modul: Core J9 => J1 DIN(#1) J2 => J1 DIN(#2) J2 => J1 DIN(#3) etc.
http://www.ucapps.de/mbhp_din.html
welche firmware ist für mein projekt am besten geeignet?
Möglicherweise diese:
midibox64e_v2_2b.zip
http://www.ucapps.de/mios_download.html
midibox64e_v2_2b.zip: …
In der Firmware kannst Du dann sogar die ENC’s und die Buttons konfigurieren…
define the pins of your rotary encoders (if available) within the setup_*.asm file
$Id: README.txt 323 2008-05-03 19:06:15Z tk $
MIDIbox64E V2
===============================================================================
Copyright 2003 Thorsten Klose (tk@midibox.org)
Licensed for personal non-commercial use only.
All other rights reserved.
===============================================================================
The MIDIbox64E project is introduced at this webpage:
http://www.ucapps.de/midibox16e.html
(don’t be confused about “16e” - this application supports up to 64
rotary encoders (in such a case, no additional buttons can be connected,
as 64 encoders allocate 128 input pins - the maximum number of DINs)
Please read also CHANGELOG.txt for the last changes.
Some precompiled setup_*.hex files are part of this package
The required application upload procedure is described
under http://www.ucapps.de/mios_bootstrap_newbies.html
Infos for customization:
o note that a main.asm file doesn’t exist, instead, main.inc is
included from the setup_*.asm files. main.inc doesn’t need to be touched!
o do your setup in setup_midibox16e.asm (or copy this to a new .asm file)
o define the pins of your rotary encoders (if available) within the setup_*.asm file
o if the assembler doesn’t pass, check for error messages in the setup_*.err file
For details, how to build a new .hex file, see
http://www.midibox.org/dokuwiki/application_development
===============================================================================
Setup MIDIbox16E:
; $Id: setup_midibox16e.asm 195 2008-03-09 15:01:18Z tk $
LIST R=DEC
;
; Setup File for TK’s MIDIbox16E
;
; Number of connected encoders: 1-64
#define DEFAULT_NUMBER_ENCS 16 ; number of connected encoders
; NOTE: the encoders have to be assigned to the DIN pins in mios_tables.inc
;
; Width of a group - normaly matches with the number of connected encoders, but
; the MB64E_LCD_PrintGroupNumber function in mb64e_bank.inc only supports
; group widths which are a power of two (1, 2, 4, 8, 16, 32, 64)
#define DEFAULT_ENCODER_GROUP_WIDTH 16
; Number of connected buttons
; Allowed values: 1-64
#define DEFAULT_NUMBER_BUTTONS 64 ; number of connected buttons
…
So wie ich das verstehe, ist in der beschriebenen Konfiguration das erste 4xDIN MBHP Modul für die 16 ENCoder zu nehmen - und an die nächsten DIN Module kannst Du dann (optional) die Taster anschließen.
[Core] J9 => J1 [DINX4#1] J2 => J1 [DINX4#2] J2 => J1 [DINX4[#3](TASTER, optional)] J2 => etc.