您尚未登录。

楼主 #1 2021-01-04 16:40:08

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 581
积分: 585
个人网站

[慢更]小白探索如何使用V3s播放音乐 

小白探讨如何使用V3s在线播放播放音乐。
        今天有人找我做一个项目,上面需求是接网线,在线播放音乐。
        然而,这样的东西,我居然不敢接,因为没做过,怕周期长,烂尾。
        这个东西难吗?答案肯定是否定的。
        毕业多年,我一只从事单片机的开发,尽管懂得一些linux开发的皮毛,实际上做任何项目我都避开linux,原因很简单,我内心有恐惧感,我怕项目发展下去,出现不可控的情况发生。
        我认为我个人业余时间多做知识储备,总有一天有能力使用linux开发的。我带着这样的心态,一年两年过去了,我的linux水平却没有提升,我回头观望,我关注的是:
        "XX芯片性价比高",
        "鸿蒙代码薄,比linux容易",
        "rtt单片机就能跑,容易上手"
        ......
        我的内心一直在避开使用linux开发,带着对linux的恐惧,进行其他知识的储备,可以说,这几年来,我的linux水平没有提高,甚至还倒退了。
        今天,看到这样的一个项目需求,我虽然不敢接,但是我意识到了我知识的浅薄。我在思考,社会人才这么多,要是linux都不懂,不知道什么时候被淘汰涨不动工资。我也是时候,应该做些什么了。
        我拿出吃灰的V3s开发板,打算利用业余时间,实现这个"简单"的项目。

最近编辑记录 LinjieGuo (2021-01-05 12:01:13)

离线

楼主 #2 2021-01-04 16:42:03

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 581
积分: 585
个人网站

Re: [慢更]小白探索如何使用V3s播放音乐 

从需求可以联想到的词汇:"推流","拉流","音频播放","以太网","DHCP"
那么至少需要满足的是:
(1)以太网 DHCP
(2)播放音频
(3)"拉流"并解码播放

请教晕哥得知,可以使用tinyplay播放音频文件。那么我第一步,先使用tinyplay 播放本机文件吧。(慢更)

最近编辑记录 LinjieGuo (2021-01-04 16:47:13)

离线

楼主 #8 2021-01-05 11:13:36

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 581
积分: 585
个人网站

Re: [慢更]小白探索如何使用V3s播放音乐 

第一步先把系统跑起来。龟速拉取芯灵思的V3s SDK,利用搭建好的虚拟机直接开发。
sinlinx.png

最近编辑记录 LinjieGuo (2021-01-05 11:23:24)

离线

楼主 #9 2021-01-05 11:45:28

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 581
积分: 585
个人网站

Re: [慢更]小白探索如何使用V3s播放音乐 

拉取时间耗时接近3个钟,终于全部拉取完毕。解压虚拟机:
sinlinx001.png
解压的同时,阅读开发板使用手册。
sinlinx002.png
看起来,有我们需要的东西,我们的目的是实现功能,尽可能关注应用开发,而忽略掉内核啊,驱动啊这种东西。

最近编辑记录 LinjieGuo (2021-01-05 11:48:13)

离线

楼主 #10 2021-01-05 11:52:51

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 581
积分: 585
个人网站

Re: [慢更]小白探索如何使用V3s播放音乐 

==>根据手册上的介绍,安装软件
        安装过程,发现有个usb驱动没有装上,有个红色的X,看起来就很不舒服。
sinlinx003.png
        这可能是win10驱动签名的问题,我们以签名免认证方式启动win10看看是否能解决。
        果然,成功了。
sinlinx004.png

最近编辑记录 LinjieGuo (2021-01-05 11:57:23)

离线

楼主 #11 2021-01-05 13:14:49

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 581
积分: 585
个人网站

Re: [慢更]小白探索如何使用V3s播放音乐 

运行虚拟机,根据手册上面的教程,安装工具:

需要安装的主要依赖库:
sudo apt-get install git gnupg flex bison gperf build-essential zip curl libc6-dev libncurses5-dev:i386
x11proto-core-dev libx11-dev:i386 libreadline6-dev:i386 libgl1-mesa-dri:i386 libgl1-mesa-dev g++-multilib
mingw32 tofrodos python-markdown libxml2-utils xsltproc zlib1g-dev:i386 dpkg-dev
sudo apt-get install u-boot-tools
sudo apt-get install libswitch-perl

创建工作目录:

mkdir -p /home/sinlinx/SIN-V3s

上传源码到ubuntu,解压源码:
 进入工作目中

cd /home/sinlinx/SIN-V3s/

 解压

tar zxvf sinlinx-v3s-sdk_20190519.tar.gz

 编译

cd sinlinx-v3s-sdk
./build.sh

        我们不关心这个过程做了什么,只知道,我们拿到了源码,编译之后,最终可以生成img文件。
sinlinx005.png

最近编辑记录 LinjieGuo (2021-01-05 14:14:33)

离线

楼主 #12 2021-01-07 14:59:10

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 581
积分: 585
个人网站

Re: [慢更]小白探索如何使用V3s播放音乐 

想烧写img文件,折腾了好久,死活识别不到。
sinlinx006.png

离线

楼主 #14 2021-01-07 15:22:16

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 581
积分: 585
个人网站

Re: [慢更]小白探索如何使用V3s播放音乐 

raspberryman 说:
LinjieGuo 说:

想烧写img文件,折腾了好久,死活识别不到。
https://whycan.com/files/members/1845/sinlinx006.png

更换全志官方的驱动,一般就在这个烧写软件那个目录。

我把设备驱动给卸掉,然后重新插入,得到这样的一个未知设备
sinlinx007.png
使用指定目录安装
sinlinx008.png
结果是失败的。
sinlinx009.png

注意,当前环境已经是"禁用强制驱动签名"

最近编辑记录 LinjieGuo (2021-01-07 15:23:26)

离线

楼主 #16 2021-01-07 15:39:49

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 581
积分: 585
个人网站

Re: [慢更]小白探索如何使用V3s播放音乐 

浏览这个目录,里面的内容是这样的
sinlinx010.png

我卸掉设备的驱动,然后重新使用这个路径里的驱动文件,进行设备驱动更新。得到这样的结果:
sinlinx011.png
看起来驱动是装好了,但是这个烧写软件丝毫没有动静!
sinlinx013.png
反复拔插,拔插,拔插几下,居然就连接上了。先烧写这一次,然后再查原因。
sinlinx014.png
烧写速度还算可以
sinlinx015.png
重新测试了几下,发现这种情况下才能成功连接:
(1)拔掉电源
(2)按住Dw键
(3)插入usb
(4)上电。
        如果我上电后再插usb,只能识别驱动,这个烧写软件并不能成功识别。

最近编辑记录 LinjieGuo (2021-01-07 16:00:37)

离线

楼主 #17 2021-01-07 16:04:47

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 581
积分: 585
个人网站

Re: [慢更]小白探索如何使用V3s播放音乐 

启动系统,log疯狂输出:
sinlinx016.png
输入root,不用密码,直接登录成功。
sinlinx017.png

最近编辑记录 LinjieGuo (2021-01-07 16:06:32)

离线

楼主 #20 2021-01-07 17:09:24

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 581
积分: 585
个人网站

Re: [慢更]小白探索如何使用V3s播放音乐 

mysteryli 说:

你这个是基于SD卡还是spiflash?

spi nand的。

离线

楼主 #21 2021-01-07 17:11:22

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 581
积分: 585
个人网站

Re: [慢更]小白探索如何使用V3s播放音乐 

伍零壹 说:

哥们 你这个板子的资料能否共享下?

请看这个链接,我就不发了,如果失效了,你问这个楼主吧。
板子其实也不贵,默认顺丰是23元,买的时候让店主改普通快递就好了。
https://whycan.com/t_5349.html

最近编辑记录 LinjieGuo (2021-01-07 17:16:45)

离线

楼主 #22 2021-01-07 17:29:51

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 581
积分: 585
个人网站

Re: [慢更]小白探索如何使用V3s播放音乐 

系统已用资源如下:
sinlinx018.png

搜索来的信息,是这样说的:

从应用程序角度来看,对于应用程序来说,buffers/cached 是等于可用的,
因为buffer/cached是为了提高文件读取的性能,当应用程序需在用到内存的时候,buffer/cached会很快地被回收。
所以从应用程序的角度来说,可用内存=系统free memory+buffers+cached.

是不是意味着,我的应用程序可以使用31476+14716 ==>大概45MB内存可用呢?

最近编辑记录 LinjieGuo (2021-01-07 17:53:18)

离线

楼主 #25 2021-01-08 09:08:37

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 581
积分: 585
个人网站

Re: [慢更]小白探索如何使用V3s播放音乐 

mysteryli 说:
LinjieGuo 说:
mysteryli 说:

你这个是基于SD卡还是spiflash?

spi nand的。

啥型号的nand,能共享一下镜像么,我最近编译V3S遇到点坑,想整个镜像快速测试下我的板子

好,我上传一下上来。
型号是MXIC品牌的MX36LF1GE4,但是我搜索居然搜索不到。
看到开发板的硬件资料,发现居然是精简的核心板原理图,没有告诉我们Flash型号,也没有电源管理芯片相关电路。
我将其修改为MX35LF1G,在tb上面可以搜索出,MX35LF1GE4AB,这个型号应该是一样的。

以下是我编译出来的镜像:
sinlinx-v3s-linux.zip
           镜像第一次启动的时候,8s就可以开机完毕了,第二次启动的时候会多次尝试使用sd卡,要40s左右,不知道是不是有界面选择的原因,我等屏幕到了,然后再做后续介绍。

最近编辑记录 LinjieGuo (2021-01-08 10:48:16)

离线

楼主 #26 2021-01-08 09:21:38

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 581
积分: 585
个人网站

Re: [慢更]小白探索如何使用V3s播放音乐 

wu150 说:

你说的这个功能现在一些强大的单片机也可以实现,rt-thread论坛以前就有一个播放网络收音机的项目

是的,一开始我是打算使用STM32F407来完成这个项目,但是如果我懂linux,实现起来就方便多了,所以想通过这样一次的探究,增加自己的开发经验。
以后想做相关项目,将会容易许多。

最近编辑记录 LinjieGuo (2021-01-08 09:24:05)

离线

楼主 #27 2021-01-08 10:24:33

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 581
积分: 585
个人网站

Re: [慢更]小白探索如何使用V3s播放音乐 

基于帖子 编译开源播放器madplayer,播放音乐,我准备将播放器madplayer移植过来V3s。但是这周要回家,估计要暂停一下更新了。

最近编辑记录 LinjieGuo (2021-01-08 10:49:12)

离线

楼主 #30 2021-01-08 13:29:07

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 581
积分: 585
个人网站

Re: [慢更]小白探索如何使用V3s播放音乐 

mysteryli 说:
LinjieGuo 说:
mysteryli 说:

啥型号的nand,能共享一下镜像么,我最近编译V3S遇到点坑,想整个镜像快速测试下我的板子

好,我上传一下上来。
型号是MXIC品牌的MX36LF1GE4,但是我搜索居然搜索不到。
看到开发板的硬件资料,发现居然是精简的核心板原理图,没有告诉我们Flash型号,也没有电源管理芯片相关电路。
我将其修改为MX35LF1G,在tb上面可以搜索出,MX35LF1GE4AB,这个型号应该是一样的。

以下是我编译出来的镜像:
sinlinx-v3s-linux.zip
           镜像第一次启动的时候,8s就可以开机完毕了,第二次启动的时候会多次尝试使用sd卡,要40s左右,不知道是不是有界面选择的原因,我等屏幕到了,然后再做后续介绍。

好的,刚好我手头有这个型号的spiflash,我下载进去试试,就是MX35LF1G,估计携程MX36是写错了
再问一下这个镜像默认的屏幕是多大分辨率的?
还有,如果你常用qq咱们可以一起讨论,我情况和你类似也是单片机转linux哈哈

一起交流是可以的,你在晕哥的别墅QQ群里,加我,名字跟论坛ID一样。
我问过客服,他的描述是这样的:

请问驱动5寸屏幕,需要修改提供的源码吗
已读
alexlees  2021-1-5 13:47:41
一样的 

也就是说,应该不需要修改源码,但是既然是嵌入式单板,使用LCD控制,没有匹配屏幕分辨率的方案,是需要修改源码的,客服的回复似乎不科学,所以我得收到屏才能明确。

最近编辑记录 LinjieGuo (2021-01-08 13:35:02)

离线

楼主 #33 2021-01-13 11:59:51

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 581
积分: 585
个人网站

Re: [慢更]小白探索如何使用V3s播放音乐 

拿到屏幕了,上个图是这样的,应该是屏幕不匹配。
sinlinx019.png

离线

楼主 #34 2021-01-13 15:24:50

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 581
积分: 585
个人网站

Re: [慢更]小白探索如何使用V3s播放音乐 

那么,应该怎么修改,以匹配LCD呢?
从论坛里的文章,依稀可以得出以下猜测
(1)修改某个fex文件,重新编译,就可以完成配置。
(2)修改设备树文件
(3)修改LCD驱动源码。

最近编辑记录 LinjieGuo (2021-01-13 15:25:14)

离线

楼主 #35 2021-01-13 15:29:50

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 581
积分: 585
个人网站

Re: [慢更]小白探索如何使用V3s播放音乐 

既然我们是买的板子,肯定要有技术支持啊。
尝试与开发板的技术联系,得到以下回应。
sinlinx020.png
    他们已经帮我们配好了,将对应的fex文件,cp为sys_config.fex文件就可以了。/笑
    我们一条命令搞定:

cp tools/pack/chips/sun8iw8p1/configs/tiger-spinand-standard/sys_config.fex.800x480 tools/pack/chips/sun8iw8p1/configs/tiger-spinand-standard/sys_config.fex

然后重新执行 ./build.sh

    编译后得到 img文件,重新烧写进去,启动出来,正常进入界面。
sinlinx_021.jpg

    随便触摸一下,发现左右和上下反过来了。

使用最新的2020年8月份的源码,触摸屏正常了。

最近编辑记录 LinjieGuo (2021-01-14 13:58:27)

离线

楼主 #36 2021-01-14 09:47:53

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 581
积分: 585
个人网站

Re: [慢更]小白探索如何使用V3s播放音乐 

在晕哥的指导下,找到了相关的gcc工具:
sinlinx_022.jpg
晕哥说,用最后2个gcc,我们进入这个目录看看。
sinlinx023.png
果然,是一样的。

最近编辑记录 LinjieGuo (2021-01-14 09:48:04)

离线

楼主 #38 2021-01-14 13:37:38

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 581
积分: 585
个人网站

Re: [慢更]小白探索如何使用V3s播放音乐 

所以,我们编译器的路径就是:
/home/sinlinx/SIN-V3s/sinlinx-v3s-sdk/buildroot/out/host/bin/

我们尝试使用:
arm-linux-gcc
arm-linux-g++
来编译应用程序。

最近编辑记录 LinjieGuo (2021-01-14 13:42:15)

离线

楼主 #40 2021-01-14 14:59:36

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 581
积分: 585
个人网站

Re: [慢更]小白探索如何使用V3s播放音乐 

上面我们已经知道应该使用那个编译器了,这个时候我们便是用这个编译器编译一个程序,放到单板上运行吧。

//hello.c   
#include <stdio.h>

int main(void)
{
    printf("hello whycan!\r\n");
    return 0;
}

编译器路径:/home/sinlinx/SIN-V3s/sinlinx-v3s-sdk/buildroot/out/host/bin/arm-linux-gcc

执行编译命令:
/home/sinlinx/SIN-V3s/sinlinx-v3s-sdk/buildroot/out/host/bin/arm-linux-gcc -o hello hello.c

离线

楼主 #41 2021-01-14 15:05:55

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 581
积分: 585
个人网站

Re: [慢更]小白探索如何使用V3s播放音乐 

得到了hello程序,我们发现,得通过一种方式传数据给单板。
手上又没有TF卡,又不懂怎么用usb传数据,NFS还没研究过,唯有使用调试串口通过命令行终端传输了。
参考我旧的帖子:https://whycan.com/t_4266.html
把lrzsz-0_12_20_tar.gz上传到/home/sinlinx/SIN-V3s/sinlinx-v3s-sdk/app目录。
(1)解压
tar -xzvf lrzsz-0_12_20_tar.gz
(2)配置
cd lrzsz-0.12.20/
./configure --cache=arm-linux
(3)编译
make CC=/home/sinlinx/SIN-V3s/sinlinx-v3s-sdk/buildroot/out/host/bin/arm-linux-gcc

编译得到lrz,lsz。存放在./src/ 目录之下。
我们将这2个工具打包进img文件里面。
修改build.sh。在copy_file_list项中添加2行内容:

    $APP_DIR/lrzsz-0.12.20/src/lsz:$ROOTFS_DIR/root/
    $APP_DIR/lrzsz-0.12.20/src/lrz:$ROOTFS_DIR/root/

最终结果如下

copy_file_list=(
    $ROOTFS_OVERRIDE_DIR/etc/inittab:$ROOTFS_DIR/etc/inittab
    $ROOTFS_OVERRIDE_DIR/etc/profile:$ROOTFS_DIR/etc/profile
    $ROOTFS_OVERRIDE_DIR/etc/wpa_supplicant.conf:$ROOTFS_DIR/etc/wpa_supplicant.conf
    $ROOTFS_OVERRIDE_DIR/etc/hostapd.conf:$ROOTFS_DIR/etc/hostapd.conf
    $ROOTFS_OVERRIDE_DIR/etc/udhcpd.conf:$ROOTFS_DIR/etc/udhcpd.conf
    $ROOTFS_OVERRIDE_DIR/etc/mdev.conf:$ROOTFS_DIR/etc/mdev.conf
    $ROOTFS_OVERRIDE_DIR/etc/ts.conf:$ROOTFS_DIR/etc/ts.conf
    $ROOTFS_OVERRIDE_DIR/etc/init.d/rcS:$ROOTFS_DIR/etc/init.d/
    $ROOTFS_OVERRIDE_DIR/etc/init.d/S50sshd:$ROOTFS_DIR/etc/init.d/
    $ROOTFS_OVERRIDE_DIR/etc/init.d/S90camera:$ROOTFS_DIR/etc/init.d/
    $ROOTFS_OVERRIDE_DIR/etc/init.d/S90wifiap:$ROOTFS_DIR/etc/init.d/_S90wifiap
    $ROOTFS_OVERRIDE_DIR/etc/init.d/S90wifista:$ROOTFS_DIR/etc/init.d/_S90wifista
    $ROOTFS_OVERRIDE_DIR/etc/init.d/S99appstart:$ROOTFS_DIR/etc/init.d/
    $ROOTFS_OVERRIDE_DIR/etc/ssh/sshd_config:$ROOTFS_DIR/etc/ssh/
    $ROOTFS_OVERRIDE_DIR/root/*.sh:$ROOTFS_DIR/root/
    $ROOTFS_OVERRIDE_DIR/root/demo-h264enc:$ROOTFS_DIR/usr/bin/
    $APP_DIR/demo-camera/demo-camera:$ROOTFS_DIR/usr/bin/
    $APP_DIR/demo-qt/digitalclock:$ROOTFS_DIR/root/
    $APP_DIR/lrzsz-0.12.20/src/lsz:$ROOTFS_DIR/root/
    $APP_DIR/lrzsz-0.12.20/src/lrz:$ROOTFS_DIR/root/
    $PREBUILT_DIR/libs/*:$ROOTFS_DIR/lib/
)

重头./build.sh,得到新的img文件,烧录进单板。

最近编辑记录 LinjieGuo (2021-01-14 15:06:32)

离线

楼主 #42 2021-01-14 15:09:12

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 581
积分: 585
个人网站

Re: [慢更]小白探索如何使用V3s播放音乐 

启动单板,启动SCRT终端,执行输入root,免密码登录
执行./lrz,弹出一个串口,把我们的可执行程序hello传输过去。
sinlinx024.png
因为我们的波特率是115200,所以,每秒传输速度大概10KB左右。
sinlinx025.png

最近编辑记录 LinjieGuo (2021-01-14 15:10:19)

离线

楼主 #43 2021-01-14 15:12:36

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 581
积分: 585
个人网站

Re: [慢更]小白探索如何使用V3s播放音乐 

执行hello程序

./hello

提示错误,应该是缺少权限,我们赋予它可执行权限:

chmod +x hello

继续执行

./hello

显然是成功了。
sinlinx026.png

离线

楼主 #44 2021-01-14 15:20:34

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 581
积分: 585
个人网站

Re: [慢更]小白探索如何使用V3s播放音乐 

同理,我们编写一个CPP版本的hellowhycan程序。

//hello.cpp
#include <iostream>
using namespace std;
int main(void)
{
	cout<<"hello whycan"<<endl;
	return 0;
}

执行编译命令:
/home/sinlinx/SIN-V3s/sinlinx-v3s-sdk/buildroot/out/host/bin/arm-linux-g++ -o helloCPP hello.cPP
发送到单板,赋予权限,然后执行,结果如下:
sinlinx027.png

离线

楼主 #45 2021-01-14 15:22:13

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 581
积分: 585
个人网站

Re: [慢更]小白探索如何使用V3s播放音乐 


上面的几步操作,说明: 我们可以使用这个编译器,编译c/cpp程序,并且能够顺利执行。



接下来,我们就应该交叉编译madplayer,尝试播放音频了。

最近编辑记录 LinjieGuo (2021-01-14 15:23:07)

离线

楼主 #46 2021-01-15 11:59:12

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 581
积分: 585
个人网站

Re: [慢更]小白探索如何使用V3s播放音乐 

我根据参考帖子的方法,交叉编译madplayer,结果是不顺利的,干脆直接在buildroot里面添加madplayer包。
但是sinlinx的源码包编译方法是使用build.sh脚本的,所以我们要这样做。
(1)阅读build.sh文件,得知编译流程
(2)我们手工处理
(3)注释掉手工处理的相关操作,然后./build.sh
        说干就干!通过阅读可以得知,有这样一段代码,用于buildroot的编译。

function build_buildroot()
{
	echo "Build buildroot"
	cd $BUILDROOT_DIR
	mkdir -p $BUILDROOT_OUT_DIR

	cp configs/sinlinx_defconfig $BUILDROOT_OUT_DIR/.config

	make O=$BUILDROOT_OUT_DIR oldconfig
	
	make O=$BUILDROOT_OUT_DIR

        rm -rf $ROOTFS_DIR
	mkdir -p $ROOTFS_DIR
	tar xvf $BUILDROOT_OUT_DIR/images/rootfs.tar.bz2 -C $ROOTFS_DIR

}

把某些变量展开,实际上是这样的。

echo "Build buildroot"
cd /home/sinlinx/SIN-V3s/sinlinx-v3s-sdk/buildroot
mkdir -p /home/sinlinx/SIN-V3s/sinlinx-v3s-sdk/buildroot/out

cp configs/sinlinx_defconfig /home/sinlinx/SIN-V3s/sinlinx-v3s-sdk/buildroot/out/.config

make O=/home/sinlinx/SIN-V3s/sinlinx-v3s-sdk/buildroot/out oldconfig
    
make O=/home/sinlinx/SIN-V3s/sinlinx-v3s-sdk/buildroot/out

rm -rf /home/sinlinx/SIN-V3s/sinlinx-v3s-sdk/rootfs
mkdir -p /home/sinlinx/SIN-V3s/sinlinx-v3s-sdk/rootfs
tar xvf /home/sinlinx/SIN-V3s/sinlinx-v3s-sdk/buildroot/out/images/rootfs.tar.bz2 -C /home/sinlinx/SIN-V3s/sinlinx-v3s-sdk/rootfs

        可以看出,这一段脚本,先复制了.config文件过来,然后make编译buildroot。然后创建rootfs文件,用于解压根文件系统。

最近编辑记录 LinjieGuo (2021-01-15 13:06:32)

离线

楼主 #47 2021-01-15 13:11:43

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 581
积分: 585
个人网站

Re: [慢更]小白探索如何使用V3s播放音乐 

我们应该怎么做呢?我们进入./buildroot/out目录,这个是工作目录。进入配置界面。

cd /home/sinlinx/SIN-V3s/sinlinx-v3s-sdk/buildroot/out
make menuconfig

        进入这个界面,把这个项给勾选上。(按Y)
   Target packages  --->
          Audio and video applications  --->
                  [Y] madplay
保存并退出,然后在这个目录下,执行命令

make
mkdir -p rootfs
sudo tar xvf ./images/rootfs.tar.bz2 -C ./rootfs

离线

楼主 #48 2021-01-15 13:13:35

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 581
积分: 585
个人网站

Re: [慢更]小白探索如何使用V3s播放音乐 

通过上面的步骤,已经成功构建根文件系统,我们来做打包操作。
只需要修改build.sh文件就可以了,注释掉相关的编译命令。

function build_buildroot()
{
	echo "Build buildroot"
	cd $BUILDROOT_DIR
	mkdir -p $BUILDROOT_OUT_DIR

#	cp configs/sinlinx_defconfig $BUILDROOT_OUT_DIR/.config

#	make O=$BUILDROOT_OUT_DIR oldconfig
	
#	make O=$BUILDROOT_OUT_DIR

        rm -rf $ROOTFS_DIR
	mkdir -p $ROOTFS_DIR
	tar xvf $BUILDROOT_OUT_DIR/images/rootfs.tar.bz2 -C $ROOTFS_DIR

}

        然后,执行这个脚本:
./build.sh
        生成一个img文件,烧写进单板,运行madplayer看看。

madplayer ./0001.mp3

执行成功,输出如下图所示,但是没有声音,不知道为啥。
sinlinx028.png

最近编辑记录 LinjieGuo (2021-01-15 13:17:14)

离线

楼主 #49 2021-01-15 13:22:14

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 581
积分: 585
个人网站

Re: [慢更]小白探索如何使用V3s播放音乐 

翻阅sinlinx的手册,执行下面2行命令,打开声音。

amixer cset numid=1,iface=MIXER,name='Master Playback Volume' 63
amixer cset numid=17,iface=MIXER,name='Speaker Function' 0

        然后,再次使用madplayer播放mp3文件

madplayer ./0001.mp3

        这一次,确实有声音了,也就是说,成功了。

最近编辑记录 LinjieGuo (2021-01-15 13:34:45)

离线

楼主 #50 2021-01-15 13:35:11

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 581
积分: 585
个人网站

Re: [慢更]小白探索如何使用V3s播放音乐 

为什么是这样呢?我这个小白肯定是不知道,那么我们百度一下尝试科普。
参考链接:https://jingyan.baidu.com/article/2c8c281ded86ef0008252ab0.html

        缺省情况下ALSA静音所有的输出。为了获得声音,必须解除主音量和PCM音量的静音。


        amixer -c 0 sset Master,0 100%,100% unmute


        amixer -c 0 sset PCM ,0 100% unmute

选项包括mute,unmute,capture,nocapture,rec,norec,数字或left:right。
        amixer不带参数运行时,返回声卡上所有通道的设置情况。


        为了在每次插入声卡驱动模块时,都打开静音,您可以在/etc/modules.conf加入下列语句:

 
        post-install snd-card-sb16 amixer -c 0 sset Master,0 100%,100% unmute && amixer -c 0 sset PCM ,0 100% unmute


        在成功插入了alsa声卡模块之后,系统会出现/proc/asound目录,这个目录描述了声卡的工作情况,以及创建的设备文件。

        虽然看不懂,但是我们知道了:

        缺省情况下ALSA静音所有的输出。为了获得声音,必须解除主音量和PCM音量的静音。

最近编辑记录 LinjieGuo (2021-01-15 13:45:43)

离线

楼主 #54 2021-03-03 17:05:12

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 581
积分: 585
个人网站

Re: [慢更]小白探索如何使用V3s播放音乐 

xfdr0805 说:

<b>我驱动装完了,板子是licheepi_zero ,烧录软件无法识别,你板子上的DW键是哪个引脚?</b>

SPIO_Flash的短接引脚。

离线

楼主 #61 2021-12-23 22:15:46

LinjieGuo
Moderator
注册时间: 2019-07-24
已发帖子: 581
积分: 585
个人网站

Re: [慢更]小白探索如何使用V3s播放音乐 

sck852414902 说:

怎么联系晕哥啊,我也想请假晕哥

发帖,描述清楚环境,描述清楚问题,晕哥会悄悄的出现......

离线

页脚

工信部备案:粤ICP备20025096号 Powered by FluxBB

感谢为中文互联网持续输出优质内容的各位老铁们。 QQ: 516333132, 微信(wechat): whycan_cn (哇酷网/挖坑网/填坑网) service@whycan.cn