W5100使用中的常见问题
来自:成都浩然
越来越多的嵌入式网络系统project师喜欢上了W5100,它集TCP/IP协议栈、以太网的MAC和PHY一体,不仅使系统性能得到非常大的提升,也给产品开发工作带来极大的方便。随着W5100的普及推广,我们的很多project师在开发过程中也遇到非常多的问题,我们把这些问题整理总结,与大家分享。W5300的使用中遇到的问题也相同能够參考处理。
1. 最常见的是焊接问题,因为W5100引脚密集,稍有不慎便会出现虚焊,短路的现象,因此在进行以后的硬件和软件调试前,先确认焊接无误。
2. 硬件复位没有处理好。因为W5100内部没有上电复位电路,因此必须外部给W5100一个可靠的复位信号。
3. W5100复位与CPU复位不同步。因为W5100要3.0V以上才可以正常工作,而某些低电压的CPU在2.7v就已经開始工作。CPU一正常工作就对W5100初始化,势必会造成初始化不成功的后果。
4.使用W5100的SPI接口,检查SPI的驱动程序是否正常,最简单的办法是向IP地址寄存器写入IP地址值,然后再读出来进行比較。假设错误,则检查W5100的硬件接线是否正确,如SEN (W5100的第31脚)是否为高电平等。然后检查软件中SCLK的时序,读/写命令是否正确,发送的字节是否先从MSB開始等等。
5. 使用并行总线则检查硬件连接是否正常,SEN应该接低电平。其他检查的办法与SPI总线同样。
6. 假设上面的方法还不可以解决这个问题,则检查RSET_BG (W5100的第1脚)的电阻,这是12K和300欧的电阻的串联,要求12.3K的阻值,该值误差应控制在1%以内。
7. 假设上述检查都正确无误,那么则须要检查W5100与RJ45之间的网络变压器的接线。网络变压器应使用1:1的变比。浩然电子都提供的有相关的图纸和资料。
仅仅要注意上述问题,W5100就能够正常工作。将W5100的MAC地址,子网掩码和IP地址配置好以后,就能够通过网内的计算机对W5100进行ping。
WIZnet官方微博: http://weibo.com/wiznet2012
W5100使用中的常见问题的更多相关文章
- Qt的安装和使用中的常见问题(简略版)
对于喜欢研究细节的朋友,可参考Qt的安装和使用中的常见问题(详细版). 目录 1.引入 2.Qt简介 3.Qt版本 3.1 查看安装的Qt版本 3.2 查看当前项目使用的Qt版本 3.3 查看当前项目 ...
- Qt的安装和使用中的常见问题(详细版)
对于太长不看的朋友,可参考Qt的安装和使用中的常见问题(简略版). 目录 1.引入 2.Qt简介 3.Qt版本 3.1 查看安装的Qt版本 3.2 查看当前项目使用的Qt版本 3.3 查看当前项目使用 ...
- EMV内核使用中的常见问题
EMV内核在使用上会由于调用不当引起的许多问题,本文旨在基于内核LOG(也就是与IC卡交互的指令LOG)的基础上,对一些常见问题作初步的分析与解答,方便不熟悉EMV规范的同学参考. 本文的前提是你已经 ...
- (转)sqlite3使用中的常见问题
1. 创建数据如果不往数据库里面添加任何的表,这个数据库等于没有建立,不会在硬盘上产生任何文件,如果数据库已经存在,则会打开这个数据库. 2. 如何通过sqlite3.dll与sqlite3.def生 ...
- 关于IScroll使用中的常见问题与解决方案
1.在iscroll4的滚动容器范围内,点击input框.select等表单元素时没有响应这个问题原因在于iscroll需要一直监听用户的touch操作,以便灵敏的做出对应效果,所以它把其余的默认事件 ...
- Maven使用中的常见问题整理
1.更新eclipse的classpath加入新依赖 1.在dependencyManagement里面加入包括版本在内的依赖信息,如: <dependency> <groupId ...
- pomelo使用中的常见问题
1.端口被占用, 有进程没杀干净. 用 pomelo kill --force 命令清一下进程.
- 使用multiprocessing中的常见问题
在python的解释器中,CPython是应用范围最广的一种,其具有丰富的扩展包,方便了开发者的使用.当然CPython也不是完美的,由于全局解释锁(GIL)的存在,python的多线程可以近似看作单 ...
- python(二):使用multiprocessing中的常见问题
简介在python的解释器中,CPython是应用范围最广的一种,其具有丰富的扩展包,方便了开发者的使用.当然CPython也不是完美的,由于全局解释锁(GIL)的存在,python的多线程可以近似看 ...
随机推荐
- Struts2学习笔记(二) 使用通配符动态调用方法
<package name="other" extends="struts-default"> <action name="xxx_ ...
- float存储方式编程验证
取出float在内存中的编码: void printFloatAsBinary(float f){ // 二进制的位数 const int bits = sizeof(f) * 8; // 将floa ...
- 如何开始一个模块化可扩展的Web App(转)
原文链接:http://avnpc.com/pages/start-a-modular-extensible-webapp 日志未经声明,均为AlloVince原创.版权采用『 知识共享署名-非商业性 ...
- 具体解释coredump
一,什么是coredump 我们常常听到大家说到程序core掉了,须要定位解决,这里说的大部分是指相应程序因为各种异常或者bug导致在执行过程中异常退出或者中止,而且在满足一定条件下(这里为什么说须要 ...
- Android Material Design-Creating Apps with Material Design(用 Material Design设计App)-(零)
转载请注明出处:http://blog.csdn.net/bbld_/article/details/40400031 翻译自:http://developer.android.com/trainin ...
- hdu4300之KMP&&EKMP
Clairewd’s message Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Other ...
- Json在asp.net开发中的应用
一.asp.net后台返回Json数据,前台js解析 在后台读取数据,并手动封装成Json格式: public ContentResult getUsersByOrgId(int Id) { Data ...
- javascript基础、语法
JavaScript基础(简介.语法) 一.JavaScript简介 1.JavaScript是个什么东西? 它是个脚本语言,需要有宿主文件,它的宿主文件是HTML文件. 2.它与Java什么关系? ...
- Flex中神奇的快速辅助 Ctrl+1
Adobe Flash Builder 中的快速辅助功能提供基于上下文的辅助,有助于您快速执行任务.通过快速辅助,可以在适用于当前代码段的操作列表中选择一个操作. 要调用快速辅助,请在编辑器的上下文菜 ...
- linux串口编程(c)
//linux c: 串口设置//串口操作无非以下几个://1 打开 //2 设置串口属性//3 read write //struct termios能够 ...