| |
最新电子论文 |
|
推荐电子论文 |
|
|
|
| ■ 所在位置:首页>>电子技术>>电子制作>>正文 |
| |
如何用8051来发Email?
|
|
信人: hugehard (该减肥了...), 信区: Circuit 标 题: 如何用8051来发Email? 发信站: BBS 水木清华站 (Sat Oct 21 17:06:24 2000) 在两位版主的英名领导下, 和另外一位大侠花了一个多月的时间, 总算用8051做出了一个带modem的、能稳定工作的email machine。 以下是开发过程中的一些经验,供大家参考: 1. 选个好点的仿真器,要有硬件断点,带C语言源码调试的。我用wave的,还不错 2. 单片机大概需要外接至少4k的SRAM。 3. modem芯片可以用conexant的RC224,或TDK的(型号记不清楚了)。速度慢但容易控制,还便宜。 4. 先在你实验室用linux模拟一个ISP,要总是拨169调试电话费会让你破产,而且还无法监视运行的状况。如何建立ISP在linux版精华区有详细的介绍。 5. 仔细设计电路板。modem板子比较讲究,一定要主意模拟和数字的隔离。找个好点的厂做板,焊接好一些,板子和焊接的亏我吃得太多了。咳,不说了。 6. 准备好示波器和逻辑分析仪。我开发基本都完成了才有示波器,逻辑分析仪到现在还没有。如果有的化会少走很多弯路。 7. 需要实现的网络协议: a. PPP。所有通过modem上网的东东第一层就是这个。很少有书详细介绍,大家可以参考RFC1661、RFC1662。需要注意的是有的ISP的报头是压缩的,169就是这样。你的程序要能够处理这种情况。还有的并不要求LCP。 b. IP。在各层的协议当中IP相对简单一些,这种应用并不需要处理诸如 ICMP和IGMP之类的东西。 c. TCP。这是最头疼的东西,一大堆状态。在8051这样的应用当中,我们遵循的原则 是:能省的就省。我没有考虑IP分片,也没有考虑TCP超时重发,甚至没有计算收到的TCP包校验和是否正确。这一切只为节省CPU的开销。不是我舍不得,所有用过8bit单片机的人都明白这为什么。实践大概可以证明,再发几十上百个字节这样 的应用当中,IP不会分片,TCP顺序也不会打乱。实际上ISP的MTU是1500,而Windowsize一般也远远大于几百。对了,TCP里还有一个port authentication很棘手, 原来把这个东西忽略了,以至于发一封邮件要很长时间甚至发不出去。RFC里也没有说得很清楚。后来发觉返回一个端口为0x0071的TCP包头就能够解决这个问题。现在发一封邮件大概需要2分钟左右。 d. SMTP。不多说了,实现了前面三个协议,SMTP就很小儿科了。我的整个板子尺寸是118X70mm,如果不用DIP40的89C54还能小些。 稍后我拍个照片放到某个ftp大家看看。 |
|
| |
|
|
相关文章 |
|
|
|
|