通过A64 的I2S总线与回音消除模块连接,在A64中需要使能并配置daudio功能。

Daudio 为A64 的数字音频接口,可配置成i2s/pcm格式标准音频接口。

内核配置在lichee/linux-3.10/ 下执行make ARCH=arm64 menuconfig 选中

“AsoC support for daudio platform” 和 “AsoC support daudio0 machine”.

在sys_config.fex 配置daudio的特性;

关于daudio的源码在linux-3.10/sound/soc/sunxi/

sunxi_tdm_utils.c

tdm 处理的公共函数

sunxi_daudio.c

在asoc框架中设计的cpu_dai模型,i2s及pcm的引脚配置也在该文件中

sunxi_snddaudio0.c

处理daudio0部分,在asoc框架中设计为machine模型

测试工具 alsa-utils 或tinyalsa , arm-linux-gcc 为aarch64-linux-gnu-gcc 的软链接

编译alsa-lib-1.1.6

./configure  --host=arm-linux  CC=arm-linux-gcc  --disable-Python --prefix=/tmp

make

make install

编译alsa-utils-1.1.6

./configure --host=arm-linux  CC=arm-linux-gcc  --disable-alsamixer  --disable-xmlto  CPPFLAGS=-I/tmp/include  LDFLAGS=-L/tmp/lib  --with-alsa-prefix=/tmp/lib  --with-alsa-inc-prefix=/tmp/include

make

tinyalsa 修改Makefile gcc路径编译即可。

拷贝alsa-lib 及alsa-utils 相关lib和share到设备上,运行aplay

#ln aplay arecord

# ./aplay -l

**** List of PLAYBACK Hardware Devices ****

card 0: snddaudio0 [snddaudio0], device 0: SUNXI-TDM0 snd-soc-dummy-dai-0 []

Subdevices: 1/1

Subdevice #0: subdevice #0

card 1: sndhdmi [sndhdmi], device 0: SUNXI-HDMIAUDIO sndhdmi-0 []

Subdevices: 1/1

Subdevice #0: subdevice #0

#./arecord -Dhw:0,0 -d 20 -f cd -r 16000 -c 1 -t wav test.wav

# ./aplay -Dhw:0,0 test.wav

关于寄存器的具体配置可参考Allwinner_A64_User_Manual_V1.1.pdf 的”7.6. I2S/PCM” 。

A64 I2S调试的更多相关文章

  1. 嵌入式小系统I2S接口调试总结

    最近调试了I2S.由于芯片里面硬件配置出现了几个错误,着实也把我折腾了一番,不过,最终 还是把它搞定了.为了加深理解,就做个笔记吧,方面以后查找和学习. 定义:I²S或I2S(英语:Inter-IC ...

  2. 调试CS5343总结报告

    一周前接到新任务,调试CS5343,百度一下,CS5343是一款音频采集的AD芯片,CS5343驱动代码是现成的,我的工作是提高芯片的采样速率,看了一边芯片的Datesheet,辛好东西不是很多. 概 ...

  3. rtl8201以太网卡调试【转】

    转自:https://blog.csdn.net/wenjin359/article/details/82893122 参考博客:https://blog.csdn.net/zpzyf/article ...

  4. 音频采样中left-or right-justified(左对齐,右对齐), I2S时钟关系

    音频采样中left-or right-justified(左对齐,右对齐), I2S时钟关系 原创 2014年02月11日 13:56:51 4951 0 0 刚刚过完春节,受假期综合症影响脑袋有点发 ...

  5. 第38章 I2S—音频播放与录音输入—零死角玩转STM32-F429系列

    第38章     I2S—音频播放与录音输入 全套200集视频教程和1000页PDF教程请到秉火论坛下载:www.firebbs.cn 野火视频教程优酷观看网址:http://i.youku.com/ ...

  6. 数字麦克风PDM信号采集与STM32 I2S接口应用(四)--单片机源码

    本文是数字麦克风笔记文章的单片机程序.一些朋友私信我,调试出问题. 我就把源码贴出来吧,可能主要问题是DMA的配置. 尤其双DMA时候,需要手动启动I2S的接收DMA,HAL库没有这个接口,不看dat ...

  7. C# Web应用调试开启外部访问

    在用C#开发Web应用时有个痛点,就是本机用VS开启Web应用调试时外部机器无法访问此Web应用.这里将会介绍如何通过设置允许局域网和外网机器访问本机的Web应用. 目录 1. 设置内网访问 2. 设 ...

  8. NodeJs之调试

    关于调试 当我们只专注于前端的时候,我们习惯性F12,这会给我们带来安全与舒心的感觉. 但是当我们使用NodeJs来开发后台的时候,我想噩梦来了. 但是也别泰国担心,NodeJs的调试是很不方便!这是 ...

  9. 微信公众号开发之VS远程调试

    目录 (一)微信公众号开发之VS远程调试 (二)微信公众号开发之基础梳理 (三)微信公众号开发之自动消息回复和自定义菜单 前言 微信公众平台消息接口的工作原理大概可以这样理解:从用户端到公众号端一个流 ...

随机推荐

  1. Android已上线应用开源分享中(第一季)

    这是我上线的第一个android应用,在百度.腾讯.豌豆荚等平台测试通过,也有了部分用户,还是可以的啊,哈哈.现在分享给大家,当然,源码我也会分享. 1.软件是一个管理wifi的小工具 (1)查询.连 ...

  2. git error:【fatal: unable to access 'https://github.com/userId/prjName.git/': err or setting certificate verify locations:】

    $ git pull origin master fatal: unable to access 'https://github.com/userId/prjName.git/': err or se ...

  3. 2017U-Mail邮件营销平台新邮件模板功能

    据U-Mail调查表明,企业用户中普遍最关心群发邮件会不会被列入垃圾箱?的确,哪怕你最用功,一旦邮件进了垃圾箱,意味着全盘尽废.业界知名服务商U-Mail一直想用户之所想,急用户之所急,十几年如一日, ...

  4. request.getParameterMap和request.getParameter不一样的显示

    public class KeywordUtil {    /**     * 只提q参数关键字     *     * @param request     * @return 处理后的关键字Str ...

  5. angularJS报错$apply already in progress的原因和解决方法

    如果我们使用了AngularJS中的$scope.$apply()或者$scope.$digest(),我们很可能会遇到类似下面的错误,虽然这个错误没有太大影响,但是在日志中看起来还是很不爽的,日志中 ...

  6. excel 在web导入到数据库的操作方法

    这个操作的大致步骤是把本地文件存入到服务器端,然后再读取服务端的文件并且使用NPOI这个第三方的插件去读取文件导入到数据库批量插入需要注意的是,前端需要使用form包裹type=file的文件标签,并 ...

  7. VGG使用重复元素的网络

    由5个卷积层块(2个单卷积层,3个双卷积层),3个全连接层组成——VGG-11 from mxnet import gluon,init,nd,autograd from mxnet.gluon im ...

  8. js 页面 json对象转数组

    json_array(data); function json_array(data){ var len=eval(data).length; var arr=[]; for(var i=0;i< ...

  9. Anaconda常用命令

    conda版本: conda --version 环境信息: 激活环境后,conda info 查看环境已安装包: conda list 新建环境: conda create -n {NAME} [ ...

  10. PAT——1064. 朋友数(set用法)

    如果两个整数各位数字的和是一样的,则被称为是“朋友数”,而那个公共的和就是它们的“朋友证号”.例如123和51就是朋友数,因为1+2+3 = 5+1 = 6,而6就是它们的朋友证号.给定一些整数,要求 ...