完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
电子发烧友论坛|
嘿,开始我会说我是很新的Microchip,但我已经阅读了很多形式,所以我会尽我所能沟通我的问题,同时明确解释我的项目的组成部分。我正在使用:-MPLAB X V3.50-和谐V2.01(beta)- PIC32 MX795F512L - SST25VF016B闪存- XC32 V1.42 comPielRead的问题是,网页永远不会在互联网上显示,我将在下面解释得更清楚。这就是我在和谐中所做的事情:-与HTTP服务器建立TCP/IP协议栈,并通过MPFSUPADAD启动的SST25驱动程序SPI驱动程序进行上传。-启动的内部以太网MAC驱动程序配置了SPI、SST25和以太网PIN启动的文件系统,其中媒体系统类型MPFS2和MediaTysSysfsMediaType Tyflash注册的SST25文件系统生成并上载。Web演示应用程序成功,并成功地实现了我自己的网页,但这是我在使用NVM驱动程序的时候。当我尝试使用我的外部SPI闪存(我必须使用外部,因为我的网页对于内部闪存来说太大)时,问题就出现了。一切都很好,直到我被提示上传我的MPF文件通过互联网浏览器。当我选择我的.bin文件时,网页进入无限等待循环。我仔细阅读了代码,发现已经找到了映像,并且调用了媒体文件系统扇区写入函数。这链接到St25的EraseWrrad函数,该函数对HooLeReaseWreWrad函数进行排队。当系统任务运行时,找到队列并调用HooLeReSeWreWrad。这就是问题所在。该程序永远无法通过擦除扇区和写切割器。我知道这一点,因为我在HooLeReaseWrad函数的每种情况下都有调试消息。现在是我需要帮助的地方。我可以成功地上传和导航使用NVM驱动程序,但正如我所说的,我想使用SPI闪存。有没有人知道为什么SST25擦拭功能不能完成,以及我如何修复这个或修改我的代码,使网页启动和运行使用我的SPI闪存。我读到,和谐MPFS使用阻塞功能,SST25不,这是问题,如果是这样,我怎么解决这个问题?我也知道使用RTOS是一种解决方案,但是必须有另外一种方式。谢谢!
|
|
相关推荐
8个回答
|
|
|
有没有替换?
|
|
|
|
|
|
SST26系列ChIPHStp://www. MigCHIP.COM/WWWORDSTMS/En/SST25VF016BIT在顶部被注意到。
|
|
|
|
|
|
嗨,我同意。SST25不推荐用于新设计……SST26在开始新项目时要安全得多。您可能首先应该尝试只使用SPI总线上的闪存,并且当该工作尝试添加RTCC laterRegards时
|
|
|
|
|
|
好的,如果有任何一个剩下的灵魂仍在读这个,我已经解决了我以前的问题,在用示波器观察SPI端口之后变得非常明显,但是我遇到了另一个问题,我认为这是最后一个问题。我点击HTTP浏览器上的“上传”MPFS图像。大约8秒后,我得到“MPFS更新成功”的消息,然后有一个链接到“网站主页”。当我点击链接时,我被重新路由回最初的“404文件未找到;上传MPFS图像”。有人知道,(或问我更多的问题,如果我不够清楚),或有任何建议,为什么会发生这种情况。我的想法是,我在擦除和写入存储在SPI闪存中的文件(来自MPFS生成器),同时进行擦除写操作。我不确定SPI闪存中存储MPFS生成器文件的地方,但是我假设在起始地址0x000。我试图通过在更高的地址开始写擦写来保护这个内存位置(第一个4K字节),但这是不成功的。再次感谢。
|
|
|
|
|
|
|
|
|
我找到了解决办法。如果您很好奇,但是底线是我向MPFSDiskRead函数添加了一些条件,因为SPI读取正在排队,但是从未完成,所以您可以给我发消息。
|
|
|
|
|
|
嗨,在驱动程序代码本身有问题吗?如果是这样,你应该发布它,以便它在未来的和谐版本中得到提升。
|
|
|
|
|
|
我只是个初学者,所以我不确定我做的是好还是坏,但它确实对我有用,如下所示:在函数MPFSDiskRead中有一个do.loopdo{SYS_FS_MEDIA_MANAGER_TransferTask(mpfsObject.diskNumber);command.=SYS_FS_MEDIA_MANAGER_Command.Get(mpfsObject.diskNumber,commandHandle);}而此时(command.==SYS_FS_MEDIA_COMMAND_IN_PROGRESS)如果命令状态没有进展,则条件是退出循环。由于SST25驱动程序现在对任务进行排队(而不是立即执行),命令状态将被“排队”,并且我们将脱离循环,而不执行实际的读取。我是如何在(...)do{SYS_FS_MEDIA_MANAGER_TransferTask(mpfsObject.diskNumber);command.=SYS_FS_MEDIA_MANAGER_CommandStatusGet(mpfsObject.diskNumber,commandHandle);}.((command.==SYS_FS_MEDIA_COMMAND_IN_PROGRESS)|(commandStat希望与帮助/是一个可行的解决方案。
|
|
|
|
|
只有小组成员才能发言,加入小组>>
MPLAB X IDE V6.25版本怎么对bootloader和应用程序进行烧录
473 浏览 0 评论
5793 浏览 9 评论
2334 浏览 8 评论
2224 浏览 10 评论
请问是否能把一个ADC值转换成两个字节用来设置PWM占空比?
3530 浏览 3 评论
1123浏览 1评论
有偿咨询,关于MPLAB X IPE烧录PIC32MX所遇到的问题
1095浏览 1评论
我是Microchip 的代理商,有PIC16F1829T-I/SS 技术问题可以咨询我,微信:A-chip-Ti
873浏览 1评论
MPLAB X IDE V6.25版本怎么对bootloader和应用程序进行烧录
475浏览 0评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-2 01:17 , Processed in 1.010244 second(s), Total 88, Slave 71 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
2933