DM8168的McSPI/McASP/McBSP接口

McSPI接口

SPI管脚:

管脚

类型

描述

SPI_SCLK

I/O

SPI串行时钟(MASTER时:输出;SLAVE:输入)

SPI_D0

I/O

能被配置为输入或输出(MOSImaster outslave inMISOmaster in slave out

SPI_D1

I/O

能被配置为输入或输出(MOSImaster outslave inMISOmaster in slave out

/SPI_CS0

I/O

SPI片选0MASTER时:输出;SLAVE:输入,低有效

/SPI_CS1

I/O

SPI片选1MASTER时:输出;SLAVE:输入,低有效

/SPI_CS2

I/O

SPI片选2MASTER时:输出;SLAVE:输入,低有效

/SPI_CS3

I/O

SPI片选3MASTER时:输出;SLAVE:输入,低有效

时序:

SPI接口可以进行以下配置:

  • SPI字长
  • SPI使能产生可编程
  • SPI使能断言
  • SPI使能极性
  • SPI时钟频率
  • SPI时钟相位(PHA
  • SPI时钟极性(POL

McASP接口

McASP0管脚:

管脚

类型

描述

MCA[0]_ACLKR

I/O

McASP0接收位时钟

MCA[0]_AHCLKR

I/O

McASP0接收高频主时钟I/O

MCA[0]_AFSR

I/O

McASP0接收帧同步IO

MCA[0]_AMUTEIN

I/O

McASP0禁音输入

MCA[0]_ACLKX

I/O

McASP0发送位时钟

MCA[0]_AHCLKX

I/O

McASP0发送高频主时钟I/O

MCA[0]_AFSX

I/O

McASP0发送帧同步

MCA[0]_AMUTE

O

McASP0禁音输出

MCA[0]_AXR[5]

I/O

McASP0发送/接收数据I/Os

MCA[0]_AXR[4]

I/O

MCA[0]_AXR[3]

I/O

MCA[0]_AXR[2]

I/O

MCA[0]_AXR[1]

I/O

MCA[0]_AXR[0]

I/O

McASP1管脚:

管脚

类型

描述

MCA[1]_ACLKR

I/O

McASP1接收位时钟

MCA[1]_AHCLKR

I/O

McASP1接收高频主时钟I/O

MCA[1]_AFSR

I/O

McASP1接收帧同步IO

MCA[1]_AMUTEIN

I/O

McASP1禁音输入

MCA[1]_ACLKX

I/O

McASP1发送位时钟

MCA[1]_AHCLKX

I/O

McASP1发送高频主时钟I/O

MCA[1]_AFSX

I/O

McASP1发送帧同步

MCA[1]_AMUTE

O

McASP1禁音输出

MCA[1]_AXR[1]

I/O

McASP1发送/接收数据I/Os

MCA[1]_AXR[0]

I/O

McASP2管脚:

管脚

类型

描述

MCA[2]_ACLKR

I/O

McASP2接收位时钟

MCA[2]_AHCLKR

I/O

McASP2接收高频主时钟I/O

MCA[2]_AFSR

I/O

McASP2接收帧同步IO

MCA[2]_AMUTEIN

I/O

McASP2禁音输入

MCA[2]_ACLKX

I/O

McASP2发送位时钟

MCA[2]_AHCLKX

I/O

McASP2发送高频主时钟I/O

MCA[2]_AFSX

I/O

McASP2发送帧同步

MCA[2]_AMUTE

O

McASP2禁音输出

MCA[2]_AXR[1]

I/O

McASP2发送/接收数据I/Os

MCA[2]_AXR[0]

I/O

几个概念:

  • 位、字、slot、帧

图中,位(bitb0-b7构成字(word),这个字加4个附着位(pad)构成slot,在这个slot中的对齐方式是左对齐。帧(Frame)由两个slotslot0slot1)构成。

  • McAsp支持的TDM格式

(A)FS的宽度可以是1bit

FS还可以设置延迟时间:

(A)     FS的宽度可以是1bit

(B)     是上一帧的最后一位,这个最后一位与slot0之间不允许有间隙

  • McAsp支持的I2S格式:

(A)     支持AXR0-AXR56个数据脚

I2S方式,我们通常用通道(channel)来代替Slot。一般两个通道:左通道和右通道

l  McASP支持的S/PDIF

McASP的发送器支持S/PDIF格式。S/PDIF格式是将时钟(CLOCK)、帧(FRAME)和数据(Data)编码成一个信号,通过AXRx脚来发送。所以需要了解编码方式、子帧格式、帧格式。

(1)     编码方式(BMCBiphase-Mark Code

(2)     子帧格式

Preamble code

Previous logical state

Logical state on pin AXRn

Description

B(或Z

0/1

1110 1000/00010111

块的开始和子帧1

M(或X

0/1

1110 0010/00011101

子帧1

W(或Y

0/1

1110 0100/00011011

子帧2

但是DM8168DIT仅产生Previous logical state0Preamble,因为McASP在发送DIT模式的时候是采用偶极性的编码方案。

(3)     帧格式

 

McBSP接口

管脚定义:

管脚

类型

描述

MCB_CLKR

I/O

McBSP的接收时钟

MCB_FSR

I/O

McBSP的接收帧同步

MCB_DR

I

McBSP的接收输入输入

MCB_CLKX

I/O

McBSP的发送时钟

MCB_FSX

I/O

McBSP的发送帧同步

MCB_DX

O

McBSP的发送数据输出

MCB_CLKS

I

McBSP的源时钟

时序:

我们可以设置每帧的相位数(单相位或双相位);每帧的字数(对于单相位,每帧字数可以达128,但是对双相位,只能是2个字,对应,每个相位1个字);每个相位中的字的长度。

  • 单相位帧

在这种方式,可以设置每帧的字数(word个数)、每个字(word)的位数(bit数)等

  • 双相位帧

这种方式,每个相位,只能设置1个字。在这里第一个相位的字是16bit,第二个相位的字是8bit

 

总结

  • McSPIMcASPMcBSP的区别是非常明显的,不多说
  • McBSP能实现部分McASP的功能,比如都支持TDMI2S,因此二者在功能上存在交叉

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/253397.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Sencha ID的注册

sencha id的注册用不着翻墙,直接访问下面的地址https://www.sencha.com/forum/register.php输入你的个人信息敞开来注册,我的注册名为charlie2018w非常顺利的过程你免费注册的id只能用30天。拥有这个id你就可以在eclipse或者sencha artchitect3或者webst…

ansible安装

1、简介 ansible是新出现的自动化运维工具,基于Python开发,集合了众多运维工具(puppet、cfengine、chef、func、fabric)的优点,实现了批量系统配置、批量程序部署、批量运行命令等功能。ansible是基于模块工作的&#…

《大道至简》第一章伪代码

o愚公移山伪代码 Import.java Import.java Punlic class yugongyishan { Public static void main (string [] args) { while(山不平,,) {毕力平险,指通豫南,达于汉阴;叩石垦壤,箕㮥于渤海之尾;…

Verilog Matlab 联合仿真

一、概述 在进行仿真时,有时候一部分参考模型(reference model)来自于Matlab,这就需要通过某种方法调用并运行Matlab的参考模型。verilog并不支持直接调用Matlab,但是可以通过DPI接口调用C函数,而Matlab又预…

转 alsa录音放音执行流程详解

前言: linux中,无论是oss还是alsa体系,录音和放音的数据流必须分析清楚。先分析alsa驱动层,然后关联到alsa库层和应用层。 链接分析: core/pcm_native.c文件中.mmap snd_pcm_mmap调用snd_pcm_mmap_data(substream, fi…

jenkins之qq企业邮箱配置

一、配置qq企业邮箱 1、登录jenkins后台管理,选择 系统管理 ☞ 系统设置 2、SMTP server配置 3、邮件通知配置 配置ssl等参数 点击 高级 4、发送邮件测试 总结:邮箱配置不成程分析 1、管理员账号和默认发送账号不一致。2、smtp服务器设置不正确;qq企业…

关于iOS里的做动画方法的差别与注意事项

CoreAnimation与UIView.animation... 这两个方式的主要差别在于,前者如果不主动设置,那么在动画做完以后,会恢复原状。后者则不会,动画做完后是什么样,控件就是什么样。 UIView.animation...是什么 首先我们来做一个动…

mysql-5.7 持久化统计信息详解

一、持久化统计信息的意义: 统计信息用于指导mysql生成执行计划,执行计划的准确与否直接影响到SQL的执行效率;如果mysql一重启 之前的统计信息就没有了,那么当SQL语句来临时,那么mysql就要收集统计信息然后再生成SQL语…

关于传感器”英寸“计量

传感器上的n是指对角线长度为16mm或18mm的n倍 以英寸代指的传感器大小称为靶面尺寸。 在CCD/CMOS出现之前,摄像机是利用一种叫作“光导摄像管(Vidicon Tube)”的成像器件感光成像的,这是一种特殊设计的电子管,其直径的…

关于USB-AUDIO使用ALSA编程的一点问题

转载自:http://blog.chinaunix.net/uid-25272011-id-3153434.html 最近在调试一款原相PAP7501摄像头中的USB的麦克风,USB层走的应该是标准的UAC协议,具体可以见USB的官网:http://www.usb.org/developers/devclass_docs#approved&a…

让input变成不可编辑状态的方法

有时候&#xff0c;我们希望表单中的文本框是只读的&#xff0c;让用户不能修改其中的信息&#xff0c;如使<input type"text" name"input1" value"中国"> 的内容&#xff0c;"中国"两个字不可以修改。实现的方式归纳一下&#…

npm run dev 在本地调试出现跨域问题解决方法

npm run dev 在本地调试出现跨域问题 在localhost:8080调试时会出现跨域问题&#xff0c;如图&#xff1a; 我的项目是用webpack作为前端自动化构建工具&#xff0c;可以在webpack-dev-server中配置跨域。webpack-dev-server是一个小型的nodejs服务器&#xff0c;是基于express…

alsa声音编程介绍

http://blog.csdn.net/q553716434/article/details/7881552 period(周期):硬件中中断间的间隔时间。它表示输入延时。 声卡接口中有一个指针来指示声卡硬件缓存区中当前的读写位置。只要接口在运行&#xff0c;这个指针将循环地指向缓存区中的某个位置。 frame size sizeof(o…

五、python模块以及包

模块&#xff1a;编写的别的程序中重用一些代码。 1 模块的写法&#xff1a; 创建一个.py文件&#xff0c;该文件中包含函数与变量。使用撰写python解释器本身的本地语言来编写模块。比如使用C代码编写python模块&#xff0c;并且在编译后&#xff0c;可以通过标准的python解释…

jeecg选择按钮带入其他单据值

前端的标签 <input class"inputxt" id"fshimian" name"fshimian" ignore"ignore" datatype"*" value"${shizhePage.fshimian}" /> <t:choose hiddenName"fshimian" hiddenid"fname"…

alsa编程

alsa 编程 分类&#xff1a; linux 2012-08-18 20:13 124人阅读 评论(0) 收藏 举报 编程parametersbufferloopsaccessplayback转载自&#xff1a;http://blog.csdn.net/spygg/article/details/7824750 ALSA(Advanced Linux Sound Architecture)是由内核驱动,标准的API库和一系…

Fiddler4入门——手机抓包

一、下载工具包 百度搜索”fiddler 下载“ &#xff0c;安装最新版本 下载的软件安装包为“fiddler_4.6.20171.26113_setup.exe”格式&#xff0c;双击安装。安装成功&#xff0c;在“开始”-“所有程序”&#xff0c;就会看见这样的图标&#xff0c;若是常用的话&#xff0c;也…

Node.js Performance

https://blog.risingstack.com/node-js-performance-monitoring-with-prometheus/转载于:https://www.cnblogs.com/skating/p/7544838.html

(五)DOM4j进行XML文件的解析及生成

DOM4j本身还是需要使用SAX建立解析器&#xff0c;然后通过文档依次找到根节点&#xff0c;再通过根节点查找每一个节点的内容. 1.写操作 import java.io.File;import java.io.FileOutputStream;import java.util.Iterator; import org.dom4j.Document;import org.dom4j.Documen…

Linux系统基础.作业

要求以root用户登录系统&#xff0c;右击桌面打开终端&#xff0c;查看当前登陆Linux系统所使用的用户名 查看哪些用户在系统上工作 修改当前时间为2018年8月26号11:28 查看2015年10月份日历 使用两种方法查看ls命令的使用说明 清除屏幕 ctrlL使用“useradd tom”命令新建tom用…