TK. Posted December 11, 2005 Report Share Posted December 11, 2005 From the README.txt[tt]DIN Velocity UnMuxed V1.0 © 2005 Thorsten Klose (tk@midibox.org)===============================================================================This application can be used to do some experiments with "velocity buttons"The buttons must provide three contacts: one contact, which is closed withthe "middle pin" when the button is pressed, and another contact, which is closed with the "middle pin" when the button is depressed. Such buttons are mostly called "On-(On) pushbuttons", "push-push momentary buttons" or "SPDT buttons (Single Push, Double Throw). The outer contacts have to be connected to a pair of two digital input pins of a DINX4 module, the middle contact to ground. See also http://www.ucapps.de/mios/din_velocity_unmuxed.pdfNote that this application is not able to scan a keyboard matrix, butit could be useful to realize some simple drumpadsVelocity measuring works in the following way: so long the "depressed"contact is closed, a velocity counter is preloaded with 127Once it is released, this counter will be decremented each milliseconduntil the "pressed" contact is closed (see din_vel.c, DIN_VEL_Tick())The measured delay will be scaled to the velocity value (see DIN_VEL_NotifyToggle())The scaling can be changed in din_vel.c, velocity_table[]Currently this table contains an exponential scaling which has beengenerated with utils\velocity_table.plDepending on the button you are using a modification of this tablemight lead to better results.By default 16 buttons are handled by the application, this number canbe increased to up to 64 in din_vel.h===============================================================================A precompiled binary is already part of this package: o project.hex (can be loaded into MIOS Studio) o project.syx (can be loaded into any SysEx upload tool)Following tools are required to recompile the code: o SDCC v2.5.0 o gputils o perlThe details are described under http://www.ucapps.de/mios_c.html===============================================================================Required hardware: o one MBHP_CORE module o at least one DINX4 module for 16 push-push buttonsOptional hardware: o up to 4 DINX4 modules for up to 64 push-push buttons o a 2x16 LCD===============================================================================Configuration steps: o check the "general application settings" in main.h if changes are required for your hardware setup (e.g., number of shift registers) o check the "DIN velocity settings" in din_vel.h o the application can be rebuilt with the "make.bat" file (type "make" in a DOS command shell)===============================================================================Description about the most important files: - mios_wrapper\mios_wrapper.asm and mios_wrapper\mios_tables.inc: The MIOS wrapper code and MIOS specific configuration tables - pic18f452.c: exports PIC18F452 specific SFRs - main.c: the main program with all MIOS hooks - din_vel.c: the velocity handler - utils\velocity_table.pl: has been used to generate the scaling tableThere are additional .h files for all .c files which containgeneral definitions and the declaration of global functions/variablesThese .h files must be included into the program parts whichget use of these globals===============================================================================[/tt]Download: http://www.ucapps.de/mios_download.htmlInterconnections: http://www.ucapps.de/mios/din_velocity_unmuxed.pdfHave fun! :)Best Regards, Thorsten. Quote Link to comment Share on other sites More sharing options...
moebius Posted December 12, 2005 Report Share Posted December 12, 2005 Cool!Did I say Cool? - and shame on us who didn't do this before TK... :'(Thanks Thorsten!M Quote Link to comment Share on other sites More sharing options...
SounDuke Posted December 14, 2005 Report Share Posted December 14, 2005 Good work thorsten! I'm tired of saying the same thing on each post, but it's the truth :D Quote Link to comment Share on other sites More sharing options...
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.