mirror of
https://github.com/Ralim/IronOS.git
synced 2025-02-26 07:53:55 +00:00
I2C ish
This commit is contained in:
@@ -8,6 +8,7 @@
|
|||||||
#include "IRQ.h"
|
#include "IRQ.h"
|
||||||
#include "Setup.h"
|
#include "Setup.h"
|
||||||
extern "C" {
|
extern "C" {
|
||||||
|
#include "bflb_platform.h"
|
||||||
#include "bl702_glb.h"
|
#include "bl702_glb.h"
|
||||||
#include "bl702_i2c.h"
|
#include "bl702_i2c.h"
|
||||||
}
|
}
|
||||||
@@ -34,7 +35,7 @@ bool FRToSI2C::Mem_Read(uint16_t DevAddress, uint16_t read_address, uint8_t *p_b
|
|||||||
|
|
||||||
I2C_Transfer_Cfg i2cCfg = {0, DISABLE, 0, 0, 0, 0};
|
I2C_Transfer_Cfg i2cCfg = {0, DISABLE, 0, 0, 0, 0};
|
||||||
BL_Err_Type err = ERROR;
|
BL_Err_Type err = ERROR;
|
||||||
i2cCfg.slaveAddr = DevAddress;
|
i2cCfg.slaveAddr = DevAddress >> 1;
|
||||||
i2cCfg.stopEveryByte = DISABLE;
|
i2cCfg.stopEveryByte = DISABLE;
|
||||||
i2cCfg.subAddr = read_address;
|
i2cCfg.subAddr = read_address;
|
||||||
i2cCfg.dataSize = number_of_byte;
|
i2cCfg.dataSize = number_of_byte;
|
||||||
@@ -42,6 +43,7 @@ bool FRToSI2C::Mem_Read(uint16_t DevAddress, uint16_t read_address, uint8_t *p_b
|
|||||||
i2cCfg.subAddrSize = 1; // one byte address
|
i2cCfg.subAddrSize = 1; // one byte address
|
||||||
|
|
||||||
err = I2C_MasterReceiveBlocking(I2C0_ID, &i2cCfg);
|
err = I2C_MasterReceiveBlocking(I2C0_ID, &i2cCfg);
|
||||||
|
MSG((char *)"I2C Mem_Read %02X - %d\r\n", DevAddress, err);
|
||||||
bool res = err == SUCCESS;
|
bool res = err == SUCCESS;
|
||||||
if (!res) {
|
if (!res) {
|
||||||
I2C_Unstick();
|
I2C_Unstick();
|
||||||
@@ -56,7 +58,7 @@ bool FRToSI2C::Mem_Write(uint16_t DevAddress, uint16_t MemAddress, uint8_t *p_bu
|
|||||||
|
|
||||||
I2C_Transfer_Cfg i2cCfg = {0, DISABLE, 0, 0, 0, 0};
|
I2C_Transfer_Cfg i2cCfg = {0, DISABLE, 0, 0, 0, 0};
|
||||||
BL_Err_Type err = ERROR;
|
BL_Err_Type err = ERROR;
|
||||||
i2cCfg.slaveAddr = DevAddress;
|
i2cCfg.slaveAddr = DevAddress >> 1;
|
||||||
i2cCfg.stopEveryByte = DISABLE;
|
i2cCfg.stopEveryByte = DISABLE;
|
||||||
i2cCfg.subAddr = MemAddress;
|
i2cCfg.subAddr = MemAddress;
|
||||||
i2cCfg.dataSize = number_of_byte;
|
i2cCfg.dataSize = number_of_byte;
|
||||||
@@ -64,6 +66,7 @@ bool FRToSI2C::Mem_Write(uint16_t DevAddress, uint16_t MemAddress, uint8_t *p_bu
|
|||||||
i2cCfg.subAddrSize = 1; // one byte address
|
i2cCfg.subAddrSize = 1; // one byte address
|
||||||
|
|
||||||
err = I2C_MasterSendBlocking(I2C0_ID, &i2cCfg);
|
err = I2C_MasterSendBlocking(I2C0_ID, &i2cCfg);
|
||||||
|
MSG((char *)"I2C Mem_Write %02X - %d\r\n", DevAddress, err);
|
||||||
bool res = err == SUCCESS;
|
bool res = err == SUCCESS;
|
||||||
if (!res) {
|
if (!res) {
|
||||||
I2C_Unstick();
|
I2C_Unstick();
|
||||||
|
|||||||
Reference in New Issue
Block a user