Browse Source

The new Pins include SCL0/SDA0 pins

Added the two new possible pins for I2C0
main
Kurt Eckhardt 8 years ago
parent
commit
68fa9ddac3
1 changed files with 16 additions and 0 deletions
  1. +16
    -0
      Wire.cpp

+ 16
- 0
Wire.cpp View File

@@ -74,6 +74,8 @@ void TwoWire::begin(void)
CORE_PIN34_CONFIG = PORT_PCR_MUX(5)|PORT_PCR_ODE|PORT_PCR_SRE|PORT_PCR_DSE;
} else if (sda_pin_num == 8) {
CORE_PIN8_CONFIG = PORT_PCR_MUX(7)|PORT_PCR_ODE|PORT_PCR_SRE|PORT_PCR_DSE;
} else if (sda_pin_num == 48) {
CORE_PIN48_CONFIG = PORT_PCR_MUX(2)|PORT_PCR_ODE|PORT_PCR_SRE|PORT_PCR_DSE;
#endif
}
if (scl_pin_num == 19) {
@@ -85,6 +87,8 @@ void TwoWire::begin(void)
CORE_PIN33_CONFIG = PORT_PCR_MUX(5)|PORT_PCR_ODE|PORT_PCR_SRE|PORT_PCR_DSE;
} else if (scl_pin_num == 7) {
CORE_PIN7_CONFIG = PORT_PCR_MUX(7)|PORT_PCR_ODE|PORT_PCR_SRE|PORT_PCR_DSE;
} else if (scl_pin_num == 47) {
CORE_PIN47_CONFIG = PORT_PCR_MUX(2)|PORT_PCR_ODE|PORT_PCR_SRE|PORT_PCR_DSE;
#endif
}
setClock(100000);
@@ -268,6 +272,8 @@ void TwoWire::setSDA(uint8_t pin)
CORE_PIN34_CONFIG = 0;
} else if (sda_pin_num == 8) {
CORE_PIN8_CONFIG = 0;
} else if (sda_pin_num == 48) {
CORE_PIN48_CONFIG = 0;
#endif
}

@@ -280,6 +286,8 @@ void TwoWire::setSDA(uint8_t pin)
CORE_PIN34_CONFIG = PORT_PCR_MUX(5)|PORT_PCR_ODE|PORT_PCR_SRE|PORT_PCR_DSE;
} else if (pin == 8) {
CORE_PIN8_CONFIG = PORT_PCR_MUX(7)|PORT_PCR_ODE|PORT_PCR_SRE|PORT_PCR_DSE;
} else if (pin == 48) {
CORE_PIN48_CONFIG = PORT_PCR_MUX(2)|PORT_PCR_ODE|PORT_PCR_SRE|PORT_PCR_DSE;
#endif
}
}
@@ -299,6 +307,8 @@ void TwoWire::setSCL(uint8_t pin)
CORE_PIN33_CONFIG = 0;
} else if (scl_pin_num == 7) {
CORE_PIN7_CONFIG = 0;
} else if (scl_pin_num == 47) {
CORE_PIN47_CONFIG = 0;
#endif
}

@@ -311,6 +321,8 @@ void TwoWire::setSCL(uint8_t pin)
CORE_PIN33_CONFIG = PORT_PCR_MUX(5)|PORT_PCR_ODE|PORT_PCR_SRE|PORT_PCR_DSE;
} else if (pin == 7) {
CORE_PIN7_CONFIG = PORT_PCR_MUX(7)|PORT_PCR_ODE|PORT_PCR_SRE|PORT_PCR_DSE;
} else if (pin == 47) {
CORE_PIN47_CONFIG = PORT_PCR_MUX(2)|PORT_PCR_ODE|PORT_PCR_SRE|PORT_PCR_DSE;
#endif
}
}
@@ -340,6 +352,8 @@ void TwoWire::end()
CORE_PIN34_CONFIG = 0;
} else if (sda_pin_num == 8) {
CORE_PIN8_CONFIG = 0;
} else if (sda_pin_num == 48) {
CORE_PIN48_CONFIG = 0;
#endif
}
if (scl_pin_num == 19) {
@@ -351,6 +365,8 @@ void TwoWire::end()
CORE_PIN33_CONFIG = 0;
} else if (scl_pin_num == 7) {
CORE_PIN7_CONFIG = 0;
} else if (scl_pin_num == 47) {
CORE_PIN47_CONFIG = 0;
#endif
}
SIM_SCGC4 &= ~SIM_SCGC4_I2C0; // TODO: use bitband

Loading…
Cancel
Save