Official Sheffield ARMBand micro:bit program

Committer:
MrBedfordVan
Date:
Mon Oct 17 12:41:20 2016 +0000
Revision:
0:b9164b348919
Official Sheffield ARMBand Micro:bit program

Who changed what in which revision?

UserRevisionLine numberNew contents of line
MrBedfordVan 0:b9164b348919 1 /*
MrBedfordVan 0:b9164b348919 2 The MIT License (MIT)
MrBedfordVan 0:b9164b348919 3
MrBedfordVan 0:b9164b348919 4 Copyright (c) 2016 Lancaster University, UK.
MrBedfordVan 0:b9164b348919 5
MrBedfordVan 0:b9164b348919 6 Permission is hereby granted, free of charge, to any person obtaining a
MrBedfordVan 0:b9164b348919 7 copy of this software and associated documentation files (the "Software"),
MrBedfordVan 0:b9164b348919 8 to deal in the Software without restriction, including without limitation
MrBedfordVan 0:b9164b348919 9 the rights to use, copy, modify, merge, publish, distribute, sublicense,
MrBedfordVan 0:b9164b348919 10 and/or sell copies of the Software, and to permit persons to whom the
MrBedfordVan 0:b9164b348919 11 Software is furnished to do so, subject to the following conditions:
MrBedfordVan 0:b9164b348919 12
MrBedfordVan 0:b9164b348919 13 The above copyright notice and this permission notice shall be included in
MrBedfordVan 0:b9164b348919 14 all copies or substantial portions of the Software.
MrBedfordVan 0:b9164b348919 15
MrBedfordVan 0:b9164b348919 16 THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
MrBedfordVan 0:b9164b348919 17 IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
MrBedfordVan 0:b9164b348919 18 FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
MrBedfordVan 0:b9164b348919 19 THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
MrBedfordVan 0:b9164b348919 20 LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
MrBedfordVan 0:b9164b348919 21 FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
MrBedfordVan 0:b9164b348919 22 DEALINGS IN THE SOFTWARE.
MrBedfordVan 0:b9164b348919 23 */
MrBedfordVan 0:b9164b348919 24
MrBedfordVan 0:b9164b348919 25 #include "MicroBitConfig.h"
MrBedfordVan 0:b9164b348919 26 #include "TimedInterruptIn.h"
MrBedfordVan 0:b9164b348919 27 /**
MrBedfordVan 0:b9164b348919 28 * Constructor.
MrBedfordVan 0:b9164b348919 29 *
MrBedfordVan 0:b9164b348919 30 * Create an instance of TimedInterruptIn that has an additional timestamp field.
MrBedfordVan 0:b9164b348919 31 */
MrBedfordVan 0:b9164b348919 32 TimedInterruptIn::TimedInterruptIn(PinName name) : InterruptIn(name)
MrBedfordVan 0:b9164b348919 33 {
MrBedfordVan 0:b9164b348919 34 timestamp = 0;
MrBedfordVan 0:b9164b348919 35 }
MrBedfordVan 0:b9164b348919 36
MrBedfordVan 0:b9164b348919 37 /**
MrBedfordVan 0:b9164b348919 38 * Stores the given timestamp for this instance of TimedInterruptIn.
MrBedfordVan 0:b9164b348919 39 *
MrBedfordVan 0:b9164b348919 40 * @param timestamp the timestamp to retain.
MrBedfordVan 0:b9164b348919 41 */
MrBedfordVan 0:b9164b348919 42 void TimedInterruptIn::setTimestamp(uint64_t timestamp)
MrBedfordVan 0:b9164b348919 43 {
MrBedfordVan 0:b9164b348919 44 this->timestamp = timestamp;
MrBedfordVan 0:b9164b348919 45 }
MrBedfordVan 0:b9164b348919 46
MrBedfordVan 0:b9164b348919 47 /**
MrBedfordVan 0:b9164b348919 48 * Retrieves the retained timestamp for this instance of TimedInterruptIn.
MrBedfordVan 0:b9164b348919 49 *
MrBedfordVan 0:b9164b348919 50 * @return the timestamp held by this instance.
MrBedfordVan 0:b9164b348919 51 */
MrBedfordVan 0:b9164b348919 52 uint64_t TimedInterruptIn::getTimestamp()
MrBedfordVan 0:b9164b348919 53 {
MrBedfordVan 0:b9164b348919 54 return timestamp;
MrBedfordVan 0:b9164b348919 55 }