[simpits-tech] Epic Hardware

Rick Centeno simpits-tech@simpits.org
Sun, 8 Dec 2002 23:59:17 +0100


This is a multi-part message in MIME format.

------=_NextPart_000_000A_01C29F15.D1787FE0
Content-Type: text/plain;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

Hi,

The new way of writing EPIC programs is indeed very similar to C. =
However, there are some things I do not understand. Maybe some one can =
help me out here?

-1- Whenever I attach a 64btn module or an 32point output module, how do =
I indicate that in the devices list? Do I create another connector for =
each module I attach to EPIC? And what numbering should I give them? IS =
there an order in the modules i.e. are the addresses somewhere =
hardcoded?

Example: I have one EPIC-USB with 1st Expansion Board, 1 ABA,  and 4 =
64BTN input modules, and 1 32point output module.=20

Do I write something as follows:
// FirstExpansion and ABA
definemodule(0, SLOWSCAN, 0, 7)
definemodule(0, FASTSCAN, 8, 8)

// 4 x 64BTN boards
definemodule(1, SLOWSCAN, 0, 8)
definemodule(2, SLOWSCAN, 0, 8)
definemodule(3, SLOWSCAN, 0, 8)
definemodule(4, SLOWSCAN, 0, 8)

// 32 point output module
definemodule(5, OUTPUT, 0, 16)

What's the logical addressing order here?

Now do I create for each of the boards a separate Connector?
Connector (FirstExpansion)
{
// here are the analogs and digitals defined....
...
}

Connector (First64Btn)
{
// here are the digitals defined....
...
}

Connector (Second64Btn)
{
// here are the digitals defined....
...
}

etc.....

-2- Secondly, I assume that I can define however many devices per =
Connector as long as I divide up the Row and columns correctly, right? =
That means I can create one device per panel and connect several panels =
(devices) up to one connector. I think I understand that from Martin's =
(Pegasus) post.

example:

Device(GearPanel)
{ Connector(First64Btn);
button(0,1, gearup);
button(0,2, geardown);
// etc....
...
}

Device(EWR)
{ Connector(First64Btn);
button(2, 1, Flaremode);
button(2, 2, Chaffmode);
button(2, 3, EWRPowerswitch);
// ...etc...
...
}

-3- Finally, what I noticed is that if I connect buttons to the 64BTN =
panel, just from top to bottom and start flipping switches in the order =
from top to bottom, the addresses are not logically increasing. I.e. =
button one has not  e.g. no 112, switch 2 113, switch 3 114, etc.. but =
the addressing/numbering i get using Test128 is then in the following =
order: 113, 117, 118, 112. I must have missed something in the manual, =
but can someone please point me quickly in the right direction? I need =
to understand the adressing of the 64BTN module in order to use module, =
row or direct physical adressing.

Thanks for all the help!
Kind regards,
Rick "Drummer" Centeno


------=_NextPart_000_000A_01C29F15.D1787FE0
Content-Type: text/html;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META content=3D"text/html; charset=3Diso-8859-1" =
http-equiv=3DContent-Type>
<META content=3D"MSHTML 5.00.3211.1700" name=3DGENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY bgColor=3D#ffffff>
<DIV><FONT face=3DArial size=3D2>Hi,</FONT></DIV>
<DIV>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2>The new way of writing EPIC programs is =
indeed very=20
similar to C. However, there are some things I do not understand. Maybe =
some one=20
can help me out here?</FONT></DIV>
<DIV>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2>-1- Whenever I attach a 64btn module or =
an 32point=20
output module, how do I indicate that in the devices list? Do I create =
another=20
connector for each module I attach to EPIC? And what numbering should I =
give=20
them? IS there an order in the modules i.e. are the addresses somewhere=20
hardcoded?</FONT></DIV>
<DIV>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2>Example: I have one EPIC-USB with 1st =
Expansion=20
Board, 1 ABA,  and 4 64BTN input modules, and 1 32point output module.=20
</FONT></DIV>
<DIV>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2>Do I write something as =
follows:</FONT></DIV>
<DIV><FONT face=3DArial size=3D2>// FirstExpansion and ABA</FONT></DIV>
<DIV><FONT face=3DArial size=3D2>definemodule(0, SLOWSCAN, 0, =
7)</FONT></DIV>
<DIV><FONT face=3DArial size=3D2>definemodule(0, FASTSCAN, 8, =
8)</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2>// 4 x 64BTN boards</FONT></DIV>
<DIV><FONT face=3DArial size=3D2>
<DIV><FONT face=3DArial size=3D2>definemodule(1, SLOWSCAN, 0, =
8)</FONT></DIV>
<DIV><FONT face=3DArial size=3D2>definemodule(2, SLOWSCAN, 0,=20
8)</FONT></DIV>definemodule(3, SLOWSCAN, 0, 8)</FONT></DIV>
<DIV><FONT face=3DArial size=3D2>
<DIV><FONT face=3DArial size=3D2>definemodule(4, SLOWSCAN, 0, =
8)</FONT></DIV>
<DIV>
<DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV>
<DIV><FONT face=3DArial size=3D2>// 32 point output module</FONT></DIV>
<DIV><FONT face=3DArial size=3D2>definemodule(5, OUTPUT, 0, =
16)</FONT></DIV>
<DIV>&nbsp;</DIV>
<DIV>What's the logical addressing order here?</DIV>
<DIV>&nbsp;</DIV>
<DIV>Now do I create for each of the boards a separate Connector?</DIV>
<DIV>Connector (FirstExpansion)</DIV>
<DIV>{</DIV>
<DIV>// here are the analogs and digitals defined....</DIV>
<DIV>...</DIV>
<DIV>}</DIV>
<DIV>&nbsp;</DIV>
<DIV>Connector (First64Btn)</DIV>
<DIV>{</DIV>
<DIV>
<DIV>// here are the digitals defined....</DIV>
<DIV>...</DIV>
<DIV>}</DIV>
<DIV>&nbsp;</DIV>
<DIV>
<DIV>Connector (Second64Btn)</DIV>
<DIV>{</DIV>
<DIV>
<DIV>// here are the digitals defined....</DIV>
<DIV>...</DIV>
<DIV>}</DIV>
<DIV>&nbsp;</DIV>
<DIV>etc.....</DIV>
<DIV>&nbsp;</DIV></DIV></DIV></DIV>
<DIV>-2- Secondly, I assume that I can define however many devices per =
Connector=20
as long as I divide up the Row and columns correctly, right? That means =
I can=20
create one device per panel and connect several panels (devices) up to =
one=20
connector. I think I understand that from Martin's (Pegasus) post.</DIV>
<DIV>&nbsp;</DIV>
<DIV>example:</DIV>
<DIV>&nbsp;</DIV>
<DIV>Device(GearPanel)</DIV>
<DIV>{ Connector(First64Btn);</DIV>
<DIV>button(0,1, gearup);</DIV>
<DIV>button(0,2, geardown);</DIV>
<DIV>// etc....</DIV>
<DIV>...</DIV>
<DIV>}</DIV>
<DIV>&nbsp;</DIV>
<DIV>Device(EWR)</DIV>
<DIV>{ Connector(First64Btn);</DIV>
<DIV>button(2, 1, Flaremode);</DIV>
<DIV>button(2, 2, Chaffmode);</DIV>
<DIV>button(2, 3, EWRPowerswitch);</DIV>
<DIV>// ...etc...</DIV>
<DIV>...</DIV>
<DIV>}</DIV>
<DIV>&nbsp;</DIV>
<DIV>-3- Finally, what I noticed is that if I connect buttons to the =
64BTN=20
panel, just from top to bottom and start flipping switches in the order =
from top=20
to bottom, the addresses are not logically increasing. I.e. button one =
has not =20
e.g. no 112,&nbsp;switch 2 113, switch 3 114, etc.. but the =
addressing/numbering=20
i get using Test128 is then in the following order: 113, 117, 118, 112. =
I must=20
have missed something in the manual, but can someone please point me =
quickly in=20
the right direction? I need to understand the adressing of the 64BTN =
module in=20
order to use module, row or direct physical adressing.</DIV>
<DIV>&nbsp;</DIV>
<DIV>Thanks for all the help!</DIV>
<DIV>Kind regards,</DIV>
<DIV>Rick "Drummer" Centeno</DIV>
<DIV>&nbsp;</DIV></DIV></FONT></DIV></BODY></HTML>

------=_NextPart_000_000A_01C29F15.D1787FE0--