CmriTools Application

CmirTools is a Windows (tm) application that provides a graphical interface for testing and debugging the C/MRI serial-based system from JLC Enterprises .  The application is a complement to the CmriVB type library (DLL), since the type library is used at the engine for communicating with the various serial connected nodes.  Use this application to test your home-built C/MRI cards, or to test and configure your C/MRI layout wiring before ever writing any code.

The CmriTools application does not require any software coding on your part, only the modification of a simple text file called MyCmri.ini to match to match your C/MRI configuration.  Important *** You must not change the name of this text file ***.  Once you have changed the file to match your C/MRI system configuration, then you do not have to touch iit again, unless of course you add more nodes or I/O cards.  The format of the MyCmri.ini configuration file is easy, as you will soon see.

Here are some example screen shots from the application.

 

Click on the "Write-A-Card 32" button to toggle various output lines with the click of a mouse.  Use the drop-down list boxes to select the USIC node and the output board you wish to communicate with and then you are ready to go.  A great way to test your wiring configurations before writing your layout logic code.

Click on the "Read-A-Card 32" button to read the status of an individual data line on a selected input card in the system.  Again, use the drop-down list boxes to select the USIC node and the input board you wish to communicate with and then you are ready to go.

Click on the "Write-A-Card 24" button to toggle an individual data line on a selected 24-bit SMINI USIC or legacy 24-bit USIC board.  Again, use the drop-down list boxes to select the USIC node and the output board you wish to communicate with and then you are ready to go.

Click on the "Wrap Test 24" button to conduct a wrap around test on a 24-bit input and output board pair, including SMINI, within a given node.  Again, use the drop-down list boxes to select the USIC node and then select the input and output board pair you wish to test and you are ready to go.  Also worth noting is that this test test can be run on any I/O board pair at anytime.  Just hook up the wrap around test cable and run the test.  No need to change board configurations.

Note:  This test does not test each decimal number between 0 - 255  for each port, but rather tests to see if each successive bit turns on as well as testing the status of all the remaining data lines on the input card  to see that they are off.  Although slightly different, this test format is still a very robust means for testing the I/O hardware.

 

Configuration File Format

[Usic]

NODE_COUNT=1                Number of nodes in the system, remember to increment when

                                                more nodes are added to the system.

 

;*****Example Data for SMINI initialization*****

[UsicData#0]                            Header for USIC data *** Remember to increment node number ***

ADDRESS=0                           Address for this node, 65 gets added to this number during node

                                                 initialization.

USIC_TYPE=M                       Node type; N, M, or X - Legacy USIC, SMINI USIC, or Maxi USIC

DELAY=0                                USIC response delay for read attempts, generally zero for newer PCs.

NUM_IO_CARDS=3              Total number of Input and Output cards in this no

 

[I/O_CardsForUsic#0]             Header for USIC card data *** Remember to increment node number ***

CARD#0=OUTPUT                First card in for SMINI always of type output.

CARD#1=OUTPUT                Second card in for SMINI always of type output.

CARD#2=INPUT                   Third card in for SMINI always of type input.

 

Note:  The following information is optional for SMINI, since most test configurations require you to

           NOT have the oscillating signal feature enabled, e.g. outport#n = 0, which is the default.

[OSC_SignalsForUsic#0]        Header for oscillating signal data *** Remember to increment node

                                                number ***

OUTPORT#0=1                      First SMINI output port  has one oscillating signal(s).

OUTPORT#1=2                      Second SMINI output port  has two oscillating signal(s).

OUTPORT#2=3                      Third SMINI output port  has three oscillating signal(s).

OUTPORT#3=4                      Fourth SMINI output port  has four oscillating signal(s).

OUTPORT#4=4                      Fifth SMINI output port  has four oscillating signal(s).

OUTPORT#5=4                      Sixth SMINI output port  has four oscillating signal(s).