修复多连接的问题
This commit is contained in:
@@ -1,11 +1,9 @@
|
||||
/*
|
||||
* 讓。蝮怜錐遘ー<E98198>哥AL Flash 隶セ螟<EFBDBE>る<C280>
|
||||
* 模块功能:将 GD5F2GQ5UE 驱动接口适配到 FAL 框架
|
||||
* 讓。蝮怜粥閭ス<EFBFBD>壼ー<EFBFBD> GD5F2GQ5UE 鬩ア蜉ィ謗・蜿」騾る<EFBFBD><EFBFBD>?FAL 譯<EFBFBD>楔
|
||||
* 騾ら畑蟷ウ蜿ー<E89CBF>售TM32F407ZGT6
|
||||
* 作者:王建锋
|
||||
* 创建日期:2026-07-16
|
||||
* 修改记录:
|
||||
* 2026-07-16 王建锋 创建初始版本
|
||||
* 菴懆<EFBFBD>シ夂視蟒コ<EFBFBD>? * 蛻帛サコ譌・譛滂ソ?026-07-16
|
||||
* 菫ョ謾ケ隶ー蠖包ソ? * 2026-07-16 邇句サコ<EFBDBB>? 蛻帛サコ蛻晏ァ狗沿譛ャ
|
||||
*/
|
||||
|
||||
/* 螟エ譁<EFBDB4>サカ蛹<EFBDB6>性蛹コ */
|
||||
@@ -17,60 +15,45 @@
|
||||
/*
|
||||
* 蜃ス謨ー蜉溯<E89C89><E6BAAF>哥lash 隶セ螟<EFBDBE><E89E9F>蟋句喧騾る<E9A8BE>
|
||||
* 蜈・蜿」蜿よ焚<E38288>壽裏
|
||||
* 返回值:0 - 成功,其他 - 错误码
|
||||
* 限定条件:SPI 和 GPIO 已由 CubeMX 初始化完成
|
||||
* 函数说明:调用底层驱动的初始化函数
|
||||
*/
|
||||
static int gd5f_fal_init(void)
|
||||
{
|
||||
* 霑泌屓蛟シ<EFBFBD><EFBFBD>0 - 謌仙粥<E4BB99>悟<EFBFBD><E6829F>?- 髞呵ッッ<EFBDAF>? * 髯仙ョ壽擅莉カ<E88E89>售PI <20>?GPIO 蟾イ逕ア CubeMX 蛻晏ァ句喧螳鯉ソ? * 蜃ス謨ー隸エ譏趣シ夊ー<E5A48A>畑蠎募アるゥア蜉ィ逧<EFBDA8><E980A7>蟋句喧蜃ス<E89C83>? */
|
||||
static int gd5f_fal_init(void) {
|
||||
return gd5f2gq5ue_init();
|
||||
}
|
||||
|
||||
/*
|
||||
* 蜃ス謨ー蜉溯<E89C89><E6BAAF>哥lash 隸サ蜿夜る<C280>
|
||||
* 蜈・蜿」蜿よ焚<E38288>嗤ffset - 襍キ蟋句ュ苓鰍蛛冗ァサ long
|
||||
* p_buf - 数据缓冲区 uint8_t*
|
||||
* size - 读取字节数 size_t
|
||||
* 返回值:0 - 成功,其他 - 错误码
|
||||
* 限定条件:gd5f_fal_init() 已成功调用
|
||||
* 函数说明:直接转发到底层驱动的读取函数
|
||||
*/
|
||||
static int gd5f_fal_read(long offset, uint8_t *p_buf, size_t size)
|
||||
{
|
||||
* p_buf - 謨ー謐ョ郛灘<EFBFBD><EFBFBD>? uint8_t*
|
||||
* size - 隸サ蜿門ュ苓鰍<EFBFBD>? size_t
|
||||
* 霑泌屓蛟シ<EFBFBD><EFBFBD>0 - 謌仙粥<E4BB99>悟<EFBFBD><E6829F>?- 髞呵ッッ<EFBDAF>? * 髯仙ョ壽擅莉カ<E88E89>喩d5f_fal_init() 蟾イ謌仙粥隹<E7B2A5>ソ? * 蜃ス謨ー隸エ譏趣シ夂峩謗・霓ャ蜿大芦蠎募アるゥア蜉ィ逧<EFBDA8>ッサ蜿門<E89CBF><E99680>? */
|
||||
static int gd5f_fal_read(long offset, uint8_t *p_buf, size_t size) {
|
||||
return gd5f2gq5ue_read(offset, p_buf, size);
|
||||
}
|
||||
|
||||
/*
|
||||
* 蜃ス謨ー蜉溯<E89C89><E6BAAF>哥lash 蜀吝<E89C80>騾る<E9A8BE>
|
||||
* 蜈・蜿」蜿よ焚<E38288>嗤ffset - 襍キ蟋句ュ苓鰍蛛冗ァサ long
|
||||
* p_buf - 数据缓冲区 const uint8_t*
|
||||
* size - 写入字节数 size_t
|
||||
* 返回值:0 - 成功,其他 - 错误码
|
||||
* 限定条件:目标区域已擦除
|
||||
* 函数说明:直接转发到底层驱动的写入函数
|
||||
*/
|
||||
static int gd5f_fal_write(long offset, const uint8_t *p_buf, size_t size)
|
||||
{
|
||||
* p_buf - 謨ー謐ョ郛灘<EFBFBD><EFBFBD>? const uint8_t*
|
||||
* size - 蜀吝<EFBFBD>蟄苓鰍<EFBFBD>? size_t
|
||||
* 霑泌屓蛟シ<EFBFBD><EFBFBD>0 - 謌仙粥<E4BB99>悟<EFBFBD><E6829F>?- 髞呵ッッ<EFBDAF>? * 髯仙ョ壽擅莉カ<E88E89>夂岼譬<E5B2BC>玄蝓溷キイ謫ヲ髯、
|
||||
* 蜃ス謨ー隸エ譏趣シ夂峩謗・霓ャ蜿大芦蠎募アるゥア蜉ィ逧<EFBFBD><EFBFBD>蜈・蜃ス<EFBFBD>? */
|
||||
static int gd5f_fal_write(long offset, const uint8_t *p_buf, size_t size) {
|
||||
return gd5f2gq5ue_write(offset, p_buf, size);
|
||||
}
|
||||
|
||||
/*
|
||||
* 蜃ス謨ー蜉溯<E89C89><E6BAAF>哥lash 謫ヲ髯、騾る<E9A8BE>
|
||||
* 蜈・蜿」蜿よ焚<E38288>嗤ffset - 襍キ蟋句ュ苓鰍蛛冗ァサ long
|
||||
* size - 擦除字节数 size_t
|
||||
* 返回值:0 - 成功,其他 - 错误码
|
||||
* 限定条件:gd5f_fal_init() 已成功调用
|
||||
* 函数说明:直接转发到底层驱动的擦除函数
|
||||
*/
|
||||
static int gd5f_fal_erase(long offset, size_t size)
|
||||
{
|
||||
* size - 謫ヲ髯、蟄苓鰍<EFBFBD>? size_t
|
||||
* 霑泌屓蛟シ<EFBFBD><EFBFBD>0 - 謌仙粥<E4BB99>悟<EFBFBD><E6829F>?- 髞呵ッッ<EFBDAF>? * 髯仙ョ壽擅莉カ<E88E89>喩d5f_fal_init() 蟾イ謌仙粥隹<E7B2A5>ソ? * 蜃ス謨ー隸エ譏趣シ夂峩謗・霓ャ蜿大芦蠎募アるゥア蜉ィ逧<EFBDA8>逃髯、蜃ス<E89C83>? */
|
||||
static int gd5f_fal_erase(long offset, size_t size) {
|
||||
return gd5f2gq5ue_erase(offset, size);
|
||||
}
|
||||
|
||||
/* ======================== FAL Flash 隶セ螟<EFBDBE>ョ壻ケ<E5A3BB> ======================== */
|
||||
|
||||
/* GD5F2GQ5UE FAL 设备实例,总容量256MB,块大小128KB */
|
||||
const struct fal_flash_dev gd5f2gq5ue_flash = {
|
||||
/* GD5F2GQ5UE FAL 隶セ螟<EFBFBD>ョ樔セ具シ梧サ螳ケ<EFBFBD>?56MB<4D>悟摎螟ァ蟆<EFBDA7>128KB */
|
||||
const struct fal_flash_dev g_gd5f2gq5ue_flash = {
|
||||
.name = "gd5f2gq5ue",
|
||||
.addr = 0,
|
||||
.len = GD5F_TOTAL_SIZE,
|
||||
@@ -83,3 +66,4 @@ const struct fal_flash_dev gd5f2gq5ue_flash = {
|
||||
},
|
||||
.write_gran = 8,
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user