楼主: chenyelong

[已解决] KL25 如何对内部flash进行读写(已解决)

[复制链接]

该用户从未签到

145

主题

4926

帖子

0

金牌会员

Rank: 6Rank: 6

积分
9267
最后登录
1970-1-1
发表于 2014-12-9 18:35:57 | 显示全部楼层
KL25flash的例程,看看这篇经验分享,有flash驱动的:
https://www.nxpic.org.cn/module/forum/thread-595414-1-1.html
回复 支持 反对

使用道具 举报

该用户从未签到

13

主题

143

帖子

0

中级会员

Rank: 3Rank: 3

积分
491
最后登录
1970-1-1
 楼主| 发表于 2014-12-15 11:03:53 | 显示全部楼层
安 发表于 2014-12-9 10:28
读数据直接读取地址就可以,写数据需要执行命令。这个可以参考Chapter 27 Flash Memory Module (FTFA)这一 ...

您好,FTFA_FCC0B0 = 0X03,只能从flash IFR 或者版本ID中读取4 字节数据,如果我想读flash任意地址的数据,该用什么命令呢
回复 支持 反对

使用道具 举报

  • TA的每日心情
    难过
    2021-12-15 16:01
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]初来乍到

    305

    主题

    4701

    帖子

    0

    中级会员

    Rank: 3Rank: 3

    积分
    377
    最后登录
    2023-8-16
    发表于 2014-12-15 11:24:20 | 显示全部楼层
    直接读取地址就可以了。
    该会员没有填写今日想说内容.
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    13

    主题

    143

    帖子

    0

    中级会员

    Rank: 3Rank: 3

    积分
    491
    最后登录
    1970-1-1
     楼主| 发表于 2014-12-15 11:35:45 | 显示全部楼层
    安 发表于 2014-12-15 11:24
    直接读取地址就可以了。

    地址写往哪里,读哪个寄存器数据
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    145

    主题

    4926

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    9267
    最后登录
    1970-1-1
    发表于 2014-12-15 13:43:22 | 显示全部楼层
    chenyelong 发表于 2014-12-15 11:03
    您好,FTFA_FCC0B0 = 0X03,只能从flash IFR 或者版本ID中读取4 字节数据,如果我想读flash任意地址的数 ...

    你好,如果不是特殊的flash区域,你要读的话,直接读地址就可以实现了。
    不需要使用FTFA的控制命令了。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    13

    主题

    143

    帖子

    0

    中级会员

    Rank: 3Rank: 3

    积分
    491
    最后登录
    1970-1-1
     楼主| 发表于 2014-12-15 13:52:51 | 显示全部楼层
    FSL_TICS_ZJJ 发表于 2014-12-15 13:43
    你好,如果不是特殊的flash区域,你要读的话,直接读地址就可以实现了。
    不需要使用FTFA的控制命令了。 ...

    直接读地址,这是我找的例子,如果copy过来,这个_IO是多少呢   *(ReadBuf + DataNum) = *(__IO uint8_t*) ReadAddress++;
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    145

    主题

    4926

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    9267
    最后登录
    1970-1-1
    发表于 2014-12-15 13:58:56 | 显示全部楼层
    chenyelong 发表于 2014-12-15 13:52
    直接读地址,这是我找的例子,如果copy过来,这个_IO是多少呢   *(ReadBuf + DataNum) = *(__IO uint8_t* ...

    我是这么操作的:
    32位(uint32_t *)(ADDRESS),
    16位(uint16_t *)(ADDRESS),
    8位(uint8_t *)(ADDRESS)
    其中ADDRESS就是具体的地址,至于偏移,你可以在ADDRESS基础上加。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    难过
    2021-12-15 16:01
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]初来乍到

    305

    主题

    4701

    帖子

    0

    中级会员

    Rank: 3Rank: 3

    积分
    377
    最后登录
    2023-8-16
    发表于 2014-12-15 14:49:30 | 显示全部楼层
    #define READ32(address)                 ((UINT32)(*(VUINT32*)(address)))
    这个是K60的使用方法。
    该会员没有填写今日想说内容.
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    13

    主题

    143

    帖子

    0

    中级会员

    Rank: 3Rank: 3

    积分
    491
    最后登录
    1970-1-1
     楼主| 发表于 2014-12-16 14:52:15 | 显示全部楼层
    安 发表于 2014-12-15 14:49
    #define READ32(address)                 ((UINT32)(*(VUINT32*)(address)))
    这个是K60的使用方法。 ...

    谢谢  明白了    没领会直接读地址的意思 惭愧
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    难过
    2021-12-15 16:01
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]初来乍到

    305

    主题

    4701

    帖子

    0

    中级会员

    Rank: 3Rank: 3

    积分
    377
    最后登录
    2023-8-16
    发表于 2014-12-16 16:16:55 | 显示全部楼层
    address就是你写入数据的地址。每个芯片的地址可能不一样,比如你写入的地址是0x00801000,读取的地址就是这个。
    该会员没有填写今日想说内容.
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /3 下一条

    Archiver|手机版|小黑屋|恩智浦技术社区

    GMT+8, 2025-7-20 16:51 , Processed in 0.108679 second(s), 29 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.

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