十七、S3C2440 音频解码芯片WM8976声卡驱动移植、madplay测试

学习目标:1. WM9876接口和工作原理;2. WM9876驱动移植;3. WM9876应用测试;4. 问题总结

1. WM9876接口和工作原理

 本节使用了JZ2440开发板移植WM9876驱动,其结构如下图所示,最后利用madplay工具测试音频文件。

IIS和控制接口:

原文地址:https://www.cnblogs.com/lxl-lennie/p/10297120.html

时间: 2024-10-11 09:22:47

十七、S3C2440 音频解码芯片WM8976声卡驱动移植、madplay测试的相关文章

Linux声卡驱动移植和测试

一.分析驱动程序,根据开发板修改代码 代码太长,就不贴了,几个注意点: 1. 查看开发板原理图和S3C2410的datasheet,UDA1341的L3MODE.L3DATA.L3CLOCK分别与S3C2410的GPB2.GPB3.GPB4相连,IISLRCK=GPE0, IISSCLK=GPE1, CDCLK=GPE2,IISSDI=GPE3, IISSDO=GPE4,部分代码如下: 2. 两个重要结构体:audio_buf_t和audio_stream_t,其中audio_stream_t

I.MX6Q(TQIMX6Q/TQE9)学习笔记——新版BSP之声卡驱动移植

经过前面的移植,tqimx6q已经可以正常驱动触摸屏了,本文我们来移植声卡驱动. DTS编写 由于tqimx6q搭载的声卡是sgtl5000芯片,因此,参考dts目录下其它开发板的相应信息,我们可以在DTS中添加如下内容: / { ... regulators { ... reg_3p3v: 3p3v { compatible = "regulator-fixed"; regulator-name = "3P3V"; regulator-min-microvolt

AM335x(TQ335x)学习笔记——WM8960声卡驱动移植

经过一段时间的调试,终于调好了TQ335x的声卡驱动.TQ335x采用的Codec是WM8960,本文来总结下WM8960驱动在AM335x平台上的移植方法.Linux声卡驱动架构有OSS和ALSA两种架构,目前最常用的架构是ALSA,本文也使用ALSA架构对WM8960驱动进行移植. ASoC是对ALSA驱动架构的进一步封装.ASoC将ALSA驱动中的各模块抽象为三部分:Platform.Codec和Machine.Platform主要是平台硬件驱动,包括SoC的IIS模块.DMA等,在本文中

Linux声卡驱动移植和測试

一.分析驱动程序,依据开发板改动代码 代码太长,就不贴了,几个注意点: 1. 查看开发板原理图和S3C2410的datasheet,UDA1341的L3MODE.L3DATA.L3CLOCK分别与S3C2410的GPB2.GPB3.GPB4相连.IISLRCK=GPE0, IISSCLK=GPE1, CDCLK=GPE2,IISSDI=GPE3, IISSDO=GPE4,部分代码例如以下: 2. 两个重要结构体:audio_buf_t和audio_stream_t,当中audio_stream_

RT-Thread 学习笔记(十三)--- 开启基于RTGUI的LCD显示功能(3)<触屏屏驱动移植和测试>

软件环境:Win7,Keil MDK 4.72a, IAR EWARM 7.2, GCC 4.2,Python 2.7 ,SCons 2.3.2 硬件环境:Armfly STM32F103ZE-EK v3.0开发板 参考文章:RT-Thread编程指南 RT-Thread_1.2.0+lwip+rtgui0.8.0 移植心得 RT-Thread RTOS组件:RTGUI教程 Hello World 前面基本解决了显示驱动问题,接下来将要解决触摸屏的驱动问题. [1]加入触屏屏的驱动文件 (1)重

SylixOS音频驱动移植

1. 适用范围 本文档为实现Nuc970平台音频驱动的方法总结,以此提供一些SylixOS音频驱动移植方法的参考. 2. 原理概述 2.1 Codec编解码芯片 声音信号分为模拟信号和数字信号,Codec编解码芯片主要功能就是实现模拟信号与数字信号的互相转换. 本文调试的Codec型号为NAU8822L,其结构如图 2-1所示. 图 2-1 NAU8822L编解码芯片 其中主要使用到的是以下三个部分: Mixer  混音器设备,它的作用是将多个信号组合或者叠加在一起. 由输入混音器(input

SPI在linux3.14.78 FS_S5PC100(Cortex A8)和S3C2440上驱动移植(deep dive)

由于工作的原因,对SPI的理解最为深刻,也和SPI最有感情了,之前工作都是基于OSEK操作系统上进行实现,也在US/OS3上实现过SPI驱动的实现和测试,但是都是基于基本的寄存器操作,没有一个系统软件架构的思想,感觉linux SPI驱动很强大,水很深,废话少说,SPI总线上有两类设备:一类是主机端,通常作为SOC系统的一个子模块出现,比如很多嵌入式MPU中都常常包含SPI模块.一类是从机被控端,例如一些SPI接口的Flash.传感器等等.主机端是SPI总线的控制者,通过使用SPI协议主动发起S

linux网卡驱动移植

这里重要的是物理层PHY receiver,MAC(media access control)层,这里与软件中的协议栈不同,在硬件上MAC是PHY的下一层.DM9000A将MAC和PHY做到一起,也可以像IIS设备那样,SOC内有IIS的控制器,而声卡UDA1341放在片外.网卡当然也有这种设计,它是把PHY的下层MAC放入SOC内,片外的是PHY,当然我暂时还没见过这种的.DM9000A的输入是并行的总线,可以和CPU直接IO.而IIS那种需要通过:CPU CORE BUS->I2S控制器->

Ubuntu下声卡驱动解决方法alsa

一.首先介绍一下什么是ALSA : Advanced Linux Sound Architecture 的简称为 ALSA ,译成中文的意思是先进的Linux声音架构(这是google翻译的):一谈到架构就有点范围太大了,所以ALSA不仅仅是包括对声卡的支持和驱动: ALSA具有如下特征: 1.对所有音频接口的高效支持,从普通用户的声卡到专业级别多路音频设备: 2.声卡驱动完全模块化设计: 3.SMP and thread-safe design. 4.开发库(alsa-lib) 为程序设计提供