<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic transfer data from array to regdata, and regdata to array in MCUXpresso SDK</title>
    <link>https://community.nxp.com/t5/MCUXpresso-SDK/transfer-data-from-array-to-regdata-and-regdata-to-array/m-p/1185466#M2885</link>
    <description>&lt;P&gt;transfer data from array to regdata but it doesn't work can you help me&lt;/P&gt;&lt;LI-CODE lang="markup"&gt;int8_t BMP180_I2C_bus_write(u8 dev_addr, u8 reg_addr, u8 *reg_data, u8 cnt)
{

	s32 iError = 0;
	u8 array[I2C_BUFFER_LEN]= {0};
	u8 stringpos = 0;
	array[0] = reg_addr;

	//Used in the function I2C_MasterTransferBlocking(...)

	i2c_master_transfer_t masterXfer;

	//Allocate memory for the masterXfer variable
	memset(&amp;amp;masterXfer, 0, sizeof(masterXfer));

	masterXfer.slaveAddress   = dev_addr; // Adresse du device BMP180
	masterXfer.direction      =  kI2C_Write;
	masterXfer.subaddress     = reg_addr; // adresse du registre à écrire;
	masterXfer.subaddressSize = 1;
	masterXfer.data           = array;
	masterXfer.dataSize       = cnt;
	masterXfer.flags          = kI2C_TransferDefaultFlag;

	// transférer les données de reg_data vers array

	// Appeler la fonction  I2C_MasterTransferBlocking(...) de la librairie fsl_i2c
	I2C_MasterTransferBlocking(I2C_MASTER_BASEADDR, &amp;amp;masterXfer);
    iError = I2C_MasterTransferBlocking(I2C_MASTER_BASEADDR, &amp;amp;masterXfer);

    for (stringpos=0; stringpos&amp;lt;cnt; stringpos++)
    		{
    	array[stringpos]= *(reg_data + stringpos);
    		}

	return (s8)iError;
}

/*	\Brief: This function is used for I2C bus read
 *	\Return : Status of the I2C read
 *	\param dev_addr : The device address of the sensor
 *	\param reg_addr : Address of the first register, will data is going to be read
 *	\param reg_data : contains the data read from the sensor
 *	\param cnt : The no of byte of data to be read
 */

s8 BMP180_I2C_bus_read(u8 dev_addr, u8 reg_addr, u8 *reg_data, u8 cnt)
{
	s32 iError = 0;
	u8 array[I2C_BUFFER_LEN] = {0};
	u8 stringpos = 0;
	array[0] = reg_addr;
	i2c_master_transfer_t masterXfer;

	memset(&amp;amp;masterXfer, 0, sizeof(masterXfer));
	masterXfer.slaveAddress   = dev_addr;
	masterXfer.direction      = 0x1U; // trouvez la constante définie dans fsl_i2c.h qui correspond
	masterXfer.subaddress     = reg_addr;
	masterXfer.subaddressSize = 1;
	masterXfer.data           = 0; //adresse du tableau array;
	masterXfer.dataSize       = cnt;
	masterXfer.flags          = kI2C_TransferDefaultFlag;

	I2C_MasterTransferBlocking(I2C_MASTER_BASEADDR, &amp;amp;masterXfer);
	iError = I2C_MasterTransferBlocking(I2C_MASTER_BASEADDR, &amp;amp;masterXfer);
	// transférez les données de array vers regdata

	for (stringpos=0; stringpos&amp;lt;cnt; stringpos++)
		{
		*(reg_data + stringpos)=array[stringpos];
		}
	return (s8)iError;
}&lt;/LI-CODE&gt;</description>
    <pubDate>Wed, 18 Nov 2020 20:26:05 GMT</pubDate>
    <dc:creator>kerim</dc:creator>
    <dc:date>2020-11-18T20:26:05Z</dc:date>
    <item>
      <title>transfer data from array to regdata, and regdata to array</title>
      <link>https://community.nxp.com/t5/MCUXpresso-SDK/transfer-data-from-array-to-regdata-and-regdata-to-array/m-p/1185466#M2885</link>
      <description>&lt;P&gt;transfer data from array to regdata but it doesn't work can you help me&lt;/P&gt;&lt;LI-CODE lang="markup"&gt;int8_t BMP180_I2C_bus_write(u8 dev_addr, u8 reg_addr, u8 *reg_data, u8 cnt)
{

	s32 iError = 0;
	u8 array[I2C_BUFFER_LEN]= {0};
	u8 stringpos = 0;
	array[0] = reg_addr;

	//Used in the function I2C_MasterTransferBlocking(...)

	i2c_master_transfer_t masterXfer;

	//Allocate memory for the masterXfer variable
	memset(&amp;amp;masterXfer, 0, sizeof(masterXfer));

	masterXfer.slaveAddress   = dev_addr; // Adresse du device BMP180
	masterXfer.direction      =  kI2C_Write;
	masterXfer.subaddress     = reg_addr; // adresse du registre à écrire;
	masterXfer.subaddressSize = 1;
	masterXfer.data           = array;
	masterXfer.dataSize       = cnt;
	masterXfer.flags          = kI2C_TransferDefaultFlag;

	// transférer les données de reg_data vers array

	// Appeler la fonction  I2C_MasterTransferBlocking(...) de la librairie fsl_i2c
	I2C_MasterTransferBlocking(I2C_MASTER_BASEADDR, &amp;amp;masterXfer);
    iError = I2C_MasterTransferBlocking(I2C_MASTER_BASEADDR, &amp;amp;masterXfer);

    for (stringpos=0; stringpos&amp;lt;cnt; stringpos++)
    		{
    	array[stringpos]= *(reg_data + stringpos);
    		}

	return (s8)iError;
}

/*	\Brief: This function is used for I2C bus read
 *	\Return : Status of the I2C read
 *	\param dev_addr : The device address of the sensor
 *	\param reg_addr : Address of the first register, will data is going to be read
 *	\param reg_data : contains the data read from the sensor
 *	\param cnt : The no of byte of data to be read
 */

s8 BMP180_I2C_bus_read(u8 dev_addr, u8 reg_addr, u8 *reg_data, u8 cnt)
{
	s32 iError = 0;
	u8 array[I2C_BUFFER_LEN] = {0};
	u8 stringpos = 0;
	array[0] = reg_addr;
	i2c_master_transfer_t masterXfer;

	memset(&amp;amp;masterXfer, 0, sizeof(masterXfer));
	masterXfer.slaveAddress   = dev_addr;
	masterXfer.direction      = 0x1U; // trouvez la constante définie dans fsl_i2c.h qui correspond
	masterXfer.subaddress     = reg_addr;
	masterXfer.subaddressSize = 1;
	masterXfer.data           = 0; //adresse du tableau array;
	masterXfer.dataSize       = cnt;
	masterXfer.flags          = kI2C_TransferDefaultFlag;

	I2C_MasterTransferBlocking(I2C_MASTER_BASEADDR, &amp;amp;masterXfer);
	iError = I2C_MasterTransferBlocking(I2C_MASTER_BASEADDR, &amp;amp;masterXfer);
	// transférez les données de array vers regdata

	for (stringpos=0; stringpos&amp;lt;cnt; stringpos++)
		{
		*(reg_data + stringpos)=array[stringpos];
		}
	return (s8)iError;
}&lt;/LI-CODE&gt;</description>
      <pubDate>Wed, 18 Nov 2020 20:26:05 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MCUXpresso-SDK/transfer-data-from-array-to-regdata-and-regdata-to-array/m-p/1185466#M2885</guid>
      <dc:creator>kerim</dc:creator>
      <dc:date>2020-11-18T20:26:05Z</dc:date>
    </item>
  </channel>
</rss>

