I2C_SEND:
movwf I2C_TEMP ;I2C send 8 bits of working register (W)
;to the bus.
bsf STATUS,RP0
bcf I2C_SDA
bcf STATUS,RP0
bcf I2C_SDA
btfsc I2C_TEMP,7
bsf I2C_SDA
bsf I2C_SCL
call I2C_DELAY
bcf I2C_SCL
bcf I2C_SDA
btfsc I2C_TEMP,6
bsf I2C_SDA
bsf I2C_SCL
call I2C_DELAY
bcf I2C_SCL
bcf I2C_SDA
btfsc I2C_TEMP,5
bsf I2C_SDA
bsf I2C_SCL
call I2C_DELAY
bcf I2C_SCL
bcf I2C_SDA
btfsc I2C_TEMP,4
bsf I2C_SDA
bsf I2C_SCL
call I2C_DELAY
bcf I2C_SCL
bcf I2C_SDA
btfsc I2C_TEMP,3
bsf I2C_SDA
bsf I2C_SCL
call I2C_DELAY
bcf I2C_SCL
bcf I2C_SDA
btfsc I2C_TEMP,2
bsf I2C_SDA
bsf I2C_SCL
call I2C_DELAY
bcf I2C_SCL
bcf I2C_SDA
btfsc I2C_TEMP,1
bsf I2C_SDA
bsf I2C_SCL
call I2C_DELAY
bcf I2C_SCL
bcf I2C_SDA
btfsc I2C_TEMP,0
bsf I2C_SDA
bsf I2C_SCL
call I2C_DELAY
bcf I2C_SCL
return