0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Arduino以太网控制器的制作

454398 来源:网络整理 作者:佚名 2019-11-08 16:49 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

第1步:零件

一个Arduino

一个Arduino以太网屏蔽板

一个面包板

一个LED

连接线

一条以太网电缆

步骤2:初始硬件设置

如果您具有较新的Arduino以太网屏蔽板,它将在其背面写有Mac地址。

在将屏蔽板连接到Arduino板之前请分别写下该地址。

要设置,只需将屏蔽层的插头插入Arduino。

使用以太网电缆将Arduino以太网屏蔽层连接到Networ通过路由器k。

请注意,以太网屏蔽层连接到引脚10、11、12、13,因此不能使用。

将LED的正极连接到面包板上,然后依次连接到引脚8和

步骤3:获取基本信息(MAC地址,IP地址,端口号)

如果您具有较新的Shields之一,则应在背面写上Mac地址。

IP地址将取决于您的本地网络,并且可以使用Comamnd Promt来查找。

打开命令提示符并输入“ ipconfig”

然后它会显示您的IP地址,默认网关和子网掩码

您还将需要使用的端口。端口80是HTTP的默认端口,但由于我的互联网提供商阻止了它,最终我使用了端口8081。

步骤4:

/*

Web服务器

简单的Web服务器

电路:

*以太网屏蔽连接到引脚10、11、12、13

*/

//------------------------------------------------- -------------------------------------------------- ----

#include

#include

//在下面输入控制器的MAC地址和IP地址。

byte mac [] = { 0x90、0xA2、0xDA,0x0D,0x48、0xD3};

//IP地址将取决于您的本地网络:

//为控制器分配IP地址:

IPAddress ip(192,168, 1,20);

IPAddress网关(192,168,1,1);

IPAddress子网(255、255、255、0);

//用要使用的端口初始化以太网服务器库。

EthernetServer服务器(8081);

字符串readString;

//------------------------------- -------------------------------------------------- ------------------------结果//--------------------- ----------------------------

//声明的任何其他代码:

//将引脚8声明为LED因为那就是我们要连接LED的方式。您可以使用任何其他引脚,然后必须更改引脚号。

int led = 8;

//- -----------------------------------------------结果//------------------------------------------------ -------------------------------------------------- -----

void setup()

{

//----------------------------- --------------------

//额外设置代码:

pinMode(led,OUTPUT);//选择要控制的引脚

//--------------------------------------- ----------结果//----------------------------------- -------------------------------------------------- ------------------

//启用串行数据打印

Serial.begin(9600);

//启动Ethernet

Ethernet.begin (mac,ip,网关,子网);

server.begin();

Serial.print(“服务器位于”);

Serial.println(Ethernet.localIP());

Serial.println(“ LED控制器测试1.0”);

}

//----------------------------- -------------------------------------------------- ------------------------结果//--------------------- -------------------------------------------------- --------------------------------

void loop()

{

//听传入客户端

EthernetClient客户端= server.available();

如果(客户端)

{

Serial.println(“新客户端”);

而(client.connected())

{

if(client.available())

{

char c = client.read();

//通过char HTTP请求读取char

if(readString.length( )《100)

{

//将字符存储到字符串

readString + = c;

//Serial.print(c);

Serial.write(c);

//如果您已到达该行的末尾(收到换行符

//字符)并且该行为空白,则表明http请求已结束,

//因此您可以发送回复

//如果HTTP请求已结束

if(c ==‘ n’){

Serial.println(readString);//打印到串行监视器以进行调试

//------------------------------------- -------------------------------------------------- -----------------

//需要显示站点:

client.println(“ HTTP/1.1 200 OK”);//发送新页面

client.println(“ Content-Type:text/html”);

client.println();

client.println(“”);

客户端.println( “”);//搜索----------------------------------- -------------------------------------------------- -------------------结果//-------------------------- -----------------------

//显示的内容:

client.println(““);

client.println(”

“);

client.println(” “);

client.println(”

“);

client.println(“

家庭自动化

”);

client.println(“

”);

client.println(“

”);

client.println(“ 打开灯光”);

client.println(“

”);

客户端。 println(“

”);

client.println(“ 关闭灯光

”);

客户端.println(“ ”);

client.println(“ ”);

delay(1);

//停止client

client.stop();

//--------------------------------------------- ----

//需要的代码可以实现:

if(readString.indexOf(“?lighton”)》 0)//检查on

{

digitalWrite(8,HIGH);//将引脚8设置为高电平

Serial.println(“ Led On”);

}

else {

if(readString.indexOf(“?lightoff”)》 0)//检查是否关闭

{

digitalWrite(8,LOW);//将引脚8设置为低

Serial.println(“ Led Off”);

}

}

//清除下一个读取的字符串

readString =“”;

//给Web浏览器时间来接收数据

delay(1);

//关闭连接:

client.stop();

Serial.println(“ client unonnected”);

}

}

}

}

}

}

责任编辑:wv

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 控制器
    +关注

    关注

    114

    文章

    17859

    浏览量

    195014
  • Arduino
    +关注

    关注

    190

    文章

    6527

    浏览量

    197431
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    探索KSZ8841-PMQL:单端口以太网MAC控制器的卓越性能与应用

    探索KSZ8841-PMQL:单端口以太网MAC控制器的卓越性能与应用 在当今数字化的时代,以太网技术在各种网络设备中扮演着至关重要的角色。Microchip的KSZ8841 - PMQL单端口
    的头像 发表于 03-24 17:10 137次阅读

    KSZ8841-16M/-32M:单端口以太网MAC控制器的技术剖析与应用前景

    KSZ8841-16M/-32M:单端口以太网MAC控制器的技术剖析与应用前景 在当今数字化时代,以太网技术在各个领域都发挥着至关重要的作用。Microchip推出的KSZ8841-16M/-32M
    的头像 发表于 03-03 16:25 204次阅读

    LAN9116:高效单芯片10/100非PCI以太网控制器的技术剖析

    LAN9116:高效单芯片10/100非PCI以太网控制器的技术剖析 在嵌入式应用领域,对于高性能、灵活性、易于集成且能有效控制成本的以太网控制器
    的头像 发表于 01-31 17:45 1265次阅读

    DP83816:10/100 Mb/s集成PCI以太网控制器的深度解析

    DP83816:10/100 Mb/s集成PCI以太网控制器的深度解析 在当今的网络通信领域,以太网控制器扮演着至关重要的角色。DP83816作为一款单芯片10/100 Mb/s
    的头像 发表于 01-31 15:20 826次阅读

    车载以太网协议转换操作教程# 车载以太网# 转换# 硬件# 教程# 汽车# 技术# 操作

    车载以太网
    康谋自动驾驶
    发布于 :2026年01月28日 11:19:40

    探索Microchip LAN9215:16位非PCI 10/100以太网控制器的卓越性能

    探索Microchip LAN9215:16位非PCI 10/100以太网控制器的卓越性能 在嵌入式应用领域,一款性能出色、易于集成且成本可控的以太网控制器至关重要。Microchip
    的头像 发表于 01-27 15:30 312次阅读

    探索Microchip LAN9211:高性能以太网控制器的卓越之选

    探索Microchip LAN9211:高性能以太网控制器的卓越之选 在嵌入式应用领域,一款性能强劲、功能丰富且易于集成的以太网控制器至关重要。Microchip LAN9211就是这
    的头像 发表于 01-22 16:50 685次阅读

    深度剖析ENC28J60:独立以太网控制器的设计与应用指南

    深度剖析ENC28J60:独立以太网控制器的设计与应用指南 在当今数字化时代,以太网连接在各类电子设备中扮演着至关重要的角色。ENC28J60作为一款具备SPI接口的独立以太网
    的头像 发表于 01-05 17:45 874次阅读

    KSZ8851SNL/SNLI:单端口以太网控制器的卓越之选

    KSZ8851SNL/SNLI:单端口以太网控制器的卓越之选 在当今数字化时代,以太网控制器在各种电子设备中扮演着至关重要的角色。KSZ8851SNL/SNLI 作为一款单端口
    的头像 发表于 12-28 14:45 813次阅读

    解析 LAN9215i:16 位非 PCI 10/100 以太网控制器的卓越之选

    解析 LAN9215i:16 位非 PCI 10/100 以太网控制器的卓越之选 在嵌入式应用领域,一款性能出色、灵活性高且成本可控的以太网控制器至关重要。今天,我们就来深入剖析 Mi
    的头像 发表于 12-25 16:50 560次阅读

    KSZ8851SNL/SNLI单端口以太网控制器:设计与应用全解析

    KSZ8851SNL/SNLI单端口以太网控制器:设计与应用全解析 在当今数字化的时代,以太网通信在各种电子设备中扮演着至关重要的角色。KSZ8851SNL/SNLI作为一款单端口以太网
    的头像 发表于 12-23 14:45 666次阅读

    基于Microchip LAN8650/1的10BASE-T1S以太网控制器技术解析

    Microchip Technology LAN8650和LAN8651工业级单对以太网交换机结合了媒体访问控制器 (MAC) 和以太网PHY。这种组合使得低成本微控制器(包括没有板载
    的头像 发表于 10-11 09:48 1152次阅读
    基于Microchip LAN8650/1的10BASE-T1S<b class='flag-5'>以太网</b><b class='flag-5'>控制器</b>技术解析

    ENC28J60数据手册中文版(带 SPI 接口的独立 以太网控制器

    ENC28J60数据手册中文版(带 SPI 接口的独立 以太网控制器
    发表于 06-09 22:40

    Microchip LAN9211-ABZJ 集成 10/100 以太网 PHY的以太网控制器

    Microchip LAN9211-ABZJ 集成 10/100 以太网 PHY的以太网控制器
    的头像 发表于 06-04 14:56 1280次阅读
    Microchip LAN9211-ABZJ 集成 10/100 <b class='flag-5'>以太网</b> PHY的<b class='flag-5'>以太网</b><b class='flag-5'>控制器</b>

    双通道CAN转以太网#CAN转以太网#三格电子

    以太网
    三格电子科技
    发布于 :2025年05月12日 13:17:05