完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
一段时间后,我开始寻找一种可行的解决方案,将以太网控制添加到我的PSoC 5LP项目中,不幸的是,我没有找到一种可行的解决方案。在尝试了其他几种可供选择的解决方案之后,我开发了在ARDUNO盾上使用的W5100 WiZNET设备的驱动程序的附加实现。
这个组件是一个纯软件驱动程序(您需要将它链接到一个SPICONT),并且它现在使用W5100设备的内置协议支持TCP、ARP和UDP。它还支持SpPoto共享以允许应用程序利用SPI总线处理多个连接设备的能力。驱动程序还包括宏,用于使用来自CyPress库的SPIMor SCB组件的驱动程序。 这不是C++代码从ARDUIO库(Re.EntEnt14 100个项目在100天内)的转换;它是从头开始编写的,作为PSoC设备的一个组件。 我已经使用PSoC 4和PSoC5/5LP测试了这个,我已经成功地用PSoC 5LP建立了一个6端口应用程序。驱动程序还没有完全测试PSOC 3,但我相信它应该基于一些初始测试结果。 希望大家都有这样的乐趣,使用这个组件,我已经写了! 卡盘 E2FLIFYW5100.CYWRK.SARVEVE01.ZIP 682.8 K 以上来自于百度翻译 以下为原文 A while back I started looking for a viable solution to adding Ethernet control to my PSoC 5LP project, and unfortunately, I did not find a solution that would work in . After trying several other alternative solutions, I developed the attached implementation of a driver for the W5100 WIZnet device used on the Arduino shield. This component is a software-only driver (you will need to link it to a SPI port), and it currently supports TCP, ARP, and UDP using the built-in protocols of the W5100 device. It also supports SPI port sharing to allow the application to take advantage of the ability of the SPI bus to handle multiple connected devices. The driver also includes macros for using the driver with the SPIM or SCB components from the Cypress libraries. This is not a conversion of the C++ code from the arduino library (ref. Element14 100 Projects in 100 days); it was written from scratch as a component for the PSoC devices. I have tested this using the PSoC 4 and PSoC 5/5LP and I have sucessfully built a 6-port application with a PSoC 5LP. The driver has not yet been fully tested o nthe the PSoC 3, but I believe that it should work based on some initial testing results. Hope everyone has as much fun using this component as I had writing it! -Chuck |
|
相关推荐
42个回答
|
|
我看了一下你张贴的那个项目,是的,你是对的。执行TCPReaveVE()WUDL不会导致接收数据指针被更新,这也将与UDPARVEN()相同。
看来,在ApPurrxDATA()函数中发现了一个bug,它阻止RX读指针在将数据从缓冲区中取出时被更新。“标志”参数被提供作为未来增强的占位符,例如不必读取整个缓冲区到内存中的前瞻处理。例如流处理,在这里,您希望将大部分数据保存在TEH芯片中以保存芯片PSoCmemory。 有时我们太聪明了,因为我们自己的好:)我已经修复了bug,并建立了更新的组件V1.1。更新的图书馆附在这个帖子上。 另外,谢谢你发现这个bug,如果你发现其他bug,请告诉我。 谢谢 扔出 E2FLIFY W5100.CYLIB ZIP 2.8兆字节 以上来自于百度翻译 以下为原文 I took a look at the project which you ahd posted, and yes, you are correct. Executing a TcpReceive() woudl not cause the receive data pointer to be updated, also this would have been the same with the UdpReceive() as well. It appears that you have discovered a bug in the _ProcessRxData() function that was preventing the Rx read pointer from being updated when pulling data out of the buffer. The "flag" parameter was provided as a placeholder for future enhancement, such as look-ahead processing without having to read the entire buffer in to memory. For example stream processing, where you want to keep the bulk of the data in teh chip to conserve chip PSoC memory. Sometimes we're too smart for our own good :) I have fixed thebug and build an updated component V1.1. The updated library is attached to this post. Also, thanks for finding the bug, and let me know if you find any others Thanks Chuck
|
|
|
|
谢谢你的最新文章,我订购了一个设备(好价钱)。
许多人需要一点帮助翻译英文… 米迦勒。 以上来自于百度翻译 以下为原文 Thanks for your latest post Pavloven, I have ordered a device (good price). Many need a little help with English translation... Rgds Michael. |
|
|
|
嗨,ChuckE!我很高兴能帮助你。
在你看来,我是有意义的创造的两个组成部分:1。PSOC 3/4/5的通用性是已经存在的2。分别使用DMA数据传输/接收psoc5。我想你已经看到这个帖子:添加以太网到PSoC3 / 5设计http://www.cypress.com/?应用=论坛&;ID = 2232 &;摆脱= 49032注意从Avast的消息:LWIP 1.4.1实施对柏psoc5装置:https://github.com/lrds/lwip-psoc5采用DMA数据传输/接收。 以上来自于百度翻译 以下为原文 Hi, ChuckE! I'm glad I could help you. Does it seem to you that lm makes sense to create two components: 1. Universal for PSoC 3/4/5 - is one that already exists 2. Separately for PSoC5 using DMA for data transmission / reception. I guess you have seen this thread: Adding ethernet to a PSoC3/5 design http://www.cypress.com/?app=forum&id=2232&rID=49032 Pay attention to the message from avast: lwip 1.4.1 implementation on Cypress PSOC5 device: https://github.com/lrds/lwip-psoc5 It uses DMA for data transmission / reception. |
|
|
|
感谢您抽出时间查看组件。ITOO对5500感兴趣,并为我工作的项目评估了设备。不幸的是,WizNET与他们在整个家庭中的设备接口不一致,并且驱动程序不会为其他组件工作。
我有一个与W5200一起工作的版本,我已经开始了W5500的工作,但是我还没有达到能够得到看起来像是在硬件中测试的东西的程度。这主要是因为在构建一个与所有家庭一起工作的驱动程序方面有一些明显的扩展。所以,目前我对W5200代码与W5100的代码已经工作然后加入5500处理合并过程。 合并完成后,我会发布一个更新。 以上来自于百度翻译 以下为原文 Thanks for taking the time to check out the component. I too am interested in the 5500, and evaluated the device for a project on which I was working. Unfortunately, WizNET was not consistent with their device interface across the family and the driver won't work right out of the box for other components. I have a version that works with the W5200, and I've started work on the W5500, but I've not gotten to the point of being able to get something that looks like it's ready for testing in hardware. This is mainly due to the somewhat obvious extension of just building a driver that works with all of the family. So, presently I'm in the process of merging the W5200 code with the W5100 code that is already working then adding in the 5500 processing. I'll post an update when the merge is complete. |
|
|
|
也许这会有所帮助:
HTTP://www. ESP8266COM/ HTTPS://GITHUBCOM/AppStActhH/ESP8266配置 HTTPS://ScGARIL.WordPress .COM/2014/11/10/ESP8266A趣味性开发/ 以上来自于百度翻译 以下为原文 Maybe this will help: http://www.esp8266.com/ https://github.com/AppStackTH/ESP8266-Config https://scargill.wordpress.com/2014/11/10/esp8266an-interesting-development/ |
|
|
|
使用DMA传输,psocand W5100是一种有趣的addiiton组件,和我目前在寻找这种支持增强的psoc5 / 5lp版。我想加入dmato数据块的传输可能会很有帮助,但是,由于所有的转移发生在32位块组件的整体运行速度可能不会增加太多的设备由于W5100的开销。不幸的是,这是W5100的一个限制。
获得一个大的速度增加,considder使用W5200,其中数据传输支持突发模式,理想的情况为DMA。 我看着加用变形监测网分析子系统从原理图编辑器配置设置一个选项的能力,因为这将使所有代码的连续和bug修复/增强版将在一个replacated到其他芯片的版本。此外,这将有助于加快回归测试。 有一个大的差异之间的这部分做什么和LwIP的港口。主要的,最lwipdoes是由W5100器件采用0处理器的参与。W5100是一个asicthat包括物理层,该TCP / IP报文处理引擎,因此只需要额外的软件之外的协议,不直接支持的芯片实现底层设备界面(TCP / UDP / PPP),例如DHCP,STMP,和WWW 以上来自于百度翻译 以下为原文 Using DMA for transfers betwen the PSoC and W5100 would be an interesting addiiton to the component, and I 'm presently looking in to this to support an enhancement to the PSoC5/5LP version. I think that adding DMA to the transfer of data blocks could help quite a bit, but, since all of the transfers occur in 32-bit blocks the overall operational speed of the component might not increase much due to the overhead of the W5100 device. Unfortunately this is a limitation of the W5100. To obtain a big speed increase, considder using the W5200, where data transfers support burst mode, which an ideal situation for DMA. I'm looking at adding the ability to use DMA as an option for the configuration settings from the schematic editor, since that will keep all of the code contiguous and a bug fix/enhancement in one version would be replacated in to the other chip versions. Also, it will help to speed regression testing. There is a big defference betwen what this component does and what the port of lwip does. Mainly, most of what LWIP does is handled by the W5100 device with 0 processor involvement. The W5100 is an ASIC that includes a PHY, MAC and the TCP/IP engine for processing packets, thus the only additional software required beyond the low-level device interface are for the implementation of protocols that are not directly supported by the chip (TCP/UDP/PPP), for example DHCP, STMP, and WWW. |
|
|
|
在此期间,我成功地获得了当前WiNETIOLBRARYARBSD的工作端口。
简单的UPD和TCP环回看起来不错。 使用W550IO(W5500)芯片和PSoC 5。 如果感兴趣,请告诉我。 米迦勒。 以上来自于百度翻译 以下为原文 In the meantime I have managed to get a port of the current Wiznet ioLibrary_BSD working. Simple upd and tcp loopbacks look ok. Using W550io (W5500) chip along with psoc 5. let me know if interested. rgds Michael. |
|
|
|
ESSP83266板使用单独的电源吗?
米迦勒。 以上来自于百度翻译 以下为原文 Does the [size=11.1999998092651px]ESP83266 board use a separate power supply? Rgds Michael. |
|
|
|
而你的幽默家……))
你具体说“等待SPI操作完成”再继续吗?我做了两个修正,程序启动了,我丢失了踪迹(但是,我不确定我是否正确地理解了这个问题)。附件中的更改 以上来自于百度翻译 以下为原文 And you humorist ......))) You specifically put "Wait for SPI operation to complete" before proceeding? I made two corrections, the program is started, and I lost trail (( However, I'm not sure that I have correctly understood the problem. My changes in the attached file |
|
|
|
哦,是的,因为我打算在我的项目中使用WiZ550IO,这对我帮助很大。也许我可以把它移植到PSoC4,这样会更好…
谢谢, HLI 以上来自于百度翻译 以下为原文 Oh yes, since I intend to use a Wiz550io within my current project, this would help me tremendously. Maybe I can port it over to PSoC4, that would be even better... Thanks, hli |
|
|
|
不,但是…300毫安/ 3.3V电源是绝对需要的,以及至少10μF去耦电容器…HTTP://www. ESP8266COM/VIEW?PHP?f=6和t=497和p=2293;
以上来自于百度翻译 以下为原文 No, but ..... A 300 mA/3.3V power supply is definitely required, as well as at least a 10 µF decoupling capacitor..... http://www.esp8266.com/viewtopic.php?f=6&t=497&p=2293&hilit=supply#p2293 |
|
|
|
|
|
|
|
这里是修剪的样本代码。(WZNET W550IO PSOC5)
请。注意项目设置(JPG),我希望我包括了一切… 祝你好运,米迦勒。 以上来自于百度翻译 以下为原文 Here is the trimmed sample code. (WIZNET W550io PSoC5) Pls. note project settings (jpg), I hope I included everything... good luck, Michael. |
|
|
|
嗨,查克和帕夫洛文,
我已经使用了CY8CITK-050和ARDUINO以太网屏蔽的示例项目。但我无法得到我的TCP客户端的答复。我也尝试ping设备,但它没有响应。你能帮我吗? 我在这里附上我的档案。 第二个问题是,当我去调试& gt;& gt;Windows & gt;gt;组件时,它没有显示在组件调试窗口中列出的任何组件。我试图找出SPIMU1组件是否在调试模式下工作。请参阅附加的1.pNG文件。 1.PNG 333.4 K 测试W5100.Cyrkk.Access 01.Zip 2.4兆字节 以上来自于百度翻译 以下为原文 Hi ChuckE and pavloven, I have used your example project with CY8CKIT-050 and Arduino Ethernet shield. But I can not get the reply on my TCP client. I also try to ping the device but it is not responding. Can you help me with that.? I am attaching my archive here. Second problem is when i go to Debug >> Windows >> Component, It does not show any component listed in component debug window. I am trying to find out if SPIM_1 component is working or not in debug mode. See attached 1.png file.
|
|
|
|
|
|
|
|
|
|
|
|
首先,我抱歉打扰了这个伟大的线索。我已经把“SPI”的PIN从P0Y0::P0Y3改为P6Y6,P6Y0,P12Y7和P126,它现在正在工作。看来我的CY8CKIT-050有问题。
以上来自于百度翻译 以下为原文 First of all I apologies for disturbing this great thread. I have changed pin of 'SPI' from P0_0::P0_3 to P6_6, P6_0, P12_7 and P12_6 and it is working now. It seems that I have problem in my CY8CKIT-050. |
|
|
|
SPI0HS00MYRADE()调用读取SPI SS引脚的状态,用于选择W5100设备。由于在SCB的状态寄存器中没有对应的TI SPIZON(有一个可以生成的ITRIPUT),SCBCODE读取用于连接到W5100的SSX的PIN的状态。当引脚为高电平时,SCBIS可用于写入,当低时,它是忙碌的。
与此相对应的是SPIM中的斯皮尔多涅旗。我不确定锁上了什么(我以前在另一个项目上经历过类似的事情),但是今天我会关注它。 以上来自于百度翻译 以下为原文 The SPI0_ss0_m_Read () call reads the state of the SPI SS pin that is used to select the W5100 device. Since there is no counterpart ti SPI_DONE in a status register for the SCB (there is an iterrupt that could be generated), The SCB code reads the state of the pin used for the SSx attached to the W5100. When the pin is high, the SCB is available for writing, when low, it is busy. The counterpart to this is the SPI_DONE flag in the SPIM. I'm not sure what is going on with the lockup (I ave experienced something similar before on another project), but I'll look in to it today. |
|
|
|
|
|
|
|
嗨,伙计们,你能帮我解决这个问题吗?我有一个W5100驱动程序的问题。
以上来自于百度翻译 以下为原文 hi guys, can you help me with this, i have a problem with the W5100 driver |
|
|
|
只有小组成员才能发言,加入小组>>
752个成员聚集在这个小组
加入小组2075 浏览 1 评论
1829 浏览 1 评论
3645 浏览 1 评论
请问可以直接使用来自FX2LP固件的端点向主机FIFO写入数据吗?
1766 浏览 6 评论
1517 浏览 1 评论
CY8C4025LQI在程序中调用函数,通过示波器观察SCL引脚波形,无法将pin0.4(SCL)下拉是什么原因导致?
516浏览 2评论
CYUSB3065焊接到USB3.0 TYPE-B口的焊接触点就无法使用是什么原因导致的?
370浏览 2评论
CX3连接Camera修改分辨率之后,播放器无法播出camera的画面怎么解决?
413浏览 2评论
360浏览 2评论
使用stm32+cyw43438 wifi驱动whd,WHD驱动固件加载失败的原因?
868浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-29 11:12 , Processed in 1.472391 second(s), Total 117, Slave 100 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号