Difference between revisions of "Toggling a TelosB ADC Pin"

From Cyber-Physical Systems Laboratory
Jump to navigationJump to search
Line 24: Line 24:
 
There is a configuration file with a similar name in the same directory as above that provides multiple instances of the above interface, one for each port.  The port corresponds to the port number of the MCU.  Toggling the port consists of calling the following commands:
 
There is a configuration file with a similar name in the same directory as above that provides multiple instances of the above interface, one for each port.  The port corresponds to the port number of the MCU.  Toggling the port consists of calling the following commands:
  
<pre>
+
<blockquote>
HplMsp430GeneralIO.makeOutput()
+
HplMsp430GeneralIO.makeOutput() </ br>
HplMsp430GeneralIO.clr()
+
HplMsp430GeneralIO.clr()</ br>
HplMsp430GeneralIO.set()
+
HplMsp430GeneralIO.set()</ br>
 
HplMsp430GeneralIO.toggle()
 
HplMsp430GeneralIO.toggle()
</pre>
+
</blockquote>
 +
 
 +
Here is an example application that demonstrates how to toggle pins on the TelosB in TinyOS 2.x:  [http://www.cse.wustl.edu/~liang/software/t2/TelosBPinToggleT2.zip Link]

Revision as of 16:02, 22 September 2009

TinyOS 1.x

First do this in StdControl.init():

TOSH_MAKE_ADC3_OUTPUT();

To set the pin high:

TOSH_SET_ADC3_PIN();

To set the pin low:

TOSH_CLR_ADC3_PIN();

You can of course switch the ADC number, and maybe even replace it with GIO#.

TinyOS 2.x

In TinyOS 2.x, pin toggling is controlled via interface tos/chips/msp430/pins/HplMsp430GeneralIO.nc.

There is a configuration file with a similar name in the same directory as above that provides multiple instances of the above interface, one for each port. The port corresponds to the port number of the MCU. Toggling the port consists of calling the following commands:

HplMsp430GeneralIO.makeOutput() </ br> HplMsp430GeneralIO.clr()</ br> HplMsp430GeneralIO.set()</ br> HplMsp430GeneralIO.toggle()

Here is an example application that demonstrates how to toggle pins on the TelosB in TinyOS 2.x: Link