[Tinyos-contrib-commits]
CVS: tinyos-1.x/contrib/handhelds/tos/interfaces
Leds.nc, NONE, 1.1 SD.h, NONE, 1.1 SD.nc, NONE, 1.1 DMA.h, 1.1,
1.2 DMA.nc, 1.1, 1.2 ParamView.h, 1.1, 1.2
steve ayer
ayer1 at users.sourceforge.net
Thu Aug 3 12:16:52 PDT 2006
- Previous message: [Tinyos-contrib-commits]
CVS: tinyos-1.x/contrib/handhelds/tos/lib/UIP
ParamViewM.nc, 1.1, 1.2 WiredIPClientM.nc, 1.1, 1.2
- Next message: [Tinyos-contrib-commits]
CVS: tinyos-1.x/contrib/handhelds/tos/platform/shimmer
BlueRadioC.nc, NONE, 1.1 CC2420LowLevelC.nc, NONE,
1.1 HPLUARTC.nc, NONE, 1.1 LedsC.nc, NONE, 1.1 SDC.nc, NONE,
1.1 hardware.h, NONE, 1.1
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
Update of /cvsroot/tinyos/tinyos-1.x/contrib/handhelds/tos/interfaces
In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv16969/tos/interfaces
Modified Files:
DMA.h DMA.nc ParamView.h
Added Files:
Leds.nc SD.h SD.nc
Log Message:
added shimmer platform, including programming mods to bsl.py
interface and lib updates to DMA->ADC machinery, test code
added SD lib module, test code
updates telos_ap.c/Makefile to handle old (pre-2.6.15) and new kernel ip api
commented out interrupt flag clearing in setmodespi in hplusart[0-1]m.nc, because this breaks some spi comm initializations
added telosb platform to handle interface skew between new (shimmer) and old (telosb) platforms
--- NEW FILE: Leds.nc ---
// $Id: Leds.nc,v 1.1 2006/08/03 19:16:49 ayer1 Exp $
/* tab:4
* "Copyright (c) 2000-2003 The Regents of the University of California.
* All rights reserved.
*
* Permission to use, copy, modify, and distribute this software and its
* documentation for any purpose, without fee, and without written agreement is
* hereby granted, provided that the above copyright notice, the following
* two paragraphs and the author appear in all copies of this software.
*
* IN NO EVENT SHALL THE UNIVERSITY OF CALIFORNIA BE LIABLE TO ANY PARTY FOR
* DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING OUT
* OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF THE UNIVERSITY OF
* CALIFORNIA HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
* THE UNIVERSITY OF CALIFORNIA SPECIFICALLY DISCLAIMS ANY WARRANTIES,
* INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
* AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS
* ON AN "AS IS" BASIS, AND THE UNIVERSITY OF CALIFORNIA HAS NO OBLIGATION TO
* PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS."
*
* Copyright (c) 2002-2003 Intel Corporation
* All rights reserved.
*
* This file is distributed under the terms in the attached INTEL-LICENSE
* file. If you do not find these files, copies can be found by writing to
* Intel Research Berkeley, 2150 Shattuck Avenue, Suite 1300, Berkeley, CA,
* 94704. Attention: Intel License Inquiry.
*/
/*
* Authors: Jason Hill, David Gay, Philip Levis
* Date last modified: 6/1/03
*
*
*/
/**
* Abstraction of the LEDs.
*
* @author Jason Hill
* @author David Gay
* @author Philip Levis
*/
interface Leds {
/**
* Initialize the LEDs; among other things, initialization turns
* them all off.
*
* @return SUCCESS always.
*
*/
async command result_t init();
/**
* Turn the red LED on.
*
* @return SUCCESS always.
*
*/
async command result_t redOn();
/**
* Turn the red LED off.
*
* @return SUCCESS always.
*
*/
async command result_t redOff();
/**
* Toggle the red LED. If it was on, turn it off. If it was off,
* turn it on.
*
* @return SUCCESS always.
*
*/
async command result_t redToggle();
/**
* Turn the green LED on.
*
* @return SUCCESS always.
*
*/
async command result_t greenOn();
/**
* Turn the green LED off.
*
* @return SUCCESS always.
*
*/
async command result_t greenOff();
/**
* Toggle the green LED. If it was on, turn it off. If it was off,
* turn it on.
*
* @return SUCCESS always.
*
*/
async command result_t greenToggle();
/**
* Turn the yellow LED on.
*
* @return SUCCESS always.
*
*/
async command result_t yellowOn();
/**
* Turn the yellow LED off.
*
* @return SUCCESS always.
*
*/
async command result_t yellowOff();
/**
* Toggle the yellow LED. If it was on, turn it off. If it was off,
* turn it on.
*
* @return SUCCESS always.
*
*/
async command result_t yellowToggle();
/**
* Turn the orange LED on.
*
* @return SUCCESS always.
*
*/
async command result_t orangeOn();
/**
* Turn the orange LED off.
*
* @return SUCCESS always.
*
*/
async command result_t orangeOff();
/**
* Toggle the orange LED. If it was on, turn it off. If it was off,
* turn it on.
*
* @return SUCCESS always.
*
*/
async command result_t orangeToggle();
/**
* Get current Leds information
*
* @return A uint8_t typed value representing Leds status
*
*/
async command uint8_t get();
/**
* Set Leds to a specified value
*
* @param value ranging from 0 to 7 inclusive
*
* @return SUCCESS Always
*
*/
async command result_t set(uint8_t value);
}
--- NEW FILE: SD.h ---
/* ***********************************************************
* THIS PROGRAM IS PROVIDED "AS IS". TI MAKES NO WARRANTIES OR
* REPRESENTATIONS, EITHER EXPRESS, IMPLIED OR STATUTORY,
* INCLUDING ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
* FOR A PARTICULAR PURPOSE, LACK OF VIRUSES, ACCURACY OR
* COMPLETENESS OF RESPONSES, RESULTS AND LACK OF NEGLIGENCE.
* TI DISCLAIMS ANY WARRANTY OF TITLE, QUIET ENJOYMENT, QUIET
* POSSESSION, AND NON-INFRINGEMENT OF ANY THIRD PARTY
* INTELLECTUAL PROPERTY RIGHTS WITH REGARD TO THE PROGRAM OR
* YOUR USE OF THE PROGRAM.
*
* IN NO EVENT SHALL TI BE LIABLE FOR ANY SPECIAL, INCIDENTAL,
* CONSEQUENTIAL OR INDIRECT DAMAGES, HOWEVER CAUSED, ON ANY
* THEORY OF LIABILITY AND WHETHER OR NOT TI HAS BEEN ADVISED
* OF THE POSSIBILITY OF SUCH DAMAGES, ARISING IN ANY WAY OUT
* OF THIS AGREEMENT, THE PROGRAM, OR YOUR USE OF THE PROGRAM.
* EXCLUDED DAMAGES INCLUDE, BUT ARE NOT LIMITED TO, COST OF
* REMOVAL OR REINSTALLATION, COMPUTER TIME, LABOR COSTS, LOSS
* OF GOODWILL, LOSS OF PROFITS, LOSS OF SAVINGS, OR LOSS OF
* USE OR INTERRUPTION OF BUSINESS. IN NO EVENT WILL TI'S
* AGGREGATE LIABILITY UNDER THIS AGREEMENT OR ARISING OUT OF
* YOUR USE OF THE PROGRAM EXCEED FIVE HUNDRED DOLLARS
* (U.S.$500).
*
* Unless otherwise stated, the Program written and copyrighted
* by Texas Instruments is distributed as "freeware". You may,
* only under TI's copyright in the Program, use and modify the
* Program without any charge or restriction. You may
* distribute to third parties, provided that you transfer a
* copy of this license to the third party and the third party
* agrees to these terms by its first use of the Program. You
* must reproduce the copyright notice and any other legend of
* ownership on each copy or partial copy, of the Program.
*
* You acknowledge and agree that the Program contains
* copyrighted material, trade secrets and other TI proprietary
* information and is protected by copyright laws,
* international copyright treaties, and trade secret laws, as
* well as other intellectual property laws. To protect TI's
* rights in the Program, you agree not to decompile, reverse
* engineer, disassemble or otherwise translate any object code
* versions of the Program to a human-readable form. You agree
* that in no event will you alter, remove or destroy any
* copyright notice included in the Program. TI reserves all
* rights not specifically granted under this license. Except
* as specifically provided herein, nothing in this agreement
* shall be construed as conferring by implication, estoppel,
* or otherwise, upon you, any license or other right under any
* TI patents, copyrights or trade secrets.
*
* You may not use the Program in non-TI devices.
* ********************************************************* */
/*
* Copyright (c) 2006, Intel Corporation
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* Neither the name of the Intel Corporation nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
* POSSIBILITY OF SUCH DAMAGE.
*
* copied and edited from Texas Instruments sample code
*
* Authors: Steve Ayer
* May 2006
*/
#define MMC_START_DATA_BLOCK_TOKEN 0xfe // Data token start byte, Start Single Block Read
#define MMC_R1_RESPONSE 0x00
#define MMC_SUCCESS 0x00
#define MMC_BLOCK_SET_ERROR 0x01
#define MMC_RESPONSE_ERROR 0x02
#define MMC_DATA_TOKEN_ERROR 0x03
#define MMC_INIT_ERROR 0x04
#define MMC_CRC_ERROR 0x10
#define MMC_WRITE_ERROR 0x11
#define MMC_OTHER_ERROR 0x12
#define MMC_TIMEOUT_ERROR 0xFF
#define MMC_GO_IDLE_STATE 0x40 //CMD0
#define MMC_SEND_OP_COND 0x41 //CMD1
#define MMC_READ_CSD 0x49 //CMD9
#define MMC_SEND_CID 0x4a //CMD10
#define MMC_STOP_TRANSMISSION 0x4c //CMD12
#define MMC_SEND_STATUS 0x4d //CMD13
#define MMC_SET_BLOCKLEN 0x50 //CMD16 Set block length for next read/write
#define MMC_READ_SINGLE_BLOCK 0x51 //CMD17 Read block from memory
#define MMC_READ_MULTIPLE_BLOCK 0x52 //CMD18
#define MMC_CMD_WRITEBLOCK 0x54 //CMD20 Write block to memory
#define MMC_WRITE_BLOCK 0x58 //CMD24
#define MMC_WRITE_MULTIPLE_BLOCK 0x59 //CMD25
#define MMC_WRITE_CSD 0x5b //CMD27 PROGRAM_CSD
#define MMC_SET_WRITE_PROT 0x5c //CMD28
#define MMC_CLR_WRITE_PROT 0x5d //CMD29
#define MMC_SEND_WRITE_PROT 0x5e //CMD30
#define MMC_TAG_SECTOR_START 0x60 //CMD32
#define MMC_TAG_SECTOR_END 0x61 //CMD33
#define MMC_UNTAG_SECTOR 0x62 //CMD34
#define MMC_TAG_EREASE_GROUP_START 0x63 //CMD35
#define MMC_TAG_EREASE_GROUP_END 0x64 //CMD36
#define MMC_UNTAG_EREASE_GROUP 0x65 //CMD37
#define MMC_EREASE 0x66 //CMD38
#define MMC_READ_OCR 0x67 //CMD39
#define MMC_CRC_ON_OFF 0x68 //CMD40
--- NEW FILE: SD.nc ---
/*
* Copyright (c) 2006, Intel Corporation
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* Neither the name of the Intel Corporation nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
* POSSIBILITY OF SUCH DAMAGE.
*
* Interface for communciating with an SD card via a standard sd card slot.
*
* Authors: Steve Ayer
* May 2006
*/
includes SD;
interface SD {
command result_t init ();
command result_t setIdle();
// we don't have pin for this one yet; it uses cd
// command result_t detect();
// change block length to 2^len bytes; default is 512
command result_t setBlockLength (const uint16_t len);
// see macro in module for writing to a sector instead of an address
// read a block of size count from address
command result_t readBlock(const uint32_t address, const uint16_t count, uint8_t * buffer);
command result_t readSector(uint32_t sector, uint8_t * pBuffer);
// see macro in module for writing to a sector instead of an address
command result_t writeBlock (const uint32_t address, const uint16_t count, uint8_t * buffer);
command result_t writeSector(uint32_t sector, uint8_t * pBuffer);
// register read of length len into buffer
command result_t readRegister(const uint8_t register, const uint8_t len, uint8_t * buffer);
// Read the Card Size from the CSD Register
// unsupported on sdio only cards
command uint16_t readCardSize();
}
Index: DMA.h
===================================================================
RCS file: /cvsroot/tinyos/tinyos-1.x/contrib/handhelds/tos/interfaces/DMA.h,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -d -r1.1 -r1.2
*** DMA.h 29 Jul 2005 18:29:25 -0000 1.1
--- DMA.h 3 Aug 2006 19:16:49 -0000 1.2
***************
*** 34,46 ****
*/
- //includes dma;
-
- typedef struct {
- uint16_t *dma_N_ctl;
- uint16_t *dma_N_sa;
- uint16_t *dma_N_da;
- uint16_t *dma_N_sz;
- } DMA_Regs;
-
enum addressIncrement{
ADDR_FIXED,
--- 34,37 ----
Index: DMA.nc
===================================================================
RCS file: /cvsroot/tinyos/tinyos-1.x/contrib/handhelds/tos/interfaces/DMA.nc,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -d -r1.1 -r1.2
*** DMA.nc 29 Jul 2005 18:29:25 -0000 1.1
--- DMA.nc 3 Aug 2006 19:16:49 -0000 1.2
***************
*** 34,62 ****
*/
- includes DMA;
-
interface DMA {
! command void setSourceAddress(uint16_t src);
! command void setDestinationAddress(uint16_t dest);
! command void setBlockSize(uint16_t size);
! command void setDMATrigger(uint16_t trigger);
! command void setTransferMode(uint16_t mode);
! command void setChannelPriority(bool roundrobin);
! command void setDestinationAddressIncrement(enum addressIncrement ai);
! command void setSourceAddressIncrement(enum addressIncrement ai);
! command void setSourceByteSize(bool byteSize);
! command void setDestinationByteSize(bool byteSize);
! async default event void transferComplete();
! async default event void ADCInterrupt();
}
--- 34,73 ----
*/
interface DMA {
! command void init();
! command void beginTransfer();
!
! command void stopTransfer();
!
! command void setSourceAddress(uint16_t src);
!
! command void setDestinationAddress(uint16_t dest);
! command void setBlockSize(uint16_t size);
! command void setTransferMode(uint16_t mode);
! command void setChannelPriority(bool roundrobin);
! command void setDestinationAddressIncrement(enum addressIncrement ai);
! command void setSourceAddressIncrement(enum addressIncrement ai);
!
! command void setSourceByteSize(bool byteSize);
! command void setDestinationByteSize(bool byteSize);
!
! command void ADCinit();
! command void ADCbeginConversion();
! command void ADCstopConversion();
!
! command void ADCsetMemRegisterInputChannel(uint8_t reg_num, uint8_t ch);
! async default event void transferComplete();
!
! async default event void ADCInterrupt();
}
Index: ParamView.h
===================================================================
RCS file: /cvsroot/tinyos/tinyos-1.x/contrib/handhelds/tos/interfaces/ParamView.h,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -d -r1.1 -r1.2
*** ParamView.h 29 Jul 2005 18:29:25 -0000 1.1
--- ParamView.h 3 Aug 2006 19:16:49 -0000 1.2
***************
*** 43,47 ****
PARAM_TYPE_INT16 = 0x0006,
PARAM_TYPE_HEX8 = 0x0007,
! PARAM_TYPE_HEX16 = 0x0008
};
--- 43,47 ----
PARAM_TYPE_INT16 = 0x0006,
PARAM_TYPE_HEX8 = 0x0007,
! PARAM_TYPE_HEX16 = 0x0008,
};
- Previous message: [Tinyos-contrib-commits]
CVS: tinyos-1.x/contrib/handhelds/tos/lib/UIP
ParamViewM.nc, 1.1, 1.2 WiredIPClientM.nc, 1.1, 1.2
- Next message: [Tinyos-contrib-commits]
CVS: tinyos-1.x/contrib/handhelds/tos/platform/shimmer
BlueRadioC.nc, NONE, 1.1 CC2420LowLevelC.nc, NONE,
1.1 HPLUARTC.nc, NONE, 1.1 LedsC.nc, NONE, 1.1 SDC.nc, NONE,
1.1 hardware.h, NONE, 1.1
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
More information about the Tinyos-contrib-commits
mailing list