大季 矢花 / Mbed 2 deprecated MB2019_main_11_15_ok

Dependencies:   mbed

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers Switch.cpp Source File

Switch.cpp

00001 #include "Switch.h"
00002 
00003 #include <stdint.h>
00004 #include "mbed.h"
00005 
00006 namespace SWITCH {
00007     DigitalIn dipSw[] = {
00008         DigitalIn(DIP0_PIN),
00009         DigitalIn(DIP1_PIN),
00010         DigitalIn(DIP2_PIN),
00011         DigitalIn(DIP3_PIN),
00012     };
00013     
00014     DigitalIn digitalIn[INPUT_NUM] = {
00015         DigitalIn(INPUT0_PIN),
00016         DigitalIn(INPUT1_PIN),
00017         DigitalIn(INPUT2_PIN),
00018         DigitalIn(INPUT3_PIN),
00019         DigitalIn(INPUT4_PIN),
00020         DigitalIn(INPUT5_PIN),
00021         DigitalIn(INPUT6_PIN),
00022         DigitalIn(INPUT7_PIN),
00023         DigitalIn(INPUT8_PIN),
00024         DigitalIn(INPUT9_PIN),
00025         DigitalIn(INPUT10_PIN),
00026         DigitalIn(INPUT11_PIN),
00027         DigitalIn(INPUT12_PIN),
00028         DigitalIn(INPUT13_PIN),
00029         DigitalIn(INPUT14_PIN),
00030         DigitalIn(INPUT15_PIN),
00031         DigitalIn(INPUT16_PIN),
00032         DigitalIn(INPUT17_PIN),
00033         DigitalIn(INPUT18_PIN),
00034         DigitalIn(INPUT19_PIN),
00035     };
00036 
00037     void DipSw::Initialize() {
00038         for(uint8_t i=0; i < sizeof(dipSw)/sizeof(dipSw[0]); i++) {
00039             dipSw[i].mode(PullUp);
00040         }
00041     }
00042 
00043     uint8_t DipSw::GetStatus() {
00044         if(DIP0 == SW_ON)       return 0;
00045         else if(DIP1 == SW_ON)  return 1;
00046         else if(DIP2 == SW_ON)  return 2;
00047         else if(DIP3 == SW_ON)  return 3;
00048 
00049         return 0;
00050     }
00051 
00052     void LimitSw::Initialize() {
00053         for(uint8_t i = 0; i < INPUT_NUM; i++) {
00054             digitalIn[i].mode(PullUp);
00055         }
00056     }
00057 
00058     bool LimitSw::IsPressed(uint8_t index) {
00059         return digitalIn[index] ? false : true;
00060     }
00061 }