TOP Contributors

  1. MIKROE (2784 codes)
  2. Alcides Ramos (385 codes)
  3. Shawon Shahryiar (307 codes)
  4. jm_palomino (118 codes)
  5. Bugz Bensce (97 codes)
  6. S P (73 codes)
  7. dany (71 codes)
  8. MikroBUS.NET Team (35 codes)
  9. NART SCHINACKOW (34 codes)
  10. Armstrong Subero (27 codes)

Most Downloaded

  1. Timer Calculator (139842 times)
  2. FAT32 Library (72209 times)
  3. Network Ethernet Library (57392 times)
  4. USB Device Library (47740 times)
  5. Network WiFi Library (43364 times)
  6. FT800 Library (42700 times)
  7. GSM click (29980 times)
  8. mikroSDK (28440 times)
  9. PID Library (26989 times)
  10. microSD click (26398 times)
Libstock prefers package manager

Package Manager

We strongly encourage users to use Package manager for sharing their code on Libstock website, because it boosts your efficiency and leaves the end user with no room for error. [more info]

< Back
mikroSDK Library

Oximeter click

Rating:

5

Author: MIKROE

Last Updated: 2018-07-20

Package Version: 1.0.0.0

mikroSDK Library: 1.0.0.0

Category: Biometrics

Downloaded: 4643 times

Not followed.

License: MIT license  

Oximeter click is a versatile photometric Click board, perfectly suited for measuring the blood oxygen saturation. It employs ADPD105, a highly configurable photometric front end (AFE) device from Analog Devices.

No Abuse Reported

Do you want to subscribe in order to receive notifications regarding "Oximeter click" changes.

Do you want to unsubscribe in order to stop receiving notifications regarding "Oximeter click" changes.

Do you want to report abuse regarding "Oximeter click".

  • mikroSDK Library 2.0.0.0
  • Comments (0)
DOWNLOAD LINK RELATED COMPILER CONTAINS
mikroBasic PRO for ARM
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroBasic PRO for AVR
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroBasic PRO for dsPIC30/33 & PIC24
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroBasic PRO for FT90x
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroBasic PRO for PIC
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroBasic PRO for PIC32
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroC PRO for ARM
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroC PRO for AVR
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroC PRO for dsPIC30/33 & PIC24
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroC PRO for FT90x
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroC PRO for PIC
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroC PRO for PIC32
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroPascal PRO for ARM
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroPascal PRO for AVR
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroPascal PRO for dsPIC30/33 & PIC24
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroPascal PRO for FT90x
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroPascal PRO for PIC
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc
mikroPascal PRO for PIC32
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc

mikroSDK Library Blog

Oximeter click

Oximeter click

Native view of the Oximeter click board.

View full image
Oximeter click

Oximeter click

Front and back view of the Oximeter click board.

View full image

Library Description

The library can communicate with the device via I2C driver by writing to the registers and by reading from the registers, including data registers. The library has the ability to measure the level of oxygen (O2) in the blood, something like blood pressure. Library also can configure the device to works in two Time Slot Mode independently with different configurations. For more details check the documentation.

Key functions:

  • uint8_t oxim_writeReg( uint8_t register_address, uint16_t transfer_data ) - The function writes 16-bit data to the register.
  • uint8_t oxim_setTimeSlotA( uint8_t enableSlotA, uint8_t enablePhotodiode, uint8_t enableLED, uint8_t setMode ) - The function performs the configuration for Time Slot A and enables the interrupt for this Slot.
  • uint8_t oxim_enableChannels( uint8_t selectChannel ) - The function determines which channel/channels be enabled.
  • void oxim_readData( uint32_t *channResults, uint8_t resultMode ) - Function reads data in the desired mode for determined Slot.

Example description

The application is composed of three sections :

  • System Initialization - Initializes peripherals and pins.
  • Application Initialization - Initializes I2C driver and performs the device configuration which puts Time Slot Ain enabled mode and LEDX2 (IR diode) to the active state. On Oximeter click the photodiode is connected on PD1 input, and because we will observe the Channel 1 in this example (CH1 is enabled). Before the device configuration, the SW reset will be performed and in this way, we will put the registers in the initial state.
  • Application Task - (code snippet) - Gets data when IR diode (LEDX2) is enabled, and after that gets data when LED diode(LEDX1) is enabled. Repeats operation 10 times and then calculates the average value for both results. This results logs on the serial plot as graphic view. Note: For this example you must have the serial plot aplication.The IR diode is internal connected on LEDX2 input, and the LED diode is internal connected on LEDX1 input.The photodiode is internal connected on PD1 input.When we want to perform some register configuration we must first put the device in Program Operating Mode, then we canset the desired register to the desired value, and when we finished, then we can put the device back to the Normal Operating Mode.
void applicationTask()
{
 oxim_plotDisplay();
}

Additional Functions :

  • void oxim_plotDisplay() - Makes the average value of 10 samples when IR diode and LED diode is enabled alternately, and logs results on serial plot as graphic view.
  • void oxim_uartDisplay() - Gets 100 samples of data when IR diode is enabled, and then gets 100 samples of data when LED diode is enabled and after that logs this 100 samples of data for both diode parallel on USB UART as graphic view.
  • void oxim_logsResults() - Gets data which is determined in aplicationinit configuration and logs result on USB UART.

Other mikroE Libraries used in the example:

  • Conversions
  • I2C
  • UART

Additional notes and information

Depending on the development board you are using, you may need USB UART clickUSB UART 2 click or RS232 click to connect to your PC, for development systems with no UART to USB interface available on the board. The terminal available in all MikroElektronika compilers, or any other terminal application of your choice, can be used to read the message.

ALSO FROM THIS AUTHOR

LightRanger 8 Click

0

LightRanger 8 Click is a compact add-on board that contains a ranging sensor with multi-target detection. This board features the VL53L3CX, the latest Time-of-Flight (ToF) product that embeds third-generation FlightSense patented technology from STMicroelectronics.

[Learn More]

Weather click

2

Weather click carries the BME280 integrated environmental unit from Bosch. It’s a sensor that detects humidity, pressure and temperature.Weather click can communicate with the target MCU either through mikroBUS SPI or I2C interfaces. The board is designed to use a 3.3V power supply.

[Learn More]

Expand 4 Click

0

Expand 4 Click carries TPCIC6A595, a chip that combines an 8-bit serial-in, parallel-out shift register with an 8-bit D-type storage register.

[Learn More]