A multifunctional and modular Firmware for Multitech's mDot based on ARM mBed provides a widerange of functionality for several Sensors such as MAX44009, BME280, MPU9250, SI1143 and uBlox. It allows you to quickly build a Sensornode that measures specific data with its sensors and sends it via LoRaWAN.

Dependencies:   mDot_LoRa_Sensornode_Flowmeter_impl mbed-rtos mbed

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers SI1143Config.cpp Source File

SI1143Config.cpp

00001 /*
00002  * SI1143Config.cpp
00003  *
00004  *  Created on: 02.06.2016
00005  *      Author: Adrian
00006  */
00007 
00008 #include "SI1143Config.h "
00009 
00010 SI1143Config::SI1143Config() {
00011     // TODO Auto-generated constructor stub
00012 
00013 }
00014 
00015 SI1143Config::~SI1143Config() {
00016     // TODO Auto-generated destructor stub
00017 }
00018 
00019 void SI1143Config::build(SI1143_MODE desiredMode){
00020     switch(desiredMode){
00021     case SI1143_MODE_1:
00022         setLed1Voltage(SI1143_LED_VOLTAGE_50_MV);
00023         break;
00024     case SI1143_MODE_2:
00025         setLed1Voltage(SI1143_LED_VOLTAGE_185_MV);
00026         break;
00027     case SI1143_MODE_3:
00028         setLed1Voltage(SI1143_LED_VOLTAGE_410_MV);
00029         break;
00030     case SI1143_MODE_4:
00031         setLed1Voltage(SI1143_LED_VOLTAGE_410_MV);
00032         setInterruptEnable(SI1143_PS1_IRQ_EN_MASK);
00033         setProximitySensing1Threshold(SI1143_THRESHOLD_1000);
00034         break;
00035 
00036     }
00037 }
00038 
00039 uint8_t SI1143Config::getLed1Voltage(){
00040     return led1Voltage;
00041 }
00042 
00043 uint8_t SI1143Config::getProximitySensing1Threshold(){
00044     return proximitySensing1Threshold;
00045 }
00046 
00047 uint8_t SI1143Config::getInterruptEnable(){
00048     return interruptEnable;
00049 }
00050 
00051 void SI1143Config::setLed1Voltage(uint8_t ledVoltage){
00052     this->led1Voltage = ledVoltage;
00053 }
00054 
00055 void SI1143Config::setInterruptEnable(uint8_t interruptEnable){
00056     this->interruptEnable = interruptEnable;
00057 }
00058 
00059 void SI1143Config::setProximitySensing1Threshold(uint16_t threshold){
00060     this->proximitySensing1Threshold = threshold;
00061 }
00062 
00063 
00064 
00065