×

WIZwiki W7500 WebRadio播放器开源

消耗积分:2 | 格式:zip | 大小:0.81 MB | 2022-12-23

张桂英

分享资料个

描述

编程语言: C++

集成开发环境:  mbed

目标单片机: WIZwiki-W7500板

额外使用的硬件: VS1053 MP3解码器

 
poYBAGOkE_GATt8NAACTanRaCX0946.jpg
WIZwiki-W7500 Cortex-M0平台板
 

 

介绍

2015 年 8 月 31 日,我得到了新的 WIZnet 平台板,WIZwiki-W7500基于 48MHz 的 Cortex-M0 cpu,具有 128 kBytes 闪存和 48 kBytes RAM,与硬连线 TCP/IP 内核共享。TCP/IP 内核使用的 RAM 数量最多可达 32 kBytes,其余 16 kBytes 留给用户使用(32 + 16 = 48 kBytes RAM)。W7500 是一个 3.3V 设备,但根据 WIZnet板的 I/O 引脚是5V容忍。此外,该板与 Arduino UNO 具有相同的引出线。将此板与 VS1053 mp3 解码器板结合使用,您可以构建一个非常好的 Icecast 互联网流播放器(WebRadio 播放器),它可以播放高达 320 kbits/秒(320 kbps)的互联网音频流。当然,W7500 接收器端有限的 RAM(16 kBytes)不足以覆盖您的互联网连接网关(您的ADSL 路由器)和 Icecast 服务器之间的大数据延迟。  

电路

电路非常简单,只组合了两块电路板。WIZwiki-W7500(简称W7500)和VS1053 mp3解码模块。W7500 开发板连接到 Icecast 服务器,请求音频数据流并将接收到的数据发送到 VS1053 模块进行解码。VS1053模块,接收来自W7500的数据流,自动识别音频数据格式。它识别数据流是midi还是 wav还是mp3还是aac文件格式并对其进行解码。用户可以通过连接耳机的 VS1053 音频插孔收听音乐流。该电路由 W7500 板的 USB 端口的 5V DC 供电。W7500 以太网连接器连接到 ADSL 路由器或任何可以提供互联网连接的以太网设备(路由器、集线器、交换机)。连接图基于真实的电路板照片,任何想要构建电路但没有任何电子电路原理图经验的人都可以识别。只需按照图 1连接图连接每条彩色线的两个端点 。

 

为了简化硬件,该电路不包含任何 LCD 屏幕。WebRadio 电台信息不是打印在 LCD 上,而是打印在提供 W7500 板的 USB_Serial 端口上。只需将 W7500 USB 端口连接到您的计算机,安装驱动程序并打开您最喜欢的串行终端。在我的例子中,我使用了设置为 115200 bps的Termite v3.1 。

 
pYYBAGOkE_yAWVjJAADFQxqdlns586.jpg
屏幕截图 1:来自 Icecast 服务器的 WebRadio Station 信息。
 
 
poYBAGOkFACAbnAqAADlYdsD_MA219.jpg
截图2
 
 
pYYBAGOkFAOAaMCvAADmi-oHn48822.jpg
截图 3
 

 

源代码

源代码是用mbed在线编译器编写的,使用的编程语言是C++。源码上有很多注释,可以帮助你理解几乎每一行源码的意思。

mbed 有一个 VS1053 库,由Kaoru Onoe 编写并由我 (Vassilis Serasidis) 修改以支持 W7500 板并为某些 LC-Technology VS1053 板添加补丁 [ modeSwitch()函数],其中一些芯片引脚已断开连接. 没有那个补丁,这些 VS1053 模块就没有声音。

以太网库 (WIZnetInterface) 由 WIZnet 提供,可以在 mbed 库中找到。对于该库,您必须更改每个套接字的 8 个套接字、2 kBytes 发送器和 2 kBytes 接收器缓冲区的默认设置。我们想要的设置是: 只有一个套接字具有 16 kBytes 发送器和 16 kBytes 接收器缓冲区。可以通过编辑文件来更改这些设置:

 

WIZnetInterface/arch/int/W7500x_toe.cpp

 

	/*
	 * 设置 RXTX 缓冲区大小
	 *  (   =  ;  < MAX_SOCK_NUM;  ++) {
	 * sreg , Sn_RXBUF_SIZE,  );
	 * sreg , Sn_TXBUF_SIZE,  );
	 * }
	 * 

 

	
	 
	 
	 sreg<  8_t>(  , Sn_RXBUF_SIZE,  ); 
	 sreg<  8_t>(  , Sn_TXBUF_SIZE,  ); 
 

 

由 Vassilis Serasidis 于 2015 年 9 月 17 日创建和发布

  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  

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

评论(0)
发评论

下载排行榜

全部0条评论

快来发表一下你的评论吧 !