summaryrefslogtreecommitdiff
path: root/i2c.h
blob: c11d15915af936003e0bf6471657a78fc20e0948 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <glib.h>

#define PCF8574                 0x20	/* secondary I2C peripheral device */
#define Second_PW_Port          0               /* PCF8574 at three-bit address 0 is for dual PW board (1021D) */
#define Second_Dly_Port         1               /* PCF8574 at three-bit address 1 is for dual delay board (AVX-DD-A3-PS-TC) */
#define To_Self_Cal_Port        2               /* PCF8574 at three-bit address 2 is for self-cal PCB 226A */
#define From_Self_Cal_Port      3               /* PCF8574 at three-bit address 3 is for self-cal PCB 226A */

#define PCF8574A                0x38    /* Main I2C peripheral device */
#define Button_Press_Port       0               /* PCF8574A at three-bit address 0 is for detecting button presses */
#define LCD_Port                1               /* PCF8574A at three-bit address 1 is for LCD */
#define Lower_Encoder_Port      2               /* PCF8574A at three-bit address 2 is for lower encoder counters */
#define Upper_Encoder_Port      3               /* PCF8574A at three-bit address 3 is for upper encoder counter */
#define Curr_Mon_LSB            4               /* PCF8574A at three-bit address 4 is for current monitor */
#define Curr_Mon_MSB            5               /* PCF8574A at three-bit address 5 is for current monitor */
#define rise_time_port          4               /* PCF8574A at three-bit address 4 is for rise time circuit in AVRQ */

/* 6 and 7 reserved for dual-channel current monitor */

void I2C_Write(gulong address, guchar value);
guchar I2C_Read(gulong address);