Fork of Library for MAXREFDES72# that supports configuration of shield for different PMOD types and the DS3231 RTC
Fork of ard2pmod by
Diff: ard2pmod.cpp
- Revision:
- 17:294c52822d28
- Parent:
- 15:014ab2d734e0
- Child:
- 18:6d82914432e2
--- a/ard2pmod.cpp Thu Mar 19 21:53:04 2015 +0000 +++ b/ard2pmod.cpp Tue Mar 29 01:22:08 2016 +0000 @@ -1,19 +1,4 @@ /******************************************************************//** -* @file ard2pmod.cpp -* -* @author Justin Jordan -* -* @version 1.0 -* -* Started: 11NOV14 -* -* Updated: -* -* @brief Source file for ard2pmod class -* -*********************************************************************** -* -* @copyright * Copyright (C) 2015 Maxim Integrated Products, Inc., All Rights Reserved. * * Permission is hereby granted, free of charge, to any person obtaining a @@ -49,108 +34,59 @@ #include "ard2pmod.h" -/**************************************************************//** -* Default constructor for Ard2Pmod Class, all mux switches open -* Use with Max14661 member functions for custom mux settings -* -* On Entry: -* -* On Exit: -* @return none -* -* Example: -* @code -* #include "ard2pmod.h" -* -* int main(void) -* { -* Ard2Pmod ard2pmod; -* -* //main app. -* for(;;) -* { -* } -* } -* @endcode -******************************************************************/ -Ard2Pmod::Ard2Pmod() : -Max14661(ARD2PMOD_SDA, ARD2PMOD_SCL, MAX14661_I2C_ADRS0), -Ds3231(ARD2PMOD_SDA, ARD2PMOD_SCL) +//********************************************************************* +Ard2Pmod::Ard2Pmod(): +_mux(D14, D15, Max14661::MAX14661_I2C_ADRS0) { - wrt_cmd_registers(DISABLE_BANK, DISABLE_BANK); + _mux.wrt_cmd_registers(Max14661::DISABLE_BANK, Max14661::DISABLE_BANK); } -/**************************************************************//** -* Constructor for Ard2Pmod Class -* -* On Entry: -* @param[in] pmod_type - desired PMOD interface -* -* On Exit: -* @return none -* -* Example: -* @code -* #include "ard2pmod.h" -* -* int main(void) -* { -* Ard2Pmod ard2pmod(PMOD_TYPE_1_GPIO); -* -* //main app. -* for(;;) -* { -* } -* } -* @endcode -******************************************************************/ -Ard2Pmod::Ard2Pmod(pmod_type_t pmod_type) : -Max14661(ARD2PMOD_SDA, ARD2PMOD_SCL, MAX14661_I2C_ADRS0), -Ds3231(ARD2PMOD_SDA, ARD2PMOD_SCL) +//********************************************************************* +Ard2Pmod::Ard2Pmod(pmod_type_t pmod_type): +_mux(D14, D15, Max14661::MAX14661_I2C_ADRS0) { switch(pmod_type) { case PMOD_TYPE_I2C_A: - set_switches((SW12 | SW09), (SW11 | SW10)); + _mux.set_switches((Max14661::SW12 | Max14661::SW09), (Max14661::SW11 | Max14661::SW10)); break; case PMOD_TYPE_I2C_B: - set_switches((SW09 | SW07), (SW10 | SW08)); + _mux.set_switches((Max14661::SW09 | Max14661::SW07), (Max14661::SW10 | Max14661::SW08)); break; case PMOD_TYPE_I2C_AB: - set_switches((SW12 | SW09 | SW07), (SW11 | SW10 | SW08)); + _mux.set_switches((Max14661::SW12 | Max14661::SW09 | Max14661::SW07), (Max14661::SW11 | Max14661::SW10 | Max14661::SW08)); break; case PMOD_TYPE_1_GPIO: - wrt_cmd_registers(DISABLE_BANK, DISABLE_BANK); + _mux.wrt_cmd_registers(Max14661::DISABLE_BANK, Max14661::DISABLE_BANK); break; case PMOD_TYPE_2_SPI: - wrt_cmd_registers(DISABLE_BANK, DISABLE_BANK); + _mux.wrt_cmd_registers(Max14661::DISABLE_BANK, Max14661::DISABLE_BANK); break; case PMOD_TYPE_3_UART: - set_switches((SW12 | SW01), (SW11 | SW02)); + _mux.set_switches((Max14661::SW12 | Max14661::SW01), (Max14661::SW11 | Max14661::SW02)); break; case PMOD_TYPE_4_UART: - set_switches((SW13 | SW02), (SW12 | SW01)); + _mux.set_switches((Max14661::SW13 | Max14661::SW02), (Max14661::SW12 | Max14661::SW01)); break; case PMOD_TYPE_5_HBRIDGE: - wrt_cmd_registers(DISABLE_BANK, DISABLE_BANK); + _mux.wrt_cmd_registers(Max14661::DISABLE_BANK, Max14661::DISABLE_BANK); break; case PMOD_TYPE_6_HBRIDGE: - wrt_cmd_registers(DISABLE_BANK, DISABLE_BANK); + _mux.wrt_cmd_registers(Max14661::DISABLE_BANK, Max14661::DISABLE_BANK); break; default: - wrt_cmd_registers(DISABLE_BANK, DISABLE_BANK); - } - + _mux.wrt_cmd_registers(Max14661::DISABLE_BANK, Max14661::DISABLE_BANK); + } }