OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 2029|回复: 4

内部flash读写问题

[复制链接]

4

主题

20

帖子

0

精华

初级会员

Rank: 2

积分
147
金钱
147
注册时间
2018-7-8
在线时间
26 小时
发表于 2018-8-8 00:17:44 | 显示全部楼层 |阅读模式
1金钱


读写内部flash遇到了问题  那个大神知道解决下!
1、内部flash是怎么存储的  低位在前?
2、我读校验一直不对!

发送的字节

发送的字节

发送的字节


把一个数组强制转换为u32写到内部flash中
void TestInternalFlash(u8 data[20])
{

u8 i;
int j=0;

for(i=0;i<20;i++)
{
  FlashData =  (u32)data;
}
j = WriteInternalFlash(FlashData,0x08008000,20);

printf("??????%d??а?",j);

ReadInternalFlash(flashdata1,0x08008000,20);
ReadInternalFlash1(flashdata2,0x08008000,20);
}


u32读取的

u32字节读取的

u32字节读取的




u16读取的

u16字节读取的

u16字节读取的



u8读取的

u8字节读取的

u8字节读取的



最后校验的代码
typedef enum { FAILED = 0, PASSED = !FAILED} TestStatus;  



  Address = WriteStart_Addr;
  while((Address < (WriteStart_Addr+len*4)) && (MemoryProgramStatus != FAILED))
  {
    if((*(__IO uint32_t*) Address) != *data)
    {
      MemoryProgramStatus = FAILED;
    }
    Address += 4;
  data++;
  }
return MemoryProgramStatus;
}

//////

最佳答案

查看完整内容[请看2#楼]

好像是小端存储模式
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

3

主题

1155

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
7464
金钱
7464
注册时间
2015-1-15
在线时间
1368 小时
发表于 2018-8-8 00:17:45 | 显示全部楼层
一分耕耘一分收获。
回复

使用道具 举报

4

主题

20

帖子

0

精华

初级会员

Rank: 2

积分
147
金钱
147
注册时间
2018-7-8
在线时间
26 小时
 楼主| 发表于 2018-8-8 00:36:46 | 显示全部楼层
第一个图和最后一个图搞反了
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2018-8-8 01:08:03 | 显示全部楼层
我们不是有例程么
回复

使用道具 举报

6

主题

315

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1669
金钱
1669
注册时间
2018-1-29
在线时间
160 小时
发表于 2018-8-8 16:02:16 | 显示全部楼层
u16,一次写16位.
回复

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-7-13 10:56

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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