本帖最后由 diylink 于 2013-7-9 23:13 编辑
前段时间朋友送了一个红版万博网页版登陆页派,平时自己也喜欢搞些带显示的小玩意,以前也买过RT_thread的网络收音机开发板,也就参考了里边的一些代码写了一个程序在万博网页版登陆页派上跑。说实话,自己的水平也是半桶水,基本实现了U盘播放mp3,播放网络http格式的网络电台与豆瓣音乐的功能,并可以用红外遥控器遥控。
现在分享一下给喜欢捣腾万博网页版登陆页派的朋友们。
程序运行后的效果图:
YOUKU里边的视频地址是:http://v.youku.com/v_show/id_XNTgwMzc4ODcy.html
可以到优酷里边看大概的功能演示,感兴趣的朋友,不妨动手一起做一个,硬件需求与成本不是很高。
硬件需求:
1:raspberry pi
2:nokia 5110 显示模块
3:红外接收头
4:红外遥控器(随便一种)
5:杜邦线(用来连接pi 与各个外围模块)
连接的图示:
注意不同的商家的lcd模块的引脚定义不一定相同。
硬件模块用杜邦线与pi的gpio口根据程序里边的设定是:
PI GPIO24 ----------- OUT—— 红外接收头输出
Ground ----------- GND —— 红外接收头地线
3V3 power ----------- VCC —— 红外接收头电源输入
PI GPIO22 ----------- RST ——lcd复位
PI GPIO17 ----------- CE —— lcd片选
PI GPIO23 ----------- DC —— lcd数据/指令选择
PI GPIO10 ----------- DIN —— lcd串行数据线
PI GPIO11 ----------- CLK —— lcd串行时钟线
3V3 power ----------- VCC —— lcd电源输入
5V power ----------- BL —— lcd背光控制端
Ground ----------- GND —— lcd地线
软件需求:
1.下载论坛附件地址的软件,解压缩放到pi 的任意目录下,命令行状态执行make。
#tar xzvf pi_radio.tar.gz
#make
#cp pi_radio /usr/bin
2.设置红外遥控参考帖子
程序压缩包里边附带了lirc.conf 文件,对应了软件里边的相关按键,所以学习的时候需要命名成 up,down,left,right,enter,exit,六个按键。
我这里用的是pi的gpio 24 来做信号输入,所以命令如下:
#sudo modprobe lirc_rpi gpio_in_pin=24 gpio_out_pin=25
#sudo /etc/init.d/lirc start
3.安装mpg123播放器。
#sudo apt-get install mpg123
测试功能:
1.控制台命令手动执行程序。
#sudo modprobe lirc_rpi gpio_in_pin=24 gpio_out_pin=25
#sudo /etc/init.d/lirc start
#sudo pi_radio
程序运行后,5110 lcd显示模块就会出现一个4个选项的界面:
网络电台(播放网路电台,现阶段还只局限于http模式的地址)
Usb本地播放(播放u盘中的音乐,当然也可以mount nfs 播放别的网路设备的音乐)
豆瓣电台(播放豆瓣fm里边的音乐)
关于(关于本程序)
1.网路电台需要解析/etc/ 目录下的radio.pls文件,用的是jorn格式,用命令行复制程序附带的radio.pls文件到/etc/目录下,里边 自带了一些电台的资料,大家要加或者修改电台地址的时候,请参考程序附带的pls文件内容的格式。
2.Usb播放的程序搜索地址是/mnt/usb/ 如果插入u盘的话,需要手动mount到这个目录下,如用命令:
#sudo mount -t vfat /dev/sda1/ /mnt/usb
当然也可以mount nfs格式到/mnt/usb下,或者直接拷贝歌曲到sd卡里边的这个目录下。
#sudo mount -t nfs -o nolock IP地址:/mp3文件夹地址 /mnt/usb
现在对usb的vfat格式中文显示还存在点问题,尝试过 加入参数 -o iocharset=utf8 也还是出现乱码,nfs方式mount linux的文 件夹就没问题。
3.豆瓣音乐操作比较简单,点击自己喜欢的电台就可以播放,播放中可以按下一首跳过想播放的歌曲。
4.如果要开机就自动运行程序,那么需要在/etc/rc.local下exit(0)语句前加入如下修改:
sudo modprobe lirc_rpi gpio_in_pin=24 gpio_out_pin=25
sudo /etc/init.d/lirc start
sudo pi_radio