Production Test Program (PTP) for the LPC4088 Experiment Base Board

Dependencies:   EALib I2S LM75B SDFileSystem mbed

Committer:
embeddedartists
Date:
Wed Oct 01 11:16:38 2014 +0000
Revision:
9:eb6086159020
Parent:
2:2f4b7535ceb3
Updated used libraries

Who changed what in which revision?

UserRevisionLine numberNew contents of line
embeddedartists 2:2f4b7535ceb3 1 /*
embeddedartists 2:2f4b7535ceb3 2 * Copyright 2013 Embedded Artists AB
embeddedartists 2:2f4b7535ceb3 3 *
embeddedartists 2:2f4b7535ceb3 4 * Licensed under the Apache License, Version 2.0 (the "License");
embeddedartists 2:2f4b7535ceb3 5 * you may not use this file except in compliance with the License.
embeddedartists 2:2f4b7535ceb3 6 * You may obtain a copy of the License at
embeddedartists 2:2f4b7535ceb3 7 *
embeddedartists 2:2f4b7535ceb3 8 * http://www.apache.org/licenses/LICENSE-2.0
embeddedartists 2:2f4b7535ceb3 9 *
embeddedartists 2:2f4b7535ceb3 10 * Unless required by applicable law or agreed to in writing, software
embeddedartists 2:2f4b7535ceb3 11 * distributed under the License is distributed on an "AS IS" BASIS,
embeddedartists 2:2f4b7535ceb3 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
embeddedartists 2:2f4b7535ceb3 13 * See the License for the specific language governing permissions and
embeddedartists 2:2f4b7535ceb3 14 * limitations under the License.
embeddedartists 2:2f4b7535ceb3 15 */
embeddedartists 2:2f4b7535ceb3 16
embeddedartists 2:2f4b7535ceb3 17 /******************************************************************************
embeddedartists 2:2f4b7535ceb3 18 * Includes
embeddedartists 2:2f4b7535ceb3 19 *****************************************************************************/
embeddedartists 2:2f4b7535ceb3 20
embeddedartists 2:2f4b7535ceb3 21 #include "mbed.h"
embeddedartists 2:2f4b7535ceb3 22 #include "TestTrimpot.h"
embeddedartists 2:2f4b7535ceb3 23
embeddedartists 2:2f4b7535ceb3 24 /******************************************************************************
embeddedartists 2:2f4b7535ceb3 25 * Defines and typedefs
embeddedartists 2:2f4b7535ceb3 26 *****************************************************************************/
embeddedartists 2:2f4b7535ceb3 27
embeddedartists 2:2f4b7535ceb3 28 #define MIN_VALUE (0.010f)
embeddedartists 2:2f4b7535ceb3 29 #define MAX_VALUE (0.990f)
embeddedartists 2:2f4b7535ceb3 30
embeddedartists 2:2f4b7535ceb3 31 /******************************************************************************
embeddedartists 2:2f4b7535ceb3 32 * Public Functions
embeddedartists 2:2f4b7535ceb3 33 *****************************************************************************/
embeddedartists 2:2f4b7535ceb3 34
embeddedartists 2:2f4b7535ceb3 35 bool TestTrimpot::runTest() {
embeddedartists 2:2f4b7535ceb3 36 AnalogIn trimpot(p15);
embeddedartists 2:2f4b7535ceb3 37 bool min = false;
embeddedartists 2:2f4b7535ceb3 38 bool max = false;
embeddedartists 2:2f4b7535ceb3 39
embeddedartists 2:2f4b7535ceb3 40 printf("Reading trimpot for 5 seconds...\n");
embeddedartists 2:2f4b7535ceb3 41
embeddedartists 2:2f4b7535ceb3 42 // Reads the analog value of the right trimpot every 100ms for
embeddedartists 2:2f4b7535ceb3 43 // up to five seconds or until both end limit have been reached.
embeddedartists 2:2f4b7535ceb3 44 for (int i = 0; i < 50; i++) {
embeddedartists 2:2f4b7535ceb3 45 float f = trimpot.read();
embeddedartists 2:2f4b7535ceb3 46 printf("Trimpot = %.3f\n", f);
embeddedartists 2:2f4b7535ceb3 47 if (f < MIN_VALUE) {
embeddedartists 2:2f4b7535ceb3 48 min = true;
embeddedartists 2:2f4b7535ceb3 49 } else if (f > MAX_VALUE) {
embeddedartists 2:2f4b7535ceb3 50 max = true;
embeddedartists 2:2f4b7535ceb3 51 }
embeddedartists 2:2f4b7535ceb3 52 if (min && max) {
embeddedartists 2:2f4b7535ceb3 53 printf("Test passed\n");
embeddedartists 2:2f4b7535ceb3 54 return true;
embeddedartists 2:2f4b7535ceb3 55 }
embeddedartists 2:2f4b7535ceb3 56
embeddedartists 2:2f4b7535ceb3 57 wait(0.1);
embeddedartists 2:2f4b7535ceb3 58 }
embeddedartists 2:2f4b7535ceb3 59 printf("Trimpot does not reach limits (%.3f - %.3f)!\n", MIN_VALUE, MAX_VALUE);
embeddedartists 2:2f4b7535ceb3 60 return false;
embeddedartists 2:2f4b7535ceb3 61 }
embeddedartists 2:2f4b7535ceb3 62
embeddedartists 2:2f4b7535ceb3 63