完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
你好,伙计们,我需要一些帮助。我遇到了和谐2.04的重大问题。我使用一个PIC32 MK1024GPE064和一个由SPI1连接到PIC的Enc2J60。Enc8J60是唯一的客户端。SDI1在引脚12,引脚13的SDO1,引脚46的SCK1,EnC的SS线连接到PIN 44(RB6)I配置SPI(静态)和包含TCPIP栈的EnC。每当我将错误的SPI驱动程序实例分配给Enc2J60配置时,PIC就通过初始化,但显然以太网连接将无法工作。当我将正确的驱动程序实例号分配给EnC配置(配置为SPI驱动程序实例0)时,程序在某处。(对于基于Enc25J60的计时器的LED不闪烁),我应该使用静态或动态SPI驱动实现吗?(Enc8J60是唯一的客户端)当我使用SPI动态时,程序也被卡在某处(没有闪烁检查LED)是与SPI时钟BROD速率相同的在Enc2J60中的SPI BPS?我想是的。你能帮忙吗?顺便说一下。TrIS/La/LAT配置也没有通过协调正确地完成。最好的,安德烈亚斯。
以上来自于百度翻译 以下为原文 Hello Fellows, I need some help please. I encounter major issues with HARMony 2.04. I use a PIC32MK1024GPE064 and a ENC28J60 connected by SPI1 to the pic. The ENC28J60 is the only client. SDI1 is at pin 12, SDO1 at pin 13, SCK1 at pin 46, and the SS line of the ENC is connected to pin 44 (RB6) I configured SPI (static) and the ENC including TCPIP stack. Whenever I assign a wrong SPI Driver Instance number to the ENC28J60 configuration the PIC comes through the initialization, but clearly the Ethernet connection won't work. When I assign the correct Driver Instance number to the ENC configuration (SPI Driver Instance 0 as configured) the program hangs somewhere. (The timer based LED does not blink) For the ENC28J60 should I use a static or dynamic SPI driver implementation? (ENC28J60 is the only client) When I use SPI dynamic the program also gets stuck somewhere (no blinking check led) Is SPI BPS in ENC28J60 the same as SPI ClockBoud rate? I assume so. Could you please help. btw. TRIS/ANSEL/LAT configuration is also not done correctly by Harmony. Best, Andreas |
|
相关推荐
5个回答
|
|
不知道你为什么指示H2.04,当我们刚刚得到你的2.05工作。PIC32 MK是一个非常新的部分,显然没有调和。SPI驱动程序有许多问题,与针分配在2.04和中断设置在2.04和2.05。在中断.c这里有一个中断向量调用的地方。是自动生成的.ValuyO-ISR(πSP66Rx矢,IPL1AUTO),nthand LoxxStistAs0(空隙){DrviSpILIX任务(SysObj.SPIObjordx0);} SuthoLo.IsR(πSP66Tx矢,IPL1AUTO)。是错误实例0(空){DrviSpILIX任务(SysObj.SPIObjordx0);}
以上来自于百度翻译 以下为原文 Not sure why you are indicating H2.04 when we just got your 2.05 working. The PIC32MK is a very new part and is clearly not vetted in Harmony. The SPI driver has a number of issues that that to do with pin assignment in 2.04 and interrupt setup in both 2.04 and 2.05. In the Interrupt.c here is a place for interrupt vector calls. The following has to be added. Is was to be auto generated. void __ISR(_SPI6_RX_VECTOR, ipl1AUTO) _IntHandlerSPIRxInstance0(void) { DRV_SPI_Tasks(sysObj.spiObjectIdx0); } void __ISR(_SPI6_TX_VECTOR, ipl1AUTO) _IntHandlerSPITxInstance0(void) { DRV_SPI_Tasks(sysObj.spiObjectIdx0); } void __ISR(_SPI6_FAULT_VECTOR, ipl1AUTO) _IntHandlerSPIFaultInstance0(void) { DRV_SPI_Tasks(sysObj.spiObjectIdx0); } |
|
|
|
谢谢你的留言。为什么是SPI6?我只是使用SPI1。已知什么SPI配置与Enc2J60一起工作?动态的?静态的?我要更新到2.05
以上来自于百度翻译 以下为原文 Thank you for your message. Why _SPI6 ? I just use SPI1. What SPI configuration is known to work with enc28j60? Dynamic? Static? I'm going to update to 2.05 |
|
|
|
在2.04,PIC32 MK在MHCI下落的两个选择上都显示出MISO,而没有指出哪一个是输出。我认为对于所有SPI(S)而言,PIN可以基于从属或主来输入或输出。在2.05,PIN设置是固定的,但是Y没有做中断。我想它在发布笔记中指明了一个只有H2.05的动态可用的地方,它也显示了H2.05中的所有东西都在beta中。因为这一点和一些GFX减速和电阻触摸,我将我的项目带回H1.08。SSOR的一个较大的DA与板上扩展RAM,所以我可以双重缓冲的图形。FYI:埃文虽然PIC32 MK有2个USB。几乎没有什么支持来运行它们。只有一个例子,没有MHC支持来做到这一点,也没有迹象表明它何时会到来。
以上来自于百度翻译 以下为原文 It does not matter if it is SPI1 or SPI6. In 2.04 the PIC32MK would show MISO on two selection in the MHC drop down without indicating which one was the output. I think is the case for all SPI(s) where the pin could be input or output based on Slave or Master. In 2.05 this pin setup was fixed, but they did not do the interrupts. I think it indicates in the release notes some place that only Dynamic is available in H2.05. It also show that everything in H2.05 is in beta. Because of this and some GFX slowdown and resistive touch, I am taking my project back to H1.08. I would have the change the processor to one of the larger DA with on board expanded ram so I could double buffer the graphics. FYI: Evan though the PIC32MK has 2 USB. there is very little support to run them both. There is only one example and there is no MHC support to do this and no indication when it will come. |
|
|
|
你好,约翰,非常感谢你的宝贵帮助。它现在起作用了!我做了修改,正如你所建议的,在一个小的变化。必须让下面的Enc25J60工作与PIC32 MK1024GPE064:我升级到和声2.051,手动卸载MHC插件,并重新安装MHC插件从和声安装文件夹。如果将定义为(y,pIC32,xx1)的行“y”定义为“在项目属性中定义的(γ-PIC32×xx1)”(G.PIC32×CX*),则gt;xc32(全局选项)-& gt;公共包含的DRI,将附加路径添加到正常的和声结构中:…sRCStRysCyFig 默认…..…..…\…\…Microchip和谐 …..…V2Y05Y001\框架\驱动程序Enc8J60SRCDicroicC:Microchip和谐 V2O05Y001FraseEnc25J60SRCStimeCropEdEdStEc: Microchip 和谐 V2Y05Y001FraseBug Enc8J60SrcDeal\RunninGyStEATEC:V2Y05Y001\框架Enc8J60SRCMaultPoCuTe: Microchip和谐 V2O05Y01Fr.Enc8J60SRCDealsBuC:Microchip和谐 V2O05Y001FraseEnc25J60SRCDealEngRealasiTrase:StaveC:Microchip 和谐 V2Y05Y001FraseBug EnC25J60SRCDrimeBuffSPII增加了JohnSnct的修改:在文件SythySuff.C中,下面的LISESVAL IOR ISR(πSPI1RX向量,IPL1AUTO),in thand LeListXiston 0(空隙){Drv.SPILION任务(SysObj.SPObjordx0);} Vo.Y-ISR(OSP1,TXX向量,IPL1AUTO)。Obj.SpObjordx0);} Vo.Y-ISR(安德烈亚斯,Sp11OrthtFixFixor,IPL1Auto),in thand LeLaulaultStistAs0(空隙){DrviSpILIX任务(SysObj.SpObjordDx0);}所有其他事物都应该是直截了当的。
以上来自于百度翻译 以下为原文 Hello John, Thank you very much for your valuable help. It works now! I made the modification as you suggested with a minor change in it. Had to to the following to get ENC28J60 to work with PIC32MK1024GPE064: I upated to Harmony 2.051 and manually uninstalled the MHC plugin and reinstalled the MHC Plugin from the Harmony installation folder. In tcpip_heap_internal.c I changed the line “#if defined(__PIC32MX__) to “#if defined(__PIC32MX__) || defined(__PIC32C__)” In Project Properties -> XC32 (Global Options) -> Common include dirs I added the followng paths additionally to the normal Harmony configuration: ..srcsystem_configdefault ................microchipharmonyv2_05_01 ..srcsystem_configdefault ................microchipharmonyv2_05_01frameworkdriverenc28j60srcdynamic C:microchipharmonyv2_05_01frameworkdriverenc28j60srcdynamicclosed_state C:microchipharmonyv2_05_01frameworkdriverenc28j60srcdynamicrunning_state C:microchipharmonyv2_05_01frameworkdriverenc28j60srcdynamicpacket C:microchipharmonyv2_05_01frameworkdriverenc28j60srcdynamicbus C:microchipharmonyv2_05_01frameworkdriverenc28j60srcdynamicinitialization_state C:microchipharmonyv2_05_01frameworkdriverenc28j60srcdynamicbusspi I added a modification of Johns hint: In the file system_interrupt.c the following lines void __ISR(_SPI1_RX_VECTOR, ipl1AUTO) _IntHandlerSPIRxInstance0(void) { DRV_SPI_Tasks(sysObj.spiObjectIdx0); } void __ISR(_SPI1_TX_VECTOR, ipl1AUTO) _IntHandlerSPITxInstance0(void) { DRV_SPI_Tasks(sysObj.spiObjectIdx0); } void __ISR(_SPI1_FAULT_VECTOR, ipl1AUTO) _IntHandlerSPIFaultInstance0(void) { DRV_SPI_Tasks(sysObj.spiObjectIdx0); } Everything else should be straight forward. Best, Andreas |
|
|
|
请打开一张Microchip的票,这样他们就可以得到修复。他们很好地监控这个论坛,但并不是所有的问题都被报告为固定的。即使是那些问题,也可能无法进入下一个版本。问题必须重新报告才能完成。
以上来自于百度翻译 以下为原文 Please open a ticket with microchip on this so they will get it fixed. They monitor this forum well, but not all issues get reported to be fixed. And even the ones that do, may not make it to the next release. The issues have to be re-reported to get it done. |
|
|
|
只有小组成员才能发言,加入小组>>
5146 浏览 9 评论
1993 浏览 8 评论
1921 浏览 10 评论
请问是否能把一个ADC值转换成两个字节用来设置PWM占空比?
3162 浏览 3 评论
请问电源和晶体值之间有什么关系吗?PIC在正常条件下运行4MHz需要多少电压?
2218 浏览 5 评论
714浏览 1评论
601浏览 1评论
有偿咨询,关于MPLAB X IPE烧录PIC32MX所遇到的问题
484浏览 1评论
PIC Kit3出现目标设备ID(00000000)与预期的设备ID(02c20000)不匹配。是什么原因
615浏览 0评论
513浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-13 09:24 , Processed in 1.188526 second(s), Total 54, Slave 48 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号