一种基于DSP硬件驱动程序的开发方法与流程

文档序号:12122976阅读:768来源:国知局

本发明属于软件开发技术领域,特别是涉及一种基于DSP硬件驱动程序的开发方法。



背景技术:

目前,TI公司的DSP应用很广泛,随着DSP的功能越来越强大,片上外设种类及应用日趋复杂。传统的DSP程序开发包含两方面程序:即配置、控制、中断等管理DSP片内外设、接口的硬件相关程序和基于应用的算法程序。这样的系统结构,应用程序与硬件相关程序紧密的结合一起,限制了程序的可移植性和通用性,软件开发总要从零开始,存在诸多工作。一M硬件平台有变化,往往与硬件程序捆绑一起的应用程序也需改动,代码的维护性和可移植性均不高。



技术实现要素:

本发明的目的在于提供一种基于DSP硬件驱动程序的开发方法,通过建立硬件驱动程序的开发形式,即在DSP片内及片外设置硬件外设驱动程序的方式;并且通过构建应用程序与硬件外设输入输出的同一数据接口,将接口代码层次化。

本发明是通过以下技术方案实现的:

本发明为一种基于DSP硬件驱动程序的开发方法,包括如下步骤:

步骤一,在CCS应用环境集成的实时操作系统DSP中,硬件驱动程序以函数库的形式封装,应用程序通过调用DSP的API和外设接口,通过在DSP创建并配置硬件设备的IOM驱动模块;

步骤二,DSP的一设备接口IOM驱动模块,所述IOM驱动模块包括类驱动和迷你驱动;

步骤三,IOM驱动模块将类驱动和迷你驱动进行相互连通,包括定义I/O数据包以提交至迷你驱动进行读写;

步骤四,迷你驱动获取McBSP及DMA资源,McBSP及DMA的初始化参数用CSL配置,McBSP使用的是通道O。

优选地,所述步骤四中DMA包括接收通道和发送通道;所述接收通道通行方式是通过AD50 DOUT到McBSP DR再到DMA&ISR;所述发送通道通行方式是通过DMA&ISR到McBSP DX再到AD50 DIN。

优选地,所述迷你驱动的具体操作方法是首先在DSP配置工具中的User-Defined Devices项进行程序注册,注册信息中设置了驱动的初始化函数、IOM函数包指针、设备参数指针的名称。

优选地,所述步骤三的IOM驱动模块通过输入输出类驱动SIO/DIO与迷你驱动进行连接。

本发明具有以下有益效果:

本发明通过建立硬件驱动程序的开发形式,即在DSP片内及片外设置硬件外设驱动程序的方式;提高了系统程序的可移植性和通用性;并且通过构建应用程序与硬件外设输入输出的同一数据接口,将接口代码层次化,当硬件设备改动后,应用程序可不做修改,硬件驱动程序也具有反复利用的特点。

当然,实施本发明的任一产品并不一定需要同时达到以上所述的所有优点。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明的一种基于DSP硬件驱动程序的开发方法结构框图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。

请参阅图1所示,本发明为一种基于DSP硬件驱动程序的开发方法,包括如下步骤:

步骤一,在CCS应用环境集成的实时操作系统DSP中,硬件驱动程序以函数库的形式封装,应用程序通过调用DSP的API和外设接口,通过在DSP创建并配置硬件设备的IOM驱动模块;

步骤二,DSP的一设备接口IOM驱动模块,所述IOM驱动模块包括类驱动和迷你驱动;

步骤三,IOM驱动模块将类驱动和迷你驱动进行相互连通,包括定义I/O数据包以提交至迷你驱动进行读写;

步骤四,迷你驱动获取McBSP及DMA资源,McBSP及DMA的初始化参数用CSL配置,McBSP使用的是通道O。

其中,步骤四中DMA包括接收通道和发送通道;所述接收通道通行方式是通过AD50 DOUT到McBSP DR再到DMA&ISR;所述发送通道通行方式是通过DMA&ISR到McBSP DX再到AD50 DIN。

其中,迷你驱动的具体操作方法是首先在DSP配置工具中的User-Defined Devices项进行程序注册,注册信息中设置了驱动的初始化函数、IOM函数包指针、设备参数指针的名称。

其中,步骤三的IOM驱动模块通过输入输出类驱动SIO/DIO与迷你驱动进行连接。

值得注意的是,上述系统实施例中,所包括的各个单元只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。

另外,本领域普通技术人员可以理解实现上述各实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,相应的程序可以存储于一计算机可读取存储介质中,所述的存储介质,如ROM/RAM、磁盘或光盘等。

以上公开的本发明优选实施例只是用于帮助阐述本发明。优选实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施方式。显然,根据本说明书的内容,可作很多的修改和变化。本说明书选取并具体描述这些实施例,是为了更好地解释本发明的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本发明。本发明仅受权利要求书及其全部范围和等效物的限制。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1