您好!
SDK 为4.20、 项目为不带 RTOS 的 rfPacketTx。
如何配置 DIO4和 DIO5以在调用 sleep 后保持高电平(packet_interval);?
向 rfPacketTx 项目添加 I2C 函数。 调用 SLEEP (packet_interval)后、测得 DIO4和 DIO5为0.63V、不处于高电平。
相关代码如下所示:
I2C_init();
// initialize optional I2C bus parameters
I2C_Params params;
I2C_Params_init(¶ms);
params.bitRate = I2C_100kHz;
// Open I2C bus for usage
I2C_Handle i2cHandle = I2C_open(0, ¶ms);
// Initialize slave address of transaction
I2C_Transaction transaction = {0};
transaction.slaveAddress = 0x44;
uint8_t iic_write_data[] = {0xCC,0x44};
uint8_t iic_read_data[3];
// Write to I2C slave device
transaction.writeBuf = iic_write_data;
transaction.writeCount = sizeof(iic_write_data);
transaction.readCount = 0;
I2C_transfer(i2cHandle, &transaction);
usleep(10000);
// Read from I2C slave device
transaction.readBuf = iic_read_data;
transaction.readCount = sizeof(iic_read_data);
transaction.writeCount = 0;
I2C_transfer(i2cHandle, &transaction);
//。。。
sleep(PACKET_INTERVAL);