-extern volatile uint8_t I2CMasterBuffer[I2C_BUFSIZE];
-extern volatile uint8_t I2CSlaveBuffer[I2C_BUFSIZE];
+#define I2DAT_I2C 0x00000000 /* I2C Data Reg */
+#define I2ADR_I2C 0x00000000 /* I2C Slave Address Reg */
+
+/* SCLH and SCLL = I2C PCLK High/Low cycles for I2C clock and
+ determine the data rate/duty cycle for I2C:
+
+ I2CBitFrequency = I2CPCLK / (I2CSCLH + I2CSCLL)
+
+ Standard Mode (100KHz) = CFG_CPU_CCLK / 200000
+ Fast Mode (400KHz) = CFG_CPU_CCLK / 800000
+ Fast- Mode Plus (1MHz) = CFG_CPU_CCLK / 2000000 */
+
+#define I2SCLH_SCLH CFG_CPU_CCLK / 800000 /* Standard Mode I2C SCL Duty Cycle High (400KHz) */
+#define I2SCLL_SCLL CFG_CPU_CCLK / 800000 /* Fast Mode I2C SCL Duty Cycle Low (400KHz) */
+#define I2SCLH_HS_SCLH CFG_CPU_CCLK / 2000000 /* Fast Plus I2C SCL Duty Cycle High Reg */
+#define I2SCLL_HS_SCLL CFG_CPU_CCLK / 2000000 /* Fast Plus I2C SCL Duty Cycle Low Reg */
+
+extern volatile uint8_t I2CMasterBuffer[I2C_BUFSIZE]; // Master Mode
+extern volatile uint8_t I2CSlaveBuffer[I2C_BUFSIZE]; // Master Mode
+// extern volatile uint8_t I2CWrBuffer[I2C_BUFSIZE]; // Slave Mode
+// extern volatile uint8_t I2CRdBuffer[I2C_BUFSIZE]; // Slave Mode