HI2CIN (variable,...)

HI2CIN location,(variable,...)

HI2CIN [newslave],(variable,...) (X2 parts only)

HI2CIN [newslave],location,(variable,...) (X2 parts only)

Location - is a optional variable/constant specifying a byte or word address.

Variable(s) - receives the data byte(s) read.

Newslave - is an optional new slave address for this (and all future) commands (X2 parts only).


Read i2c location contents into variable(s).

Use of i2c parts is covered in more detail in the separate 'i2c Tutorial' datasheet.

This command is used to read byte data from an i2c device. Location defines the start address of the data read, although it is also possible to read more than one byte sequentially (if the i2c device supports sequential reads). Location must be a byte or word as defined within the hi2csetup command. An hi2csetup command must have been issued before this command is used. The hi2csetup commands sets the default slave address for this command.

However when addressing multiple parts it may be necessary to repeatedly change the default slave address. This can be achieved via the optional [newslave] variable. If the i2c hardware is incorrectly configured, or the wrong i2cslave data has been used, the value 255 ($FF) will be loaded into each variable.

Applies To:
08M2, 14M2, 18M2, 18X, 20M2, 20X2, 28X1, 28X2, 40X1, 40X2
See Also:
Related Create:

Example of how to use DS1307 Real Time Clock

This program will read the current data and time from a DS1307 Real time Clock. Note the data is sent/received in BCD format.

Code Example:
	hi2csetup i2cmaster, %11010000, i2cslow, i2cbyte	; set PICAXE as master and DS1307 slave address

main:	hi2cin 0,(b0,b1,b2,b3,b4,b5,b6,b7)			; read time and date and debug display	
	debug b1
	pause 2000
	goto main
Copy Code Submit an Example

Submit Your Own Code!

You must be logged in to submit code examples. Login now.