Onboard CDS sensor sample for WIZnet IoT Shield

Committer:
hkjung
Date:
Wed Mar 27 13:33:03 2019 +0000
Revision:
5:97b23e162ced
Parent:
4:5ea8c91f607f
Modified some comments

Who changed what in which revision?

UserRevisionLine numberNew contents of line
hkjung 0:5cd6077e0a8e 1 /* WIZnet IoT Shield Cat.M1 Sample code for Arm MBED
hkjung 0:5cd6077e0a8e 2 * Copyright (c) 2019 WIZnet Co., Ltd.
hkjung 0:5cd6077e0a8e 3 * SPDX-License-Identifier: Apache-2.0
hkjung 0:5cd6077e0a8e 4 */
stkim92 3:c9cd5d11484d 5
stkim92 3:c9cd5d11484d 6 /*
stkim92 3:c9cd5d11484d 7 * Licensed under the Apache License, Version 2.0 (the "License");
stkim92 3:c9cd5d11484d 8 * you may not use this file except in compliance with the License.
stkim92 3:c9cd5d11484d 9 * You may obtain a copy of the License at
stkim92 3:c9cd5d11484d 10 *
stkim92 3:c9cd5d11484d 11 * http://www.apache.org/licenses/LICENSE-2.0
stkim92 3:c9cd5d11484d 12 *
stkim92 3:c9cd5d11484d 13 * Unless required by applicable law or agreed to in writing, software
stkim92 3:c9cd5d11484d 14 * distributed under the License is distributed on an "AS IS" BASIS,
stkim92 3:c9cd5d11484d 15 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
stkim92 3:c9cd5d11484d 16 *
stkim92 3:c9cd5d11484d 17 * See the License for the specific language governing permissions and
stkim92 3:c9cd5d11484d 18 * limitations under the License.
stkim92 3:c9cd5d11484d 19 *
stkim92 3:c9cd5d11484d 20 */
hkjung 0:5cd6077e0a8e 21
hkjung 0:5cd6077e0a8e 22 #include <string>
hkjung 0:5cd6077e0a8e 23 #include "mbed.h"
hkjung 0:5cd6077e0a8e 24
hkjung 0:5cd6077e0a8e 25 #define myprintf(f_, ...) {pc.printf("\r\n[MAIN] "); pc.printf((f_), ##__VA_ARGS__);}
hkjung 0:5cd6077e0a8e 26
hkjung 0:5cd6077e0a8e 27 // Sensors
hkjung 0:5cd6077e0a8e 28 #define MBED_CONF_IOTSHIELD_SENSOR_CDS A0
hkjung 0:5cd6077e0a8e 29 #define MBED_CONF_IOTSHIELD_SENSOR_TEMP A1
stkim92 4:5ea8c91f607f 30 #define LEDPIN D13
hkjung 0:5cd6077e0a8e 31
hkjung 0:5cd6077e0a8e 32 Serial pc(USBTX, USBRX); // USB debug
hkjung 0:5cd6077e0a8e 33
stkim92 4:5ea8c91f607f 34 DigitalOut LED(LEDPIN);
stkim92 4:5ea8c91f607f 35 AnalogIn cdsVal(MBED_CONF_IOTSHIELD_SENSOR_CDS);
hkjung 0:5cd6077e0a8e 36
stkim92 4:5ea8c91f607f 37 float val = 0; // CDS 측정 값 넣을 변수
stkim92 3:c9cd5d11484d 38
hkjung 0:5cd6077e0a8e 39 void serialPcInit(void)
hkjung 0:5cd6077e0a8e 40 {
hkjung 0:5cd6077e0a8e 41 pc.baud(115200);
hkjung 0:5cd6077e0a8e 42 pc.format(8, Serial::None, 1);
hkjung 0:5cd6077e0a8e 43 }
hkjung 0:5cd6077e0a8e 44
hkjung 1:0d7ba45f12b1 45 // ----------------------------------------------------------------
hkjung 1:0d7ba45f12b1 46 // Main routine
hkjung 1:0d7ba45f12b1 47 // ----------------------------------------------------------------
hkjung 1:0d7ba45f12b1 48
hkjung 0:5cd6077e0a8e 49 int main()
hkjung 0:5cd6077e0a8e 50 {
stkim92 3:c9cd5d11484d 51 serialPcInit();
stkim92 3:c9cd5d11484d 52
hkjung 0:5cd6077e0a8e 53 myprintf("System Init Complete\r\n");
stkim92 3:c9cd5d11484d 54
hkjung 0:5cd6077e0a8e 55 myprintf("WIZnet IoT Shield for Arm MBED");
hkjung 0:5cd6077e0a8e 56 myprintf("LTE Cat.M1 Version");
hkjung 0:5cd6077e0a8e 57 myprintf("=================================================");
hkjung 5:97b23e162ced 58 myprintf(">> Sample Code: CDS sensor");
hkjung 0:5cd6077e0a8e 59 myprintf("=================================================\r\n");
stkim92 3:c9cd5d11484d 60
stkim92 3:c9cd5d11484d 61 while(1) {
stkim92 4:5ea8c91f607f 62 val = cdsVal.read_u16()/100;
stkim92 4:5ea8c91f607f 63 //myprintf("Sensor value : %.2f", val);
stkim92 4:5ea8c91f607f 64 wait_ms(50);
stkim92 3:c9cd5d11484d 65
stkim92 4:5ea8c91f607f 66 if(val > 512) { // 조도 저항 값이 낮기 때문에 아날로그 값이 높음
stkim92 4:5ea8c91f607f 67 LED = 0;
stkim92 4:5ea8c91f607f 68 } else { // 손가락으로 가리면 조도 저항값이 높아지기 때문에 아날로그 값이 낮아진다
stkim92 4:5ea8c91f607f 69 LED = 1;
stkim92 4:5ea8c91f607f 70 }
hkjung 2:d7c5df056a3b 71 }
hkjung 0:5cd6077e0a8e 72 }
hkjung 0:5cd6077e0a8e 73
hkjung 1:0d7ba45f12b1 74