极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 18394|回复: 3

基于ethernet-Shield的简单udp to 232实现

[复制链接]
发表于 2012-5-27 22:11:17 | 显示全部楼层 |阅读模式
       对于Arduino的开始关注得益于极客工坊,发现Arduino确实是一个很好的平台,很简单的方法就可以实现以往单片机复杂的应用。
但发现坛子的讨论热度一直不是很高,可能是由于Arduino在国内还不是很普及的原因。现将自己学习Arduino的一点心得拿出来,希望能起到抛砖引玉的效果,并希望能引起大家的积极讨论,能完善这个功能就最好了。
    用到的是官方的ethernet-Shield,实现的功能是通过以太网的udp发送数据到Arduino,转成串口的数据发出,反过来也可,实现串口和以太网的双向通信。程序很粗糙,功能很简单,希望大家一起去完善。
   
#include <SPI.h>        
#include <Ethernet.h>
#include <EthernetUdp.h>


byte mac[] = {  
  
0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };
IPAddress ip(192, 168, 1, 177);

unsigned int localPort = 8888;      
EthernetUDP Udp;
char packetBuffer[UDP_TX_PACKET_MAX_SIZE];
//buffer to hold incoming packet,
char ReplyBuffer[24]; //buffer to send packet,
void setup() {
   
Ethernet.begin(mac,ip);
  
Udp.begin(localPort);
  
Serial.begin(9600);
}

void loop() {

  
  
int packetSize = Udp.parsePacket();
  
Udp.beginPacket(Udp.remoteIP(), Udp.remotePort());
  
if(packetSize)
  {
   
// read the packet into packetBufffer
   
Udp.read(packetBuffer,UDP_TX_PACKET_MAX_SIZE);
   
Serial.println(packetBuffer);
//send the data to 232
  
memset(packetBuffer,0,sizeof(packetBuffer));

  }
   
if (Serial.available() > 0)
   {
     
ReplyBuffer[0]= Serial.read();
     
delay(2);
     
Udp.write(ReplyBuffer);
     
Udp.endPacket();
   }  
}


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

评分

参与人数 1 +1 收起 理由
幻生幻灭 + 1 鼓励有内容的新人贴!桌面背景很强大啊!

查看全部评分

回复

使用道具 举报

发表于 2012-5-27 22:22:21 | 显示全部楼层
官方的ethernet-Shield 我曾经玩过一下下的W5100这个小模块,也玩过了ENC28J60,但是对于计算机其他的资源配置还是没得深入学习,有机会一定呀研究研究,现在国内的Arduino爱好者确实比较少,但是极客在这方面算是先进工作者了,给大家爱好者提供了一个很好的平台,对于新手来说,资源不少了,而且还会与日俱增中,希望得到大家的努力一起把国内的Arduino尽快普及!
回复 支持 反对

使用道具 举报

发表于 2012-5-27 22:34:28 | 显示全部楼层
还没涉及以外网通讯,呵呵。不过支持下
回复 支持 反对

使用道具 举报

发表于 2012-5-28 13:16:04 | 显示全部楼层
{:soso_e101:}{:soso_e101:}觉得没有电子基础。有时候看帖子里的讨论好吃力。。。我觉得工坊可以注册个微博什么的。我在微博上看到几个大的创客空间都把arduino玩的挺好的。浙大的翁恺老师也在弄。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 需要先绑定手机号

Archiver|联系我们|极客工坊

GMT+8, 2024-5-2 05:17 , Processed in 0.054786 second(s), 23 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表