DM8168的McSPI/McASP/McBSP接口
McSPI接口
SPI管脚:
管脚
|
类型
|
描述
|
SPI_SCLK
|
I/O
|
SPI串行时钟(MASTER时:输出;SLAVE:输入)
|
SPI_D0
|
I/O
|
能被配置为输入或输出(MOSI:master out,slave in或MISO:master
in slave out)
|
SPI_D1
|
I/O
|
能被配置为输入或输出(MOSI:master out,slave in或MISO:master
in slave out)
|
/SPI_CS0
|
I/O
|
SPI片选0,MASTER时:输出;SLAVE:输入,低有效
|
/SPI_CS1
|
I/O
|
SPI片选1,MASTER时:输出;SLAVE:输入,低有效
|
/SPI_CS2
|
I/O
|
SPI片选2,MASTER时:输出;SLAVE:输入,低有效
|
/SPI_CS3
|
I/O
|
SPI片选3,MASTER时:输出;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
|
几个概念:
图中,位(bit)b0-b7构成字(word),这个字加4个附着位(pad)构成slot,在这个slot中的对齐方式是左对齐。帧(Frame)由两个slot(slot0、slot1)构成。
(A)FS的宽度可以是1bit
FS还可以设置延迟时间:
(A)
FS的宽度可以是1bit
(B)
是上一帧的最后一位,这个最后一位与slot0之间不允许有间隙
(A)
支持AXR0-AXR5共6个数据脚
在I2S方式,我们通常用通道(channel)来代替Slot。一般两个通道:左通道和右通道
l
McASP支持的S/PDIF
McASP的发送器支持S/PDIF格式。S/PDIF格式是将时钟(CLOCK)、帧(FRAME)和数据(Data)编码成一个信号,通过AXRx脚来发送。所以需要了解编码方式、子帧格式、帧格式。
(1)
编码方式(BMC:Biphase-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
|
但是DM8168的DIT仅产生Previous logical state为0的Preamble,因为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
总结
- McSPI与McASP和McBSP的区别是非常明显的,不多说
- McBSP能实现部分McASP的功能,比如都支持TDM和I2S,因此二者在功能上存在交叉。
分享到:
相关推荐
OMAP2 McSPI controller driver for Linux v2.13.6.
基于TI的SPI驱动编写,AM5728的DSP核(C66X)驱动AT25640B存储芯片的程序,实现AT25640B的读和写。软件编译平台是CCS8.3.
• 6 个UART,2 个McASPI,2 个McSPI,和3 个 I2C 端口 – 通用存储器控制器 (GPMC) • 具有多达7 芯片(NAND,NOR,复– 12 位逐次逼近寄存器(SAR) ADC 用NOR,SRAM等) 选择的灵活8/16-位异步 – 3 个32 位增强型...
私信博主免费获取真题解析以及代码
Screenshot_2024-05-10-20-21-01-857_com.chaoxing.mobile.jpg
数字图像处理|Matlab-频域增强实验-彩色图像的频域滤波.zip
2024-2030中国定向转向膜市场现状研究分析与发展前景预测报告
开源工时填报管理系统安装包
电子元件 电子行业 行业分析 数据分析 数据报告 行业报告
Node.js,简称Node,是一个开源且跨平台的JavaScript运行时环境,它允许在浏览器外运行JavaScript代码。Node.js于2009年由Ryan Dahl创立,旨在创建高性能的Web服务器和网络应用程序。它基于Google Chrome的V8 JavaScript引擎,可以在Windows、Linux、Unix、Mac OS X等操作系统上运行。 Node.js的特点之一是事件驱动和非阻塞I/O模型,这使得它非常适合处理大量并发连接,从而在构建实时应用程序如在线游戏、聊天应用以及实时通讯服务时表现卓越。此外,Node.js使用了模块化的架构,通过npm(Node package manager,Node包管理器),社区成员可以共享和复用代码,极大地促进了Node.js生态系统的发展和扩张。 Node.js不仅用于服务器端开发。随着技术的发展,它也被用于构建工具链、开发桌面应用程序、物联网设备等。Node.js能够处理文件系统、操作数据库、处理网络请求等,因此,开发者可以用JavaScript编写全栈应用程序,这一点大大提高了开发效率和便捷性。 在实践中,许多大型企业和组织已经采用Node.js作为其Web应用程序的开发平台,如Netflix、PayPal和Walmart等。它们利用Node.js提高了应用性能,简化了开发流程,并且能更快地响应市场需求。
18-17.网站域名DNS被劫持,网站服务器密码被改.mp4
QYResearch:2023年前五大2,3,3',4'-联苯四甲酸二酐(α-BPDA)企业占据全球91%的市场份额.docx
2024-2030中国仿生智能餐饮机器人市场现状研究分析与发展前景预测报告
82-82.渗透测试-CVE-2017-8464“震网三代 反弹shell演示课件.mp4
Node.js,简称Node,是一个开源且跨平台的JavaScript运行时环境,它允许在浏览器外运行JavaScript代码。Node.js于2009年由Ryan Dahl创立,旨在创建高性能的Web服务器和网络应用程序。它基于Google Chrome的V8 JavaScript引擎,可以在Windows、Linux、Unix、Mac OS X等操作系统上运行。 Node.js的特点之一是事件驱动和非阻塞I/O模型,这使得它非常适合处理大量并发连接,从而在构建实时应用程序如在线游戏、聊天应用以及实时通讯服务时表现卓越。此外,Node.js使用了模块化的架构,通过npm(Node package manager,Node包管理器),社区成员可以共享和复用代码,极大地促进了Node.js生态系统的发展和扩张。 Node.js不仅用于服务器端开发。随着技术的发展,它也被用于构建工具链、开发桌面应用程序、物联网设备等。Node.js能够处理文件系统、操作数据库、处理网络请求等,因此,开发者可以用JavaScript编写全栈应用程序,这一点大大提高了开发效率和便捷性。 在实践中,许多大型企业和组织已经采用Node.js作为其Web应用程序的开发平台,如Netflix、PayPal和Walmart等。它们利用Node.js提高了应用性能,简化了开发流程,并且能更快地响应市场需求。
渗透测试渗透测试之SQL注入基于报错注入(下)
Android是一种基于Linux内核(不包含GNU组件)的自由及开放源代码的移动操作系统,主要应用于移动设备,如智能手机和平板电脑。该系统最初由安迪·鲁宾开发,后被Google公司收购并注资,随后与多家硬件制造商、软件开发商及电信营运商共同研发改良。 Android操作系统的特点包括: 开放源代码:Android系统采用开放源代码模式,允许开发者自由访问、修改和定制操作系统,这促进了技术的创新和发展,使得Android系统具有高度的灵活性和可定制性。 多任务处理:Android允许用户同时运行多个应用程序,并且可以轻松地在不同应用程序之间切换,提高了效率和便利性。 丰富的应用生态系统:Android系统拥有庞大的应用程序生态系统,用户可以从Google Play商店或其他第三方应用市场下载和安装各种各样的应用程序,满足各种需求。 可定制性:Android操作系统可以根据用户的个人喜好进行定制,用户可以更改主题、小部件和图标等,以使其界面更符合个人风格和偏好。 多种设备支持:Android操作系统可以运行在多种不同类型的设备上,包括手机、平板电脑、智能电视、汽车导航系统等。 此外,Android系统还有一些常见的问题,如应用崩溃、电池耗电过快、Wi-Fi连接问题、存储空间不足、更新问题等。针对这些问题,用户可以尝试一些基本的解决方法,如清除应用缓存和数据、降低屏幕亮度、关闭没有使用的连接和传感器、限制后台运行的应用、删除不需要的文件和应用等。 随着Android系统的不断发展,其功能和性能也在不断提升。例如,最新的Android版本引入了更多的安全性和隐私保护功能,以及更流畅的用户界面和更强大的性能。此外,Android系统也在不断探索新的应用场景,如智能家居、虚拟现实、人工智能等领域。 总之,Android系统是一种功能强大、灵活可定制、拥有丰富应用生态系统的移动操作系统,在全球范围内拥有广泛的用户基础。
Node.js,简称Node,是一个开源且跨平台的JavaScript运行时环境,它允许在浏览器外运行JavaScript代码。Node.js于2009年由Ryan Dahl创立,旨在创建高性能的Web服务器和网络应用程序。它基于Google Chrome的V8 JavaScript引擎,可以在Windows、Linux、Unix、Mac OS X等操作系统上运行。 Node.js的特点之一是事件驱动和非阻塞I/O模型,这使得它非常适合处理大量并发连接,从而在构建实时应用程序如在线游戏、聊天应用以及实时通讯服务时表现卓越。此外,Node.js使用了模块化的架构,通过npm(Node package manager,Node包管理器),社区成员可以共享和复用代码,极大地促进了Node.js生态系统的发展和扩张。 Node.js不仅用于服务器端开发。随着技术的发展,它也被用于构建工具链、开发桌面应用程序、物联网设备等。Node.js能够处理文件系统、操作数据库、处理网络请求等,因此,开发者可以用JavaScript编写全栈应用程序,这一点大大提高了开发效率和便捷性。 在实践中,许多大型企业和组织已经采用Node.js作为其Web应用程序的开发平台,如Netflix、PayPal和Walmart等。它们利用Node.js提高了应用性能,简化了开发流程,并且能更快地响应市场需求。
46-46.渗透测试-Kali Linux安全渗透.mp4
电子元件 电子行业 行业分析 数据分析 数据报告 行业报告