糖糖love丽 发表于 2013-7-30 09:53:23

xukai871105 发表于 2013-7-27 18:51 static/image/common/back.gif
呵呵!这些配置的内容虽然复杂,但是耐性的对比代码和数据手册也就不那么复杂了!

例如STM32F107,对比 ...

嗯 ,我主要是没有ENC28J60这块芯片了,avr32集成了mac了 ,所以还怎么配置参数了,是通过单片机来配置吗,然后才能用来移植uIP协议栈吗

xukai871105 发表于 2013-7-31 08:29:24

糖糖love丽 发表于 2013-7-30 09:53 static/image/common/back.gif
嗯 ,我主要是没有ENC28J60这块芯片了,avr32集成了mac了 ,所以还怎么配置参数了,是通过单片机来配置吗 ...

是的,AVR32应该和STM32F107使用类似。
我没有接触过AVR32,但是感觉上来说和内部带MAC的芯片使用起来差不多!

liu100149 发表于 2013-7-31 23:42:36

xukai871105 发表于 2013-7-31 08:29 static/image/common/back.gif
是的,AVR32应该和STM32F107使用类似。
我没有接触过AVR32,但是感觉上来说和内部带MAC的芯片使用起来差 ...

ENC28J60有时掉包可能是那几方面的原因

xukai871105 发表于 2013-8-1 09:19:55

liu100149 发表于 2013-7-31 23:42 static/image/common/back.gif
ENC28J60有时掉包可能是那几方面的原因

以我现在的能力和经验,没有办法回答你这个问题。

liu100149 发表于 2013-8-6 15:46:28

xukai871105 发表于 2013-8-1 09:19 static/image/common/back.gif
以我现在的能力和经验,没有办法回答你这个问题。

怎么会

xukai871105 发表于 2013-8-7 08:39:36

liu100149 发表于 2013-8-6 15:46 static/image/common/back.gif
怎么会

我没有认真仔细的做过这方面的测试,所以原因更不好说!

请问你已经遇到了 数据包丢失的现象了吗。

lhwaizhu 发表于 2013-8-9 10:15:45

收藏了..谢谢

苹果520 发表于 2013-8-9 13:20:53

xukai871105 发表于 2013-5-31 15:50 static/image/common/back.gif
先使用了AVR Studio 6
然后用了 STM32 IAR 5.5

我用IAR5.3编译报错,是不是版本的问题啊

xukai871105 发表于 2013-8-9 17:02:18

苹果520 发表于 2013-8-9 13:20 static/image/common/back.gif
我用IAR5.3编译报错,是不是版本的问题啊

IAR 5.5版本指的是ARM版本,所有的代码修改到了STM32平台

wangkangming 发表于 2013-8-12 13:48:41

xukai871105 发表于 2013-2-10 23:26 static/image/common/back.gif
接着几天还有uIP或是lwIP,http网页控制相关内容!
请关注,有问题请提出,共同交流! ...

求uIP,LWIP链接地址

xukai871105 发表于 2013-8-12 14:56:18

wangkangming 发表于 2013-8-12 13:48 static/image/common/back.gif
求uIP,LWIP链接地址

http://www.amobbs.com/thread-5538167-1-1.html
uIP的链接,STM32硬件,非AVR

LwIP还在我的电脑里面,整理有难度。

不过我一定会总结的,以后会视频+文档+代码 形式。

wangkangming 发表于 2013-8-12 19:31:03

非常感谢。。{:handshake:}

lq1505400 发表于 2013-8-14 09:51:17

mark!好东西 ,收藏,谢谢分享

天之痕111 发表于 2013-8-17 15:03:22

{:smile:}{:smile:}学习楼主理解很透彻

leafzq 发表于 2013-8-19 09:53:14

关键要看收发数据测试情况,测试结果才能证明驱动的效率、性能及稳定性。

华丽的转身 发表于 2013-8-20 17:04:21

Wxy8030 发表于 2013-3-7 13:28 static/image/common/back.gif
这个片子适合低速小型应用,比如门禁监控类;

现在 ENC424J600 出来了,速度飞快,配合有总线的处理器还是 ...

我现在也正用ENC424J600,总体感觉比ENC28J60稍微复杂一点,大概都差不多~协议栈为什么不用微芯官网,用wIP,uIP协议栈啊,不是很理解

petermxw 发表于 2013-9-13 18:16:10

MARK 最近打算弄弄这个模块

业未央 发表于 2013-9-13 23:12:35

你好,可以把AVRNET的链接地址再发一遍吧,这个无效了

xukai871105 发表于 2013-9-15 13:13:04

业未央 发表于 2013-9-13 23:12 static/image/common/back.gif
你好,可以把AVRNET的链接地址再发一遍吧,这个无效了

http://www.avrportal.com/?page=avrnet

wangxuedong 发表于 2013-9-15 13:25:09

给力啊哈哈

业未央 发表于 2013-9-16 19:41:52

xukai871105 发表于 2013-9-15 13:13 static/image/common/back.gif
http://www.avrportal.com/?page=avrnet

十分感谢

freeboyxd 发表于 2013-9-16 21:12:54

好贴,收藏

ben001 发表于 2013-9-22 17:29:20

最近也在看ENC28J60的驱动,看到头都大了。楼主的文章写的不错!!!!

cnbwh 发表于 2013-9-22 19:13:53

写的很细,用时再仔细研究下。

wsm80828 发表于 2013-9-23 02:55:35

总结的很好

xukai871105 发表于 2013-9-23 09:15:18

ben001 发表于 2013-9-22 17:29 static/image/common/back.gif
最近也在看ENC28J60的驱动,看到头都大了。楼主的文章写的不错!!!!

非常感谢你的评价

ben001 发表于 2013-9-23 15:48:10

xukai871105 发表于 2013-9-23 09:15 static/image/common/back.gif
非常感谢你的评价

你好,请问用STM32做以太网通信的话,大致上要学习哪些知识呢?我是打算使用ENC28J60作为通信控制器。

xukai871105 发表于 2013-9-28 15:47:05

ben001 发表于 2013-9-23 15:48 static/image/common/back.gif
你好,请问用STM32做以太网通信的话,大致上要学习哪些知识呢?我是打算使用ENC28J60作为通信控制器。 ...

TCP IP方面的基础知识,耐心一点就行!

ben001 发表于 2013-10-11 18:55:55

xukai871105 发表于 2013-9-28 15:47 static/image/common/back.gif
TCP IP方面的基础知识,耐心一点就行!

好的,谢谢楼主!!!

caihong001 发表于 2013-10-12 10:44:21

请教下楼主,最近也在搞ENC28J60,遇到问题颇多,我采用的是UDP协议,中断接收方式,但现在每次一开机就会进入中断,插拔网线时也会进入中断,
进入中断清中断标志,我是这样处理的
enc28j60WriteOp(ENC28J60_BIT_FIELD_SET, ECON2, ECON2_PKTDEC);   
enc28j60WriteOp(ENC28J60_BIT_FIELD_CLR, EIE, EIE_INTIE|EIE_PKTIE);
......
enc28j60WriteOp(ENC28J60_BIT_FIELD_SET, EIE, EIE_INTIE|EIE_PKTIE);

xukai871105 发表于 2013-10-13 10:55:59

caihong001 发表于 2013-10-12 10:44 static/image/common/back.gif
请教下楼主,最近也在搞ENC28J60,遇到问题颇多,我采用的是UDP协议,中断接收方式,但现在每次一开机就会 ...

这样的建议操作EIE的PKTIE LINKIE
打开桀纣数据包待处理中断允许位 打开连接状态改变中断允许位

当然 全局中断允许位别忘记操作,也在EIE寄存器中

ilovepp 发表于 2013-10-16 00:30:22

本帖最后由 ilovepp 于 2013-10-16 00:32 编辑

源代码初始化函数中的这句enc28j60Write(ERXFCON, ERXFCON_UCEN|ERXFCON_CRCEN|ERXFCON_PMEN);貌似有bug
这句话的意思是说单播MAC地址为本机地址或CRC校验成功或模式匹配正确则不被过滤,那这样岂不是只要CRC校验通过就不被过滤了,没有起到应有的过滤效果

叶子飞翔 发表于 2013-11-15 20:32:53

最近学习stm32+enc28j60实现uip移植,帮助了

huang_guo_wen 发表于 2013-11-24 12:04:23

楼主,文章写的超好,受益了,楼主把AVRNET项目移植到STM32测试了吗?

Eric321 发表于 2013-11-24 12:37:05

谢谢楼主分享

立白洗衣粉 发表于 2013-12-24 11:04:10

楼主我想问你个问题就是我有两块开发板分别SPI+ENC28J60扩展网口   然后第一块是主要网口接收UDP数据包 不怎么向外发送数据包                      而第二块却相反主要是向外发送数据包而不怎么接收数据包那么我想问问 是不是我的两个ENC28J60的缓冲区 应该设置正好相反啊!就是接收缓冲区跟发送缓冲区的大小在两个ENC28J60上应该是大小相反的啊!

叶子飞翔 发表于 2013-12-25 18:15:03

xukai871105 发表于 2013-7-12 22:09
非常感谢你的细致,虽然我暂时无法解释清楚问题的本质原因,但是基本可以判断问题出在缓冲区的地址分配上 ...

楼主,你好,我现在也是遇到ping不通问题,刚好看到这个,我在想我ping不通有没有可能也是这个问题,但我移植的原子库函数的程序和你的程序有点不一样,你能不能帮我看下是不是这个问题
//从网络获取一个数据包内容
//maxlen:数据包最大允许接收长度
//packet:数据包缓存区
//返回值:收到的数据包长度(字节)                                                                          
u32 ENC28J60_Packet_Receive(u32 maxlen,u8* packet)
{
        u32 rxstat;
        u32 len;                                                                                                           
        if(ENC28J60_Read(EPKTCNT)==0)return 0;//是否收到数据包?          
        //设置接收缓冲器读指针
        ENC28J60_Write(ERDPTL,(NextPacketPtr));
        ENC28J60_Write(ERDPTH,(NextPacketPtr)>>8);          
        // 读下一个包的指针
        NextPacketPtr=ENC28J60_Read_Op(ENC28J60_READ_BUF_MEM,0);
        NextPacketPtr|=ENC28J60_Read_Op(ENC28J60_READ_BUF_MEM,0)<<8;
        //读包的长度
        len=ENC28J60_Read_Op(ENC28J60_READ_BUF_MEM,0);
        len|=ENC28J60_Read_Op(ENC28J60_READ_BUF_MEM,0)<<8;
        len-=4; //去掉CRC计数
        //读取接收状态
        rxstat=ENC28J60_Read_Op(ENC28J60_READ_BUF_MEM,0);
        rxstat|=ENC28J60_Read_Op(ENC28J60_READ_BUF_MEM,0)<<8;
        //限制接收长度       
        if (len>maxlen-1)len=maxlen-1;       
        //检查CRC和符号错误
        // ERXFCON.CRCEN为默认设置,一般我们不需要检查.
        if((rxstat&0x80)==0)len=0;//无效
        else ENC28J60_Read_Buf(len,packet);//从接收缓冲器中复制数据包          
        //RX读指针移动到下一个接收到的数据包的开始位置
        //并释放我们刚才读出过的内存
        ENC28J60_Write(ERXRDPTL,(NextPacketPtr));
        ENC28J60_Write(ERXRDPTH,(NextPacketPtr)>>8);
        //递减数据包计数器标志我们已经得到了这个包
        ENC28J60_Write_Op(ENC28J60_BIT_FIELD_SET,ECON2,ECON2_PKTDEC);
        return(len);
}

xukai871105 发表于 2013-12-27 10:58:39

立白洗衣粉 发表于 2013-12-24 11:04
楼主我想问你个问题就是我有两块开发板分别SPI+ENC28J60扩展网口   然后第一块是主要网口接收UDP数据 ...

呵呵,我个人建议两个缓冲区发送部分和接收部分设置完全一样。
理由:
以太网的缓冲区和硬件的缓冲区是不一样的,以太网的应用应该避免使用二进制的协议,多使用WEB层面的协议
以太网的应用重点不是缓冲区如何设置,而是你使用说什么协议可以更有效更快速的保存至数据库中!

当然设置的大小不同也完全可以!但是建议发送缓冲区不要小于1518.

xukai871105 发表于 2013-12-27 11:01:36

叶子飞翔 发表于 2013-12-25 18:15
楼主,你好,我现在也是遇到ping不通问题,刚好看到这个,我在想我ping不通有没有可能也是这个问题,但我 ...

我想问问你,你使用了ENC28J60,使用SPIX,那么在这个SPI总线上还挂载其他的SPI从设备吗?????

叶子飞翔 发表于 2013-12-27 15:26:41

xukai871105 发表于 2013-12-27 11:01
我想问问你,你使用了ENC28J60,使用SPIX,那么在这个SPI总线上还挂载其他的SPI从设备吗????? ...

太感谢了,原先都没往这方面想,没想到真是这问题,因为我spi被液晶复用了

ustbzm 发表于 2013-12-27 16:09:42

不错,学习了!

xukai871105 发表于 2013-12-28 17:25:05

叶子飞翔 发表于 2013-12-27 15:26
太感谢了,原先都没往这方面想,没想到真是这问题,因为我spi被液晶复用了 ...

我以前也遇到这个问题,折磨了自己很久!
现在恭喜你进入嵌入式以太网的世界,uIP紧紧是个开始

叶子飞翔 发表于 2013-12-29 10:45:02

xukai871105 发表于 2013-12-28 17:25
我以前也遇到这个问题,折磨了自己很久!
现在恭喜你进入嵌入式以太网的世界,uIP紧紧是个开始 ...

谢谢,我真的被这个问题折磨了好久

叶子飞翔 发表于 2013-12-29 16:12:48

叶子飞翔 发表于 2013-12-29 10:45
谢谢,我真的被这个问题折磨了好久

楼主,你好,又得麻烦你了,我虽然ping通了,可是我打开网络调试助手进行tcp server验证时根本没现象,本来应该会收到32发来的数据,而且我也打不开网址,提示无法访问网页,是不是和端口的内容有关,我对端口不太懂,也没这方面经验呢,还是和串口有关呢,麻烦楼主了

叶子飞翔 发表于 2013-12-29 16:33:30

叶子飞翔 发表于 2013-12-29 16:12
楼主,你好,又得麻烦你了,我虽然ping通了,可是我打开网络调试助手进行tcp server验证时根本没现象,本 ...

这是程序部分的,里面关于监听端口和串口的设置,再进行这些操作时,电脑上的端口是不是该相应的打开呢?太复杂了

叶子飞翔 发表于 2013-12-29 21:52:30

xukai871105 发表于 2013-12-28 17:25
我以前也遇到这个问题,折磨了自己很久!
现在恭喜你进入嵌入式以太网的世界,uIP紧紧是个开始 ...

你好,我找到解决的方法了,真的是因为80端口被电信封了,现在可以

xukai871105 发表于 2013-12-30 08:30:40

叶子飞翔 发表于 2013-12-29 21:52
你好,我找到解决的方法了,真的是因为80端口被电信封了,现在可以

恭喜你解决了!

ycwjl728 发表于 2013-12-30 08:31:45

学习一下,感谢楼主。

ethan_free 发表于 2013-12-30 10:20:41

mark,感兴趣,有时间玩一下

XIUQIN 发表于 2014-1-7 19:28:04

写的很好

DouglasXie 发表于 2014-1-10 10:06:03

很详细,正准备学习ENC28J60......

weiwei4 发表于 2014-1-12 13:38:25

mark,有时间慢慢看

dec88888 发表于 2014-1-23 09:10:14

很不错的文档,顶一个!!!!

湛无双 发表于 2014-2-4 20:41:14

非常感谢楼主 从楼主这里学到了很多的东西也被楼主的认真做事的态度所折服

lazyboyp 发表于 2014-2-11 19:50:11

MARK ,谢谢            

kevin_kf 发表于 2014-2-12 00:41:57

兄弟时间比较多啊,写的很详细,mark下

xukai871105 发表于 2014-2-12 13:18:49

kevin_kf 发表于 2014-2-12 00:41
兄弟时间比较多啊,写的很详细,mark下

时间再少也要总结总结!

zyw19987 发表于 2014-2-12 14:55:56

xukai871105 发表于 2014-2-12 13:18
时间再少也要总结总结!

值得学习:对技术的专研,对技术的态度,对技术的开源。
值得羡慕的是楼主有扎实的技术基础和学习能力。

楼主一出必出精品。

laoqi777 发表于 2014-2-20 19:11:18

收藏收藏

guoj 发表于 2014-2-21 07:17:27

这个帖子太好了,顶 and mark

bondxie3 发表于 2014-2-21 09:39:19

顶!强帖!标记 ENC28J60!

xiakang 发表于 2014-2-23 17:28:10

有个疑问,手册说LEDB连接成拉电流点亮方式,就将控制工作方式的相应的寄存器的相关位初始化为半双工工作模式,
程序中你写
/* 配置PHY为全双工LEDB为拉电流 */

73.       enc28j60PhyWrite(PHCON1, PHCON1_PDPXMD);
疑问是ENC28J60可以配置成全双工的模式而不是由LEDB连接方式确定?
我的理解是应要将相关寄存器配饰成半双工方式,以适应LEDB的拉电流接法。

ly674496415 发表于 2014-2-27 21:32:24

本帖最后由 ly674496415 于 2014-2-27 21:33 编辑

这个问题要请教楼主,多谢啦http://www.amobbs.com/forum.php?mod=viewthread&tid=5570828&highlight=ENC28J60

cygnushan 发表于 2014-2-27 22:04:23

mark~好资料,慢慢研究下

一号zhong 发表于 2014-3-27 14:23:54

先mark一下回头看。

zirong0804 发表于 2014-3-27 14:38:52

好好学习 你为什么那么牛等待新的更新

xukai871105 发表于 2014-3-28 14:09:14

zirong0804 发表于 2014-3-27 14:38
好好学习 你为什么那么牛等待新的更新

新的更新请查看
http://blog.csdn.net/xukai871105
那边代码更新比较方便

哇嘎 发表于 2014-3-28 14:44:07

借人气

请教proteus中那个有关AVR+ RTL809+ IE 的项目,在安装了winpcap后,仿真没有提示错误。

就是使用网页访问时,不成功。局域网设置在同一网段。

请问有解决的吗?给指点一二。

xukai871105 发表于 2014-3-28 22:32:43

哇嘎 发表于 2014-3-28 14:44
借人气

请教proteus中那个有关AVR+ RTL809+ IE 的项目,在安装了winpcap后,仿真没有提示错误。


以前我也遇到过了,可能是proteus带的CPU都无法处理了,还是用实际的硬件做吧

michael.yang 发表于 2014-3-28 22:46:50

好东西,收藏了

zirong0804 发表于 2014-3-29 16:04:43

xukai871105 发表于 2014-3-28 14:09
新的更新请查看
http://blog.csdn.net/xukai871105
那边代码更新比较方便

感谢 一定好好向你学习

bai2011 发表于 2014-3-29 23:01:39

不太熟学习中

tangcangeng 发表于 2014-3-31 20:11:06

谢谢楼主呀佩服佩服

xukai871105 发表于 2014-3-31 22:47:38

tangcangeng 发表于 2014-3-31 20:11
谢谢楼主呀佩服佩服

http://blog.csdn.net/xukai871105
有时间看看这个吧!

tangcangeng 发表于 2014-4-2 13:09:05

xukai871105 发表于 2014-3-31 22:47
http://blog.csdn.net/xukai871105
有时间看看这个吧!

恩 好的 十分感谢你提供的博客

topelong2012 发表于 2014-6-1 22:16:35

这个一定要mark下来啊

BrightWang 发表于 2014-6-1 23:35:10

标记,ENC28J60学习笔记——AVRNET项目

topelong2012 发表于 2014-6-2 09:37:47

这个一定要mark下来啊

andmain999 发表于 2014-6-4 08:33:13

感谢分享{:lol:}

蓝胖子 发表于 2014-6-4 10:01:40

同样使用enc28j60,移植过uip,但我需要的是客户端和服务端共存模式,网上一大堆都是服务端的代码,自己折腾了好久,跟踪mac地址解析啥的,反正很多代码看不明白,写死中心ip和端口,最后稀里糊涂的把客户端模式也给弄出来,但根本没搞清uip的地址解析原理。

xukai871105 发表于 2014-6-11 12:42:46

蓝胖子 发表于 2014-6-4 10:01
同样使用enc28j60,移植过uip,但我需要的是客户端和服务端共存模式,网上一大堆都是服务端的代码,自己折腾 ...

我个人建议你不用那么纠结,既然是客户端和服务器端模式同时运行,还是使用一个linux系统,做起来简单维护起来方便!
uIP仅仅是学习TCP IP试试而已。

xiaochu312 发表于 2014-6-14 09:44:17

谢谢LZ分享经验

ping8165 发表于 2014-6-14 20:05:58

感谢加学习了,敬仰

365026266 发表于 2014-6-25 02:12:48

写的很详细。。。。谢谢

ainiyifei 发表于 2014-6-25 09:20:29

楼主好强大,能不能告诉我你用的硬件平台呢是哪个呢?我也买一个学学。或者发个电路图也行。对这方面很有兴趣{:smile:}

xukai871105 发表于 2014-6-26 19:54:17

ainiyifei 发表于 2014-6-25 09:20
楼主好强大,能不能告诉我你用的硬件平台呢是哪个呢?我也买一个学学。或者发个电路图也行。对这方面很有兴 ...

我买的时奋斗版,网络这东西确实很好玩!

xukai871105 发表于 2014-6-26 19:56:34

365026266 发表于 2014-6-25 02:12
写的很详细。。。。谢谢

更多内容看这里吧!
http://blog.csdn.net/xukai871105

klander 发表于 2014-6-29 23:48:09

楼主你好,请问你编写驱动时,有没考虑ENC28J60 Rev. B7 Silicon Errata中提到的问题?

xukai871105 发表于 2014-7-1 08:17:09

klander 发表于 2014-6-29 23:48
楼主你好,请问你编写驱动时,有没考虑ENC28J60 Rev. B7 Silicon Errata中提到的问题? ...

这个我不清除,我只是参考了国外的代码!

BrightWang 发表于 2014-7-1 08:30:34

标记,ENC28J60学习笔记——AVRNET项目

gxlao6 发表于 2014-7-1 12:58:28

学习了,谢谢分享

kevin_me 发表于 2014-7-1 13:49:50

再来马一个,ENC28J60只能做做一般消费电子,芯片性价比还是很不错的

xukai871105 发表于 2014-7-2 12:31:48

kevin_me 发表于 2014-7-1 13:49
再来马一个,ENC28J60只能做做一般消费电子,芯片性价比还是很不错的

更多内容看这里吧!
http://blog.csdn.net/xukai871105

lvku 发表于 2014-7-2 13:45:56

MARK   刚做完这个项目

天行者 发表于 2014-7-10 10:41:51

高手中的高手呀。

xukai871105 发表于 2014-7-10 16:48:11

天行者 发表于 2014-7-10 10:41
高手中的高手呀。

一般菜鸟而已,称不上高手!

天行者 发表于 2014-7-10 22:03:08

那我是菜鸟鸟中的菜鸟了,呵呵。

jieke0912 发表于 2014-7-22 22:37:27

现也在用这芯片,用M0516,工作一段时间后就不接收了,发热还是挺大的,正在找原因、、、、

jieke0912 发表于 2014-7-25 20:06:51

linjunxiong 发表于 2013-6-20 19:23
电脑直接用UDP不断发数据,速度快,溢出,但是还是能接收,溢出一段时间后就再也收不到数据了。 ...

我现在调也碰到这个问题,兄弟是最后是怎么处理的呢,定时检测复位?

linjunxiong 发表于 2014-8-3 08:11:30

jieke0912 发表于 2014-7-25 20:06
我现在调也碰到这个问题,兄弟是最后是怎么处理的呢,定时检测复位?

当时没有较好的解决,等待标志超时,直接复位ENC28j60,实际应用时用的是TCP切数据量较小,还算稳定
页: 1 [2] 3
查看完整版本: ENC28J60学习笔记——AVRNET项目