[Tinyos-beta-commits]
CVS: tinyos-1.x/beta/teps/txt tep101.txt, 1.1, 1.2
Jan-Hinrich Hauer
janhauer at users.sourceforge.net
Mon Jan 10 03:46:16 PST 2005
Update of /cvsroot/tinyos/tinyos-1.x/beta/teps/txt
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv30669/beta/teps/txt
Modified Files:
tep101.txt
Log Message:
Interfaces renamed, implementation section extended, typos fixed.
Index: tep101.txt
===================================================================
RCS file: /cvsroot/tinyos/tinyos-1.x/beta/teps/txt/tep101.txt,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -d -r1.1 -r1.2
*** tep101.txt 4 Jan 2005 17:11:30 -0000 1.1
--- tep101.txt 10 Jan 2005 11:46:14 -0000 1.2
***************
*** 112,116 ****
consideration. Although the particular implementation will vary
according to chip and platform, each HIL (`Hardware Interface Layer
! (HIL)`_) will export the standard *ADCHILSingle* and *ADCHILMultiple*
interface, providing a uniform application-level OS service. External
ADCs will influence the HIL interfaces and the layering in the
--- 112,116 ----
consideration. Although the particular implementation will vary
according to chip and platform, each HIL (`Hardware Interface Layer
! (HIL)`_) will export the standard *ADCSingle* and *ADCMultiple*
interface, providing a uniform application-level OS service. External
ADCs will influence the HIL interfaces and the layering in the
***************
*** 206,210 ****
interface MSP430ADC12Single
{
! command result_t bind(MSP430ADC12Settings_ut settings);
async command msp430ADCresult_t getData();
async command msp430ADCresult_t getDataRepeat(uint16_t jiffies);
--- 206,210 ----
interface MSP430ADC12Single
{
! command result_t bind(MSP430ADC12Settings_t settings);
async command msp430ADCresult_t getData();
async command msp430ADCresult_t getDataRepeat(uint16_t jiffies);
***************
*** 217,221 ****
interface MSP430ADC12Multiple
{
! command result_t bind( MSP430ADC12Settings_ut settings);
async command msp430ADCresult_t getData(uint16_t *buf, uint16_t length,
uint16_t jiffies);
--- 217,221 ----
interface MSP430ADC12Multiple
{
! command result_t bind( MSP430ADC12Settings_t settings);
async command msp430ADCresult_t getData(uint16_t *buf, uint16_t length,
uint16_t jiffies);
***************
*** 231,235 ****
{
unsigned int refVolt2_5: 1; // reference voltage level
! unsigned int clockSourceSHT: 2 // clock source sample-hold-time
unsigned int clockSourceSAMPCON: 2; // clock source sampcon signal
unsigned int clockDivSAMPCON: 2; // clock divider sampcon
--- 231,235 ----
{
unsigned int refVolt2_5: 1; // reference voltage level
! unsigned int clockSourceSHT: 2; // clock source sample-hold-time
unsigned int clockSourceSAMPCON: 2; // clock source sampcon signal
unsigned int clockDivSAMPCON: 2; // clock divider sampcon
***************
*** 298,314 ****
The current practice of having wrappers represent sensors is
maintained: A wrapper configuration will provide a *StdControl*, the
! *ADCHILSingle* and the *ADCHILMultiple* interface. A wrapper thus
represents the HIL in the ADC's hardware abstraction, i.e. it sits on
top of the native HAL component. Its task is to bind to HAL with the
appropriate settings (typically done in StdControl.init) and to
forward commands, possibly adding slight changes to translate them to
! the HAL interface. Since an HAL interface is designed with the
! HIL interfaces in mind wrappers will typically be fairly
! lightweight. An example configuration for a temperature sensor wrapper
! on the msp430 platform would look like this::
StdControl
! | ADCHILSingle
! | | ADCHILMultiple
| | |
+------|----|----|------------------------------------------+
--- 298,314 ----
The current practice of having wrappers represent sensors is
maintained: A wrapper configuration will provide a *StdControl*, the
! *ADCSingle* and the *ADCMultiple* interface. A wrapper thus
represents the HIL in the ADC's hardware abstraction, i.e. it sits on
top of the native HAL component. Its task is to bind to HAL with the
appropriate settings (typically done in StdControl.init) and to
forward commands, possibly adding slight changes to translate them to
! the HAL interface. Since an HAL interface is designed with the HIL
! interfaces in mind wrappers will typically be fairly lightweight. An
! example configuration for a temperature sensor wrapper on the msp430
! platform would look like this::
StdControl
! | ADCSingle
! | | ADCMultiple
| | |
+------|----|----|------------------------------------------+
***************
*** 322,335 ****
+-----------------------------------------------------------+
! On the level of HIL two interfaces MUST be provided: ADCHILSingle and
! ADCHILMultiple. ADCHILSingle is used for single conversions (once or
! repeated) and ADCHILMultiple is used for multiple conversions (once or
repeated).
Both interfaces must take into account that some (e.g. external ADCs)
may face errors during the sampling process which can lead to invalid
! results. Therefore events in the ADCHILSingle and ADCHILMultiple
! interfaces not only return the conversion result(s) but also
! additional error information contained in a new datatype adcresult_t.
The returned conversion results are uninterpreted 16-bit values. Note
--- 322,335 ----
+-----------------------------------------------------------+
! On the level of HIL two interfaces MUST be provided: ADCSingle and
! ADCMultiple. ADCSingle is used for single conversions (once or
! repeated) and ADCMultiple is used for multiple conversions (once or
repeated).
Both interfaces must take into account that some (e.g. external ADCs)
may face errors during the sampling process which can lead to invalid
! results. Therefore events in the ADCSingle and ADCMultiple interfaces
! not only return the conversion result(s) but also additional error
! information contained in a new datatype adcresult_t.
The returned conversion results are uninterpreted 16-bit values. Note
***************
*** 341,345 ****
`3. Implementation`_ for where to find the commented version).::
! interface ADCHILSingle
{
async command adcresult_t getData();
--- 341,345 ----
`3. Implementation`_ for where to find the commented version).::
! interface ADCSingle
{
async command adcresult_t getData();
***************
*** 351,355 ****
}
! interface ADCHILMultiple
{
async command adcresult_t getData(uint16_t *buf, uint16_t length);
--- 351,355 ----
}
! interface ADCMultiple
{
async command adcresult_t getData(uint16_t *buf, uint16_t length);
***************
*** 365,375 ****
====================================================================
! The ADCHILSingle and ADCHILMultiple interfaces and ADCHIL.h
! (containing the definition of adcresult_t) can be found in
! tos/interfaces. Interfaces relating to msp430 are in
! tos/platform/msp430. The HAL implementation of the msp430 as well as
! wrappers (HIL) for internal temperature and internal voltage of the
! msp430 can also be found in tos/platform/msp430.
!
4. Author's Address
--- 365,375 ----
====================================================================
! The ADCSingle and ADCMultiple interfaces and ADCHIL.h (containing the
! definition of adcresult_t) can be found in tos/interfaces. Interfaces
! relating to msp430 are in tos/platform/msp430. The HAL implementation
! of the msp430 as well as wrappers (HIL) for internal temperature and
! internal voltage of the msp430 can also be found in
! tos/platform/msp430. A test application for the msp430 platform is
! tinyos-1.x/contrib/eyes/apps/TestADC.
4. Author's Address
More information about the Tinyos-beta-commits
mailing list