Teensy4.1网口通信控制LED灯
该项目使用了Teensy4.1开发板,实现了网络点灯的设计,它的主要功能为:使用Teensy4.1开发板通过网口链接路由器实现远程控制。
标签
Arduino
Funpack活动
teensy4.1
网络通信
颜七岁
更新2025-01-13
8

板卡介绍

Teensy 4.1是一款功能强大的Arduino兼容开发板,搭载了恩智浦i.MX RT1062芯片,拥有高达600MHz的处理速度和1MB的RAM。它具备丰富的I/O功能,包括以太网、SD卡插槽和USB主机端口。支持动态时钟缩放和低功耗运行,适合工业和物联网项目。


恩智浦的i.MX RT1062芯片是一款基于ARM Cortex-M7内核的高性能微控制器,具备以下特性:

- 600 MHz的运行频率,提供强劲的计算能力。

- 支持64位和32位浮点运算,增强了数据处理能力。

- 拥有7936K闪存、1024K RAM,以及4K EEPROM,为应用程序提供充足的存储空间。

- 支持QSPI存储器扩展,可以连接额外的RAM或闪存芯片。

- 双USB端口,支持480 Mbps的传输速度。

- 55个数字I/O引脚,其中35个支持PWM输出,18个模拟输入引脚,提供丰富的接口选项。

- 8个串行端口、3个SPI端口、3个I2C端口,以及多种音频接口,满足多种通信需求。

- 支持3个CAN总线,包括一个支持CAN FD的总线。

- 包含SDIO接口的microSD卡插槽。

- 集成以太网控制器和PHY芯片,支持10/100 Mbit的速度。

- 32个通用DMA通道,提高数据传输效率。

- 加密加速器和随机数生成器,增强安全性。

- 内置RTC,用于日期和时间管理。

- 可编程FlexIO,提供灵活的I/O配置。

- 像素处理流水线,适合图形处理应用。

- 外设交叉触发功能,增强设备间的协同工作能力。

- 电源开关管理,支持低功耗运行。

- 支持超频,可超过600MHz的运行频率。


它还具备高性能的内核、高速缓存、全功能FPU、内存保护单元、紧密耦合的GPIO、片上存储空间、多种外部存储接口、通用2D图形引擎、多种显示和摄像头接口、音频接口、丰富的通信接口、多种定时器、模拟接口、系统调试功能和全面的电源管理功能。这些特性使得i.MX RT1062芯片非常适合用于工业控制、物联网设备、多媒体应用等多种高性能嵌入式系统。


官方也提供开发和应用的案例,使用起来非常方便,具体软件环境配置请查看https://www.pjrc.com/teensy/td_download.html


任务要求

任务1:点灯!从板子的以太网排针处引出接口,并通过网口通信,控制板子上的LED灯


设计思路

因为板卡自带网卡芯片,我们只需要将网口引出,板卡上的网口是使用PH2.0接口,官方虽然有网口的拓展套件,但价格还是比较贵的,毕竟是从海外运输过来。

简单的了解网口定义,我使用了HR911105A内部带有网口变压器,引脚定义直接看官网的原理图 一一对应即可。

我是用5050封装的RGB,可以实现独立点亮红绿蓝颜色的灯,控制的时候只需要将IO电平为0即可实现点灯,另外配置了两个用户按键实现切换颜色和信息上报的功能

软件部分使用官方推荐的Arduino开发框架,在网络通信方面使用的是QNEthernet库,使用起来也也是非常的简单,配置好网络参数,代码中监听指定的消息内容即可实现控制LED

我设计的软件思路如下

初始化网口配置,在循环中监听消息

收到指定的消息,使用 digitalToggle(灯的IO);来实现切换灯的亮/灭。

  if (message == "000") {
    digitalToggle(A0);
    if(digitalRead(A0)==1)
    {
      sendRequest("BLUE LED OFF\r\n");
    }else{
       sendRequest("BLUE LED ON\r\n");
    }
   
  } else if (message == "001") {
    digitalToggle(A1);
    if(digitalRead(A1)==1)
    {
      sendRequest("RED LED OFF\r\n");
    }else{
       sendRequest("RED LED ON\r\n");
    }
  } else if (message == "002") {
    digitalToggle(A2);
    if(digitalRead(A2)==1)
    {
      sendRequest("GREEN LED OFF\r\n");
    }else{
       sendRequest("GREEN LED ON\r\n");
    }
  }

软件框图


活动心得

参加电子森林的FunPack第五期活动,我学习了如何通过以太网接口控制LED灯。这次经历让我对电子设计有了更深的认识,也提高了我的实践技能。同时感谢电子森林平台,每一期的FunPack活动都可以带来很多好玩的板卡,我会继续支持平台,共同学习进步。


软硬件
电路图
附件下载
电子森林-Teensy 4.1-网口点灯.zip
资料包
团队介绍
电子爱好者一枚
评论
0 / 100
查看更多
硬禾服务号
关注最新动态
0512-67862536
info@eetree.cn
江苏省苏州市苏州工业园区新平街388号腾飞创新园A2幢815室
苏州硬禾信息科技有限公司
Copyright © 2024 苏州硬禾信息科技有限公司 All Rights Reserved 苏ICP备19040198号