From 431ddb90f55f19417690d7705c21dfa9088201e8 Mon Sep 17 00:00:00 2001 From: chengy4 Date: Mon, 18 Jan 2021 15:55:33 +0800 Subject: [PATCH] 1.modify SRAM_SIZE 2.modify I2C gpio init --- bsp/hc32f4a0/board/board.h | 5 +++-- bsp/hc32f4a0/drivers/drv_soft_i2c.c | 13 +++---------- 2 files changed, 6 insertions(+), 12 deletions(-) diff --git a/bsp/hc32f4a0/board/board.h b/bsp/hc32f4a0/board/board.h index 927f7d78f2..dd6d774e92 100644 --- a/bsp/hc32f4a0/board/board.h +++ b/bsp/hc32f4a0/board/board.h @@ -6,8 +6,9 @@ * Change Logs: * Date Author Notes * 2020-10-30 CDT first version + * 2021-01-18 CDT MOdify SRAM_SIZE */ - + #ifndef __BOARD_H__ #define __BOARD_H__ @@ -18,7 +19,7 @@ /* board configuration */ #define SRAM_BASE 0x1FFE0000 -#define SRAM_SIZE 0x20000 +#define SRAM_SIZE 0x80000 #define SRAM_END (SRAM_BASE + SRAM_SIZE) /* High speed sram. */ diff --git a/bsp/hc32f4a0/drivers/drv_soft_i2c.c b/bsp/hc32f4a0/drivers/drv_soft_i2c.c index 38258ba7ee..473237ebc4 100644 --- a/bsp/hc32f4a0/drivers/drv_soft_i2c.c +++ b/bsp/hc32f4a0/drivers/drv_soft_i2c.c @@ -6,6 +6,7 @@ * Change Logs: * Date Author Notes * 2020-10-30 CDT first version + * 2021-01-18 CDT modify i2c gpio init */ @@ -81,8 +82,8 @@ static void hc32_i2c_gpio_init(struct hc32_i2c *i2c) { struct hc32_soft_i2c_config* cfg = (struct hc32_soft_i2c_config*)i2c->ops.data; - rt_pin_mode(cfg->scl_pin, PIN_MODE_OUTPUT); - rt_pin_mode(cfg->sda_pin, PIN_MODE_OUTPUT); + rt_pin_mode(cfg->scl_pin, PIN_MODE_OUTPUT_OD); + rt_pin_mode(cfg->sda_pin, PIN_MODE_OUTPUT_OD); rt_pin_write(cfg->scl_pin, PIN_HIGH); rt_pin_write(cfg->sda_pin, PIN_HIGH); @@ -98,8 +99,6 @@ static void hc32_set_sda(void *data, rt_int32_t state) { struct hc32_soft_i2c_config* cfg = (struct hc32_soft_i2c_config*)data; - rt_pin_mode(cfg->sda_pin, PIN_MODE_OUTPUT); - if (state) rt_pin_write(cfg->sda_pin, PIN_HIGH); else @@ -116,8 +115,6 @@ static void hc32_set_scl(void *data, rt_int32_t state) { struct hc32_soft_i2c_config* cfg = (struct hc32_soft_i2c_config*)data; - rt_pin_mode(cfg->scl_pin, PIN_MODE_OUTPUT); - if (state) rt_pin_write(cfg->scl_pin, PIN_HIGH); else @@ -133,8 +130,6 @@ static rt_int32_t hc32_get_sda(void *data) { struct hc32_soft_i2c_config* cfg = (struct hc32_soft_i2c_config*)data; - rt_pin_mode(cfg->sda_pin, PIN_MODE_INPUT); - return rt_pin_read(cfg->sda_pin); } @@ -147,8 +142,6 @@ static rt_int32_t hc32_get_scl(void *data) { struct hc32_soft_i2c_config* cfg = (struct hc32_soft_i2c_config*)data; - rt_pin_mode(cfg->scl_pin, PIN_MODE_INPUT); - return rt_pin_read(cfg->scl_pin); }