硬汉嵌入式论坛

 找回密码
 立即注册
查看: 301|回复: 2
收起左侧

[ThreadX全家桶] LevelX 6.2.1版本lx_nand_flash_open参数求教

[复制链接]

5

主题

8

回帖

23

积分

新手上路

积分
23
发表于 2023-10-30 14:33:10 | 显示全部楼层 |阅读模式

这是我第一次使用LevelX,网上官方的函数原型是
[C] 纯文本查看 复制代码
UINT lx_nand_flash_open(
    LX_NAND_FLASH *nand_flash, 
    CHAR *name,  
    UINT (*nand_driver_initialize) (LX_NAND_FLASH *));


不同与网上的版本,6.2.1版本的函数有5个参数
[C] 纯文本查看 复制代码
UINT    _lx_nand_flash_open(
LX_NAND_FLASH  *nand_flash, 
CHAR *name, 
UINT (*nand_driver_initialize)(LX_NAND_FLASH *), 
ULONG* memory_ptr, 
UINT memory_size);


根据名字可以知道最后两个参数是关于内存的,但我找不到该怎么填才好,如大小等。
在参考论坛中分享的代码中,初始化结构体时已经给出了相关buf,即初始化过程会有两个地方对缓冲区进行配置,我是两个都保留还是取舍留一个呢
我还注意到有个lx_nand_flash_extended_cache_enable()函数,他们的效果是一样的吗

希望大佬能指导一二

回复

使用道具 举报

5

主题

8

回帖

23

积分

新手上路

积分
23
 楼主| 发表于 2023-10-30 14:45:04 | 显示全部楼层
翻了下c文件,有以下描述
nand_flash                            NAND flash instance
name                                  Name of NAND flash instance
nand_driver_initialize                Driver initialize
memory_ptr                            Pointer to memory used by the LevelX for this NAND
memory_size                           Size of memory - must at least 7 * total block count + 2 * page size
则对于8位的128MB Nand这块内存的大小至少为7*1024+2*2048=11KB
那么问题就变成了,“在初始化回调中,是否还要设置page的buf”,假如他们负责的功能不同,那还是得两者都得分配
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106934
QQ
发表于 2023-10-31 15:07:47 | 显示全部楼层
FileX的NAND我没有研究。

坛友分享,供参看

NAND LEVELX STM32 V7
https://www.armbbs.cn/forum.php?mod=viewthread&tid=112016
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-5-10 10:56 , Processed in 0.201999 second(s), 26 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表