GY-63_MS5611/libraries/ADG732
2024-04-13 10:35:57 +02:00
..
.github bulk update GitHub actions 2024-04-13 10:35:57 +02:00
examples 0.1.2 ADG732 2024-03-21 20:08:16 +01:00
test 0.1.2 ADG732 2024-03-21 20:08:16 +01:00
.arduino-ci.yml 0.1.0 ADG732 2023-07-25 20:54:26 +02:00
ADG732.h 0.1.2 ADG732 2024-03-21 20:08:16 +01:00
CHANGELOG.md 0.1.2 ADG732 2024-03-21 20:08:16 +01:00
keywords.txt 0.1.0 ADG732 2023-07-25 20:54:26 +02:00
library.json 0.1.2 ADG732 2024-03-21 20:08:16 +01:00
library.properties 0.1.2 ADG732 2024-03-21 20:08:16 +01:00
LICENSE 0.1.2 ADG732 2024-03-21 20:08:16 +01:00
README.md 0.1.2 ADG732 2024-03-21 20:08:16 +01:00

Arduino CI Arduino-lint JSON check GitHub issues

License: MIT GitHub release PlatformIO Registry

ADG732

Arduino library for ADG732 - 32 to 1 channel multiplexer.

Description

Experimental

ADG732 is an Arduino class that controls a 1 x 32 multiplexer over a parallel interface. Only one of the 32 channels can be connected at the same time. The library also support to select none (== 33th state).

On power-up, all switches are in the OFF state == none connected.

This library can be used e.g. to connect 32 analog devices to one analog port, or to select between 32 DHT22 sensors.

No tests with hardware have been done yet, so use with care. Feedback welcome!

Interface

#include "ADG732.h"
  • ADG732(uint8_t A, uint8_t B, uint8_t C, uint8_t D, uint8_t E, uint8_t CS, uint8_t EN, uint8_t WR) constructor.
  • ADG732(uint8_t address[5], uint8_t CS, uint8_t EN, uint8_t WR) constructor.
  • void setChannel(uint8_t channel) set the current channel for both A and B. Valid values for channel are 0..31. Numbers larger than 31 will be "wrapped" modulo 32.
  • uint8_t getChannel() get last set channel A == 0..31 or ADG732_ALLOFF.
  • uint8_t channelCount() returns 32 for ADG732.
  • void allOff() sets all channels to OFF, none selected.

Future

Must

  • improve documentation
  • test with hardware
  • keep in sync with ADG731 (interface)

Should

  • add examples

Could

  • bool setChannel(uint8_t channel) return false if out of range?

Wont

Support

If you appreciate my libraries, you can support the development and maintenance. Improve the quality of the libraries by providing issues and Pull Requests, or donate through PayPal or GitHub sponsors.

Thank you,