Here is what I got so far. The problem is, all the pumps turn on at the same time, run for the proper amount of time, then wait for the maximum wait time. For example, the pump on pin 12 is governing the off time. After 4s all the pumps kick on, 13 is on for 1s, 12 for 2s and 11 for .7s, once 12 is done it waits 4s then everything starts at the same time.<div>
<br></div><div>Can somebody help me out?<br><div><br></div><div><br></div><div><div>#INCLUDE &quot;plumbing.module&quot;</div><div>PROC do (VAL INT pin, VAL INT timeOn, VAL INT timeOff)</div><div>  SEQ</div><div>    digital.mode (pin, OUTPUT)</div>
<div>    digital.write (pin, HIGH)</div><div>    delay(timeOn)</div><div>    digital.mode (pin, OUTPUT)</div><div>    digital.write(pin, LOW)</div><div>    delay(timeOff)</div><div>:</div><div><br></div><div>PROC main ()</div>
<div>  WHILE TRUE</div><div>    PAR</div><div>      do(13, 1000, 2000)</div><div>      do(12, 2000, 4000)</div><div>      do(11, 700, 1500)</div><div>:</div><br><div class="gmail_quote">On Thu, Aug 30, 2012 at 6:27 PM, Matt Jadud <span dir="ltr">&lt;<a href="mailto:matt@jadud.com" target="_blank">matt@jadud.com</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">On Thu, Aug 30, 2012 at 6:23 PM, Matt Jadud &lt;<a href="mailto:matt@jadud.com">matt@jadud.com</a>&gt; wrote:<br>
&gt; Hi Bryant,<br>
<br>
Two more answers to your question:<br>
<br>
<a href="http://rockalypse.org/courses/cs220f11/guides/introducing-occam-pi/" target="_blank">http://rockalypse.org/courses/cs220f11/guides/introducing-occam-pi/</a><br>
<br>
That page should be migrated to concurrency.cc. I&#39;ll do that someday,<br>
honest. It includes linkes to a wide variety of resources, including<br>
some books (from back in the day) on occam, all of which are (almost<br>
100%) relevant.<br>
<br>
Also, linked from that page:<br>
<br>
<a href="http://www.rockalypse.org/courses/cs220f11/resources/occamdoc/" target="_blank">http://www.rockalypse.org/courses/cs220f11/resources/occamdoc/</a><br>
<br>
That is a (mostly accurate) set of documentation regarding the<br>
plumbing libraries. To turn individual (digital) pins on and off, use<br>
<br>
digital.write(pin, level)<br>
<br>
or, as an example:<br>
<br>
-- Turns on pin 13<br>
SEQ<br>
  digital.mode (13, OUTPUT)<br>
  digital.write (13, HIGH)<br>
<br>
See<br>
<br>
<a href="http://www.rockalypse.org/courses/cs220f11/resources/occamdoc/digital.html" target="_blank">http://www.rockalypse.org/courses/cs220f11/resources/occamdoc/digital.html</a><br>
<br>
for the digital module. If that is wrong in any way, please do let us know.<br>
<br>
Cheers,<br>
Matt<br>
</blockquote></div><br></div></div>