Phattline Posted April 2, 2018 Report Posted April 2, 2018 not specially in mb ng... i would write my own mios based code.... i dont want to waste midi io on my core32 is a other connection then midi to the mf module possible? if yes are there any drawbacks? or what are the pros and cons. and what if i have to use more then one mf module is the this solution then cascadeable thx mike Quote
TK. Posted April 2, 2018 Report Posted April 2, 2018 There are good reasons why I decided to use an UART based MIDI interface for interconnections: universal approach, easy to setup from a (PC) and easy to connect to other cores MIDI messages are buffered via FIFOs, this relaxes the MIOS32 application requirement. E.g. it could prioritize the handling of other tasks and doesn't need to frequently poll for incoming messages to avoid information loss. By default the FIFOs are dimensioned with 64bytes, which means that we can bridge up to 20 mS no need to program special interface communication handlers -> less troublesome & no special knowledge required MIDI cable can be up to 10m optocouplers decouple the noisy MF voltage from the MIOS32 core, this improves EMC level-shifting 3.3V to 5V part of the physical MIDI interface So, if you are searching for alternative interfaces, they all have cons you have to learn how to program such interfaces. I won't have so much time to help you on this... you've to find your own way the MBNB_MF_NG firmware is programmed in assembly language which is difficult to enhance for people who never did this before all IO pins of the MBHP_MF_NG module are allocated, for a different interface you've not only program a new firmware, you also have to change the circuit Possible interfaces: SPI Cons: no programming example available for MIOS8 requires 4 IO pins (RC3, RC4, RC5, RA5) MBHP_MF_NG circuit has to be modified. But especially RA5 does hurt, since this is an analog input (actually a killer argument) no programming via MIDI possible anymore, you've to use a PIC programmer instead actually more valuable than MIDI ports, since only 3 SPI interface ports exist on a typical MIOS32 core. One (J8/9) is allocated for SRIO, another one (J16) for SD Card and Ethernet at 3.3V level, another one (J19) is free, but typically used for AOUT/AINSER, etc... However, if SPI, than you would either have to sacrifice J8/9 (-> no SRIO), or J19 (-> probably unusued in your application? But couldn't be used for all applications, so: only a dedicated solution for your purposes) MIOS32 core has to frequently service the SPI to avoid message loss programming will be much more complicated I2C Cons: requires 2 IO pins (RC3, RC4) MBHP_MF_NG circuit has to be modified no programming via MIDI possible anymore, you've to use a PIC programmer instead MIOS32 core has to frequently service the I2C I2C overhead higher than for other interfaces, will slow down your application and/or result into message loss programming will be much more complicated CAN Cons: requires different PIC chip (e.g. PIC18F4685) requires 2 IO pins (RB2, RB3) MBHP_MF_NG circuit has to be modified MIOS32 core has to frequently service the CAN interface. Similar to I2C and SPI there is a high risk for message loss if this isn't done frequently programming will be most complicated compared to other interfaces Best Regards, Thorsten. Quote
Phatline Posted April 2, 2018 Report Posted April 2, 2018 thx for this detailed answer the assembler language is the top argument that kills for me the idea :) i will use the standard midi conection version then thx mike Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.