自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(63)
  • 资源 (5)
  • 收藏
  • 关注

翻译 asoc之为ALSA dapm创建编解码器到编解码器dai链接

为ALSA dapm创建编解码器到编解码器dai链接大多数音频流始终是从CPU到编解码器,因此您的系统将如下所示: --------- ---------| | dai | | CPU -------> codec| | | | --------- ...

2018-10-30 19:56:39 419

翻译 asoc之动态PCM

动态PCM描述动态PCM允许ALSA PCM设备在PCM流运行期间以数字方式将其PCM音频路由到各种数字端点。例如,PCM0可以将数字音频路由到I2S DAI0,I2S DAI1或PDM DAI2。这对于暴露多个ALSA PCM并可以路由到多个DAI的SoC DSP驱动程序非常有用。DPCM运行时路由由ALSA混频器设置决定,其方式与在ASoC编解码器驱动程序中路由模拟信号的方式相同。...

2018-10-30 19:54:41 1264

翻译 ASoC插孔检测

ASoC插孔检测ALSA有一个标准API,用于向用户空间表示物理插孔,其内核端可以在include / sound / jack.h中看到。ASoC提供此API的一个版本,增加了两个附加功能:它允许多个插孔检测方法在一个用户可见插孔上一起工作。在嵌入式系统中,通常在单个插孔上存在多个,但是由单独的硬件位处理。 与DAPM集成,允许DAPM端点根据检测到的插孔状态自动更新(例如,如果没有...

2018-10-30 19:50:45 613

翻译 ASoC机器驱动程序

ASoC机器驱动程序ASoC机器(或板)驱动程序是将所有组件驱动程序(例如编解码器,平台和DAI)粘合在一起的代码。它还描述了每个组件之间的关系,包括音频路径,GPIO,中断,时钟,插孔和电压调节器。机器驱动程序可以包含编解码器和平台特定代码。它将音频子系统注册为内核作为平台设备,并由以下结构表示: -/ * SoC机器* /struct snd_soc_card { ...

2018-10-30 19:47:25 242

翻译 ASoC平台驱动程序

ASoC平台驱动程序ASoC平台驱动程序类可分为音频DMA驱动程序,SoC DAI驱动程序和DSP驱动程序。平台驱动程序仅针对SoC CPU,并且必须没有特定于板的代码。音频平台DMA驱动程序可选择支持以下ALSA操作: -/ * SoC音频操作* /struct snd_soc_ops { int(* startup)(struct snd_pcm_substre...

2018-10-30 19:46:27 283

翻译 asoc之便携式设备的动态音频电源管理

便携式设备的动态音频电源管理描述动态音频电源管理(DAPM)旨在允许便携式Linux设备始终使用音频子系统中的最小功率。它独立于其他内核PM,因此可以轻松地与其他PM系统共存。DAPM对所有用户空间应用程序也完全透明,因为所有电源切换都在ASoC核心内完成。用户空间应用程序不需要更改代码或重新编译。DAPM根据设备内的任何音频流(捕获/回放)活动和音频混合器设置做出功率切换决策。D...

2018-10-30 19:44:35 380

翻译 ASoC数字音频接口(DAI)

ASoC数字音频接口(DAI)ASoC目前支持SoC控制器和便携式音频编解码器上的三种主要数字音频接口(DAI),即AC97,I2S和PCM。AC97AC97是许多PC声卡上常见的五线接口。它现在在许多便携式设备中也很流行。该DAI具有复位线,并在其SDATA_OUT(回放)和SDATA_IN(捕获)线上对其数据进行时间复用。位时钟(BCLK)始终由CODEC驱动(通常为12.288M...

2018-10-30 19:40:39 1095

翻译 ASoC Codec类驱动程序

ASoC Codec类驱动程序编解码器类驱动程序是通用的,与硬件无关的代码,用于配置编解码器,FM,MODEM,BT或外部DSP,以提供音频捕获和回放。它不应包含特定于目标平台或计算机的代码。应将所有平台和机器特定代码分别添加到平台和机器驱动程序中。每个编解码器类驱动程序必须提供以下功能: -编解码器DAI和PCM配置 编解码器控制IO - 使用RegMap API 调音台和音频控...

2018-10-30 19:36:53 733

翻译 linux音频子系统之alsa asoc层

ALSA SoC层概述ALSA片上系统(ASoC)层的总体项目目标是为嵌入式片上系统处理器(例如pxa2xx,au1x00,iMX等)和便携式音频编解码器提供更好的ALSA支持。在ASoC子系统之前,内核对SoC音频有一些支持,但它有一些限制: -编解码器驱动程序通常与底层SoC CPU紧密耦合。这并不理想,导致代码重复 - 例如,Linux为4种不同的SoC平台提供了不同的wm8731驱动...

2018-10-30 19:29:16 280

翻译 top、ps命令查看进程中的线程方法

方法一:PSps -a显示所有进程pid,“-T”选项可以开启线程查看。eg: ps -aT 显示所有线程方法二: Toptop用于实时查看各个线程情况,用top命令的“-H”选项,该选项会列出所有Linux线程。eg1. top -H 所有线程eg2. top -H -p <pid>  特定进程中的线程 ...

2018-10-28 11:24:46 10357

原创 内核段错误定位方法

1.加printk2.在配置文件配置 以下选项则出错时会在backstrace打印出错函数CONFIG_FRAME_POINTER=yCONFIG_DEBUG_KERNEL=y3. 找到内核编译出的System.map,里面包含内核编译出的符号表,注意这其中不包含insmod加载的如果需要知道所有的,可以在平台使用串口查看/proc/kallsyms如果/proc/kall...

2018-10-21 11:12:09 673

翻译 国内的source.android.com

http://source.android.youdaxue.com/  国内下载aosp源码方法 https://android.googlesource.com/platform/manifest换成git://mirrors.ustc.edu.cn/aosp/platform/manifest,以及将repo中的REPO_URL设置为https://gerrit-googlesour...

2018-08-26 10:50:03 4021

翻译 C语言环形缓冲fifo实现

很有用的环形缓冲区,多线程间注意加锁,收藏下#define BUFFSIZE 1024 * 1024 #define min(x, y) ((x) < (y) ? (x) : (y)) pthread_mutex_t lock = PTHREAD_MUTEX_INITIALIZER; struct cycle_buffer { unsigned char *buf; ...

2018-07-09 09:38:49 5123

原创 关于linux 内存重复释放的问题

内存申请函数malloc,对应的释放函数为free,多次释放会造成系统未知问题,鉴于free对指针指向NULL的指针释放后不会有任何操作,因此有必要在释放后将指针清0。但有时候将指针传给其它函数时,比如被其它函数调用后再释放就可能要注意点,如下函数#include #include #include #define SYS_NULL 0#define FREE_MEM(x)

2017-06-25 21:11:11 5275 2

原创 github与git快速入门

github git

2017-04-16 18:36:53 598

原创 NDK快速入门(android studio)

1、android studio下载地址:http://www.android-studio.org/2、NDK下载地址https://developer.android.google.cn/ndk/downloads/index.html3、NDK下载解压后放在全英文路径,并设置好环境变量,cmd中使用ndk-build可看出是否安装ok.4.参考此篇文章设置javah与ndk-bu

2017-04-16 00:53:49 569

转载 Linux ALSA 系统架构

alsa 音频 linux driver

2016-01-14 23:29:08 468

转载 IOS design patterns

If you're new here, you may want to subscribe to my RSS feed or follow me on Twitter. Thanks for visiting!iOS Design Patterns – you’ve probably heard the term, but do you know what it means?

2015-07-10 00:19:04 831

原创 objective-c 键值监听

//// ViewController.h// UIText//// Created by ethyn on 15/6/14.// Copyright (c) 2015年 ethyn. All rights reserved.//#import @interface ViewController : UIViewController{ NSString *_n

2015-06-15 01:20:12 433

原创 objective-c 异常处理

系统提供的异常处理:NSException继承于:NSObject确认的协议: NSCopying,NSCoding,NSObject声明:+ (NSException *)exceptionWithName:(NSString *)name                            reason:(NSString *)reason

2015-06-07 15:47:24 499

原创 蓝牙4.0开发之CC2541定时器使用

unsigned short timer_count = 0;void timer1_init(void){ T1CTL = 0x00; T1CTL |= 0xEB; // Set T3 control register: SysClk/32, enable interrupt, run in module mode T1CNTL = 0x00; //复位计数器 T1CCTL0

2015-02-27 11:56:57 2607

原创 块设备驱动的写法

块设备驱动在内核中有好多的例子,快速写好一个内核驱动最好的方法,我觉得是参考内核中其它代码是怎么写的,以下是我用内存模拟一块储存设备的例程,并且可以对此储存设备进行读写和分区的功能,代码如下#include #include #include #include #include #include #include #include #include #include #

2014-12-01 22:27:08 537

转载 ubuntu软件源更新

ubuntu下载软件慢的原因大部分是因为软件源地址是国外的,以下地址是国内提供的打开/etc/apt/sources.list,添加以下源deb http://mirrors.163.com/ubuntu/ trusty main restricted universe multiverse deb http://mirrors.163.com/ubuntu/ trusty-s

2014-11-24 10:57:50 2667

原创 cortexA8交叉编译工具制作——crosstool-ng

首先从官网http://www.crosstool-ng.org下载最新的crosstool-ng,我下载的是1.20.0版本,安装中遇到的问题,一般都是依赖的模块没有提前安装,可以参考http://www.crifan.com/files/doc/docbook/crosstool_ng/release/htmls/crosstool_ng_common_errors.html总得来说直接使

2014-11-24 10:54:19 680

原创 linux平台设备驱动程序的写法之操作led灯

很晚了,不多说了,还是在以前的led灯中断控制的基础上写的,以下

2014-11-14 01:46:21 680

原创 输入系统之led灯控制

目前下面的程序

2014-11-13 01:08:43 662

原创 led灯实验之字符设备驱动poll操作

linux字符设备驱动中poll的用处还是挺大的,

2014-11-11 21:43:11 537

原创 led灯定时防抖

void add_timer(struct timer_list * timer)#include Installs the timer structures in the list timer in the timer list.The timer_list structure is defined by:struct timer_list { struct ti

2014-11-11 15:06:44 539

原创 s5pv210中断法控制LED灯

前面介绍过轮询的方法控制LED灯,这里将介绍如何使e

2014-11-09 00:28:15 2116 1

原创 s5pv210使用查询方式实现按键灯操作

用TQ210写了个使用查询的方法实现按键灯的操作,具体实现方法如下:      1、原理图  由原理图可知,按键不按下的时候CPU检测到的是高电平,按下时处于低电平,以KEY1为例,KEY1连的是XIENT0,查芯片手册  由芯片手册可知XEINT0连的是GPH0_0脚,因此需要配置GPH0_0为输入脚,在此就不详述怎么配置输入了同时可看LED灯原理图 由原

2014-11-07 01:42:12 960

原创 s5pv210驱动之流水灯程序2

基于linux-3.2.8内核,如下驱动程序:

2014-10-31 01:06:38 937

原创 s5pv210驱动学习之点灯程序

今天成功利用自己

2014-10-30 01:19:20 642

原创 arm开发板最小文件系统的制作与nfs挂载方法

今天试了下

2014-10-17 01:48:57 526

原创 s5pv210 内核移植与nfs文件系统笔记

今天总算是将nfs文件系统给挂载上去了,当然,这还得感谢那些前辈们的各种小总结,下面我就将我的移植内核与挂载文件系统的步骤列出来,希望对大家有所帮助。      首先我用虚拟机装的Ubuntu14.04最新的操作系统,当然是64位的,这是必备的,(注意电脑配置太低的话装64位可能会有点卡),配置好交叉编译环境,环境配置我这就不作介绍了,从www.kernel.org下载你需要的内核,我用的是3

2014-10-14 23:51:11 666

转载 uboot编译全程

u-boot的Makefile分析    U-BOOT是一个LINUX下的工程,在编译之前必须已经安装对应体系结构的交叉编译环境,这里只针对ARM,编译器系列软件为arm-linux-*。    U-BOOT的下载地址: http://sourceforge.net/projects/u-boot  我下载的是1.1.6版本,一开始在FTP上下载了一个次新版,结果编译失

2014-10-07 21:25:39 783

原创 快速排序

假设需要排序的数组为A[0]……A[N-1],首先选取第一个数据作为比较数据,然后将所有比它小的数都放到它前面,所有比它大的数都放到它后面,这个过程称为一趟快速排序。快速排序算法如下:1)设置两个变量i、j,排序开始的时候:i=0,j=N-1;2)以第一个数组元素作为关键数据,赋值给key,即key=A[0];3)从j开始向前搜索,即由后开始向前搜索(j--),找到第一个小于key

2014-09-29 10:35:31 436

转载 S5PV210(TQ210)学习笔记——内核移植与文件系统构建

由于之前做过2440和6410,鉴于时间原因,这里暂时跨过其他模块的裸机驱动和uboot移植,直接进入内核移植及驱动开发方面的学习。内核移植其实很简单,因为内核是linus率领的linux内核开发团队开发并维护的,我们只需要跟我们的平台交叉编译一下即可使用,但是,内核移植也不简单,因为内核移植起见出现任何问题都可能会被卡住,因为内核代码非常庞大,我们无法通读内核代码,下面是我移植期间遇到的各种

2014-09-03 11:52:48 699

转载 tftp下载内核

飞凌官方提供了一键下载烧写linux的方式,相对来说比较方便,但是对于开发来说不够灵活,因此这篇文章把tftp相关的点介绍一下,整理下其中遇到的一些问题。         一键烧写本质上是启动位于SD卡中的Uboot,通过uboot读取sd卡中的文件到SRAM最后通过nand指令实现一键烧写,这一块可以参考飞凌提供的uboot源码中include\configs 中的smdk6410.h 的5

2014-09-02 19:05:42 503

原创 uboot tftp下载功能

linux内核ubuntu服务器linux测试嵌入式在嵌入式linux开发过程中经常需要从电脑下载引导程序uboot,如果每次都使用烧写到flash或者SD卡的方式,那是比较低效率的开发方式,导致公司没有竞争力,开发出来的产品也没有竞争力,在市场上就会落后挨打了。 这里就来介绍tftp方式从linux主机下载文件到开发板里运行,因此需要在主机linux系统里安装tftp

2014-09-02 11:34:00 538

转载 s5pv210 nand移植

转自:http://blog.csdn.net/liujia2100/article/details/8688810为了移植yaffs2文件系统,必须有nand的支持,linux-3.4.2 s5pv210 没有发现对nand的支持。参考2.6.35把nand的驱动移植过来。1. 配置内核MTDDevice drivers-->Memory Technology

2014-09-01 16:18:12 654

μC_OS-Ⅱ中文资料大全.pdf

Ucosii中文资料大全,学习ucosii,没有一本好的参考书也是不行的

2014-05-29

Data_Structures_and_Algorithm_Analysis_in_C

C语言中学习数据结构非常值得参考的资料,英文版本的

2014-05-29

C++经典书籍

很多经典书籍包含在内,学习C++的童子们不要错过

2014-04-23

CentOS6.2安装全过程

CentOS6.2在虚拟机上安装的全过程,给新手做参考

2012-06-04

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除