[PIC®/AVR®/dsPIC®产品]

关于dsPIC33FJ128芯片的Flash读写的问题

[复制链接]
402|3
手机看帖
扫描二维码
随时随地手机跟帖
阿巴斯|  楼主 | 2023-1-31 19:41 | 显示全部楼层 |阅读模式
近日在做dsPIC33FJ128芯片的片内Flash读写的时候,遇到2个问题:

1、程序1读写片内Flash,然后通过CAN 发送出来,写是通过扇区的方式来写的,读数据也是按照扇区的方式来读。即一次读写一个扇区。但是程序1中在一个地址写入数据,下载进芯片,等待芯片运行几秒后,通过MPLAB X IDE软件在读取整个Flash的数据,发现写数据的地址与程序1中写数据的地址不一样,如:写的地址是0x0000F000,但是重新读取的flash中的数据地址是:0x0000E400。这个很不理解。

2、程序1在片内的Flash中写入数据,在程序2中要读这个数据,如何保证数据不被程序2覆盖?

麻烦大佬给上上课。。。。。

使用特权

评论回复
阿巴斯|  楼主 | 2023-1-31 19:45 | 显示全部楼层
@lvyunhua  大佬解读写下,感谢

使用特权

评论回复
lvyunhua| | 2023-2-2 09:35 | 显示全部楼层
1、程序1读写片内Flash的地址是不是和程序1的存储空间重合了,需要避开
2、程序1写完做一个标志,通知程序2可以读取了,这个标志可以在数据FLASH中指定一个地址来存储’

使用特权

评论回复
阿巴斯|  楼主 | 2023-3-2 16:24 | 显示全部楼层
lvyunhua 发表于 2023-2-2 09:35
1、程序1读写片内Flash的地址是不是和程序1的存储空间重合了,需要避开
2、程序1写完做一个标志,通知程序2 ...

谢谢,问题解决了!是2个不同的程序,程序1写flash,然后下载程序2读程序1写的flash数据。需要使用IPE软件设置保留区域范围,程序写数据到核实的区域就行了!

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

6

主题

23

帖子

0

粉丝