DA14583闪存读/写

⚠️
嗨,...感谢您来论坛。令人兴奋的消息!我们现在正在迁至我们的新论坛平台,将提供更好的功能,并包含在主对话框网站中。所有帖子和帐户都已迁移。我们现在只接受新论坛上的流量 - 请发布任何新线程https://www.dialog-seminile.com/support.。我们将在未来几天修复错误/优化搜索和标记。
10个帖子/ 0新
最后一篇
Rajapurerohit.
离线
最后一次露面:11个月2天前
加入:2017-04-20 09:17
DA14583闪存读/写

亲爱的对话支持,

我需要在闪存读/写过程中非常紧急帮助。

我设计了一个使用DA14583 MCU的设备,我有书面代码,按钮按下我正在切换LED灯泡组。

要操作LED灯泡,创建了一种数据包(数据包包括灯泡的数量及其地址),它从Blescanner分配到自定义设备。

在固件中的下一件事中,我读取从应用程序发送的数据包我的应用程序,并将值/数据存储到闪存中(存储数据存储完美的情况)。

当系统电源休息时(设备启动时)读取时,我读取来自Flash的数据也完全发生。

我面临的问题,同时使用.hex文件到设备,

我创建了一个.hex文件的项目,并使用smart-scippet工具,将固件刻录到自定义设备中。成功编程后,我需要将设备休息才能宣传和发起,同时执行此操作,如果我在BINGEN .HEX文件后休息设备,我从闪存缓冲区获取“0xFF”,如果我再次(第二次)休息设备从闪存缓冲区获取默认状态。

我不了解为什么设备需要两次休息以从闪存缓冲区读取实际数据?

或者遵循错误的方法来获取来自falsh的默认数据。

它非常迫切地为我制作这个问题,请帮我解决它。

感谢致敬

rohit.

设备:
PM_DIALOG.
离线
最后一次露面:1天22小时前
职员
加入:2018-02-08 11:03
嗨rajapurerohit,

嗨rajapurerohit,

让我问你一些问题,以了解你的成就。你用固件烧掉了SPI闪光灯,用Smartsnippets Toolbox的Flash程序员使用,不是吗?下载您的代码并按重置后,您是否可以确认您的设备是否正确广告?您可以测试使用工具箱的Power Profiler。您是否根据我们的任何SDK示例?如果我能够正确理解,在启动后,您想从SPI闪存中读取一些数据,这是正确的吗?由于您拥有自定义板和自定义应用程序代码,因此为我提供一些额外的输入或屏幕截图是非常有帮助的,以便复制您的问题。

谢谢,PM_DIALOG.

Rajapurerohit.
离线
最后一次露面:11个月2天前
加入:2017-04-20 09:17
你好pm_dialog,

你好pm_dialog,

使用SmartSnippets Toolbox的Flash程序员使用Flash程序员,您将SPI Flash与固件烧掉 - 是的,

下载代码并按重置后,您是否可以确定您的设备是否正确广告 - 是的,设备广告

启动后,您想从SPI闪存中读取一些数据,这是正确的吗?- 是的,

在我的固件user_custs1_imple文件中,我已经写了一个函数,我将数据存储到/ relf flash。请在写入闪存配置和闪存读/写读/写函数的情况下,找到我的文件。

将数据存储到闪存缓冲功能 -

1. void StorePirsettings(空白);

2.无效CombineBDAWithBrightness(无效);

从闪存功能读取数据 -

1. void ReadPirsettings(空白);

2. void ui8updatelocaldataTabase(空白);

当设备启动(即,在User_setup文件void periph_init(void)中断开从应用程序并读取数据时,我将这些数据存储到闪存[void storeintoflash(void)]并从闪存[void readfromflash(void)]。

所以,在.hex文件刻录后,当重置时,我在缓冲区中获得(255)0xFF,如果再次重置设备,我得到0x00。第二个重置后,我的设备工作完美地存储并读取了完美。

我想知道为什么设备需要两次休息才能正常运行。请帮助我在哪里做错事,或者我遵循错误的步骤来调试。

感谢致敬

rohit.

PM_DIALOG.
离线
最后一次露面:1天22小时前
职员
加入:2018-02-08 11:03
嗨rajapurerohit,

嗨rajapurerohit,

我想你在user_app_disconnect中调用storeintoflash(),不是吗?所以,断开后。您可以查看您想要从SmartSnippet Toolbox的Flash程序员编写存储的数据的地址吗?你能看到你只看到0xFF的预期数据吗?如果您看到0xFF,这意味着该值尚未写入。此外,由于我能从已发布的代码片段中看到,您初始化并启用SPI闪存,均在ReadfromFlash()和StoreIntoflash()中,但我无法看到SPI初始化。请问SPI_FLASH外围示例的SPI_FLASH_PERITELAL_INIT()函数是否可以查看SDK的示例?您是否遵循此示例作为参考?

谢谢,PM_DIALOG.

Rajapurerohit.
离线
最后一次露面:11个月2天前
加入:2017-04-20 09:17
你好pm_dialog,

你好pm_dialog,

是的,在断开连接后,我将数据存储到闪存,但我不明白你提到的步骤跟随 - [你能检查你想要从SmartSnippet工具箱的闪存程序员写下存储的数据吗?你能看到你只看到0xFF的预期数据吗?]。

您可以简要介绍上述建议的步骤吗?

是的,我跟着spi_flash()代码,我明白的改变了,我在初始化步骤中做错了什么?

在另一个项目中,我面临着闪存的不同问题,我已经遵循的相同程序读/写我正在关注当前项目的内容。然而,

在这个项目中(另一个项目)设备停止广告。

感谢致敬

Rohit Rajapure.

PM_DIALOG.
离线
最后一次露面:1天22小时前
职员
加入:2018-02-08 11:03
嗨rajapurerohit,

嗨rajapurerohit,

我的意思是从智能代码箱工具箱的Flash程序员阅读SPI闪存。因此,断开连接并无需重置电路板后,您可以检查您的数据是否已成功存储。关于你的第二个问题,请在调试模式下运行代码吗?我要将固件下载到系统RAM中,热连接调试器并检查代码是否粘在某个地方。

谢谢,PM_DIALOG.

Rajapurerohit.
离线
最后一次露面:11个月2天前
加入:2017-04-20 09:17
嗨pm_dialog,

嗨pm_dialog,

谢谢你的快速回复,

我已经完成了以下步骤第一的项目-

1.首先,刻录.hex文件并重置设备[设备广告]

2.第二,我再次按SmartSnippet工具上的“连接”选项,然后单击“读取”选项,看到7000个向上地址数据为0xFF [无数据写入]

3.第三,我从App(BLE扫描仪)分配了数据并重复步骤2,能够在字段7000上查看地址上的数据

4.断开(断电)从USB中的设备并重新连接(上电)使用USB,再次重复步骤2,我能够看到数据。

这是我遵循的正确步骤吗?

并就我的第二个项目问题 -

在调试模式下,代码不会被粘在任何地方都在工作。我把代码保持了半小时运行。该设备仍然完美宣传。

只有在燃烧的.hex文件和从应用程序分配数据之后,如果我断开设备(USB)并再次上电设备(USB),我无法看到我的设备广告。

我的第一个项目我认为我们可以解决它,而是第二个项目我需要紧急帮助,这是一个主要问题。

所以请帮助解决我的第二个项目广告问题。

感谢致敬

rohit.

PM_DIALOG.
离线
最后一次露面:1天22小时前
职员
加入:2018-02-08 11:03
嗨rajapurerohit,

嗨rajapurerohit,

关于您的第一个项目,似乎数据没有写入SPI Flash。我会再次检查代码段。

关于您的第二个项目,我想您已将SPI Flash与固件和设备靴子烧毁。断开连接后,如果您重置电路板,您是否能够再次宣传?

谢谢,PM_DIALOG.

Rajapurerohit.
离线
最后一次露面:11个月2天前
加入:2017-04-20 09:17
你好pm_dialog,

你好pm_dialog,

这么晚才回复很抱歉。

第一个项目:

这是解决的,在关闭电源和电源周期后,我的设备在没有任何问题的情况下正确宣传。

对于第一个项目,问题是通知功能。由于通知函数的多个副本,设备在电源下电时未通告。现在解决问题,并且设备也在运行。

在第二个项目中:

是的,在.ehex文件刻录并重置检测后,设备是广告的。

现在对于两个项目,我面临同样的问题,其中重置检测闪存字段为0xFF,第二个重置存储器字段为0x00后。

感谢致敬

rohit.

PM_DIALOG.
离线
最后一次露面:1天22小时前
职员
加入:2018-02-08 11:03
嗨rajapurerohit,

嗨rajapurerohit,

为延迟道歉,但我无法复制您的问题。将数据写入闪存时可能会出错。

谢谢,PM_DIALOG.