700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > linux系统reales 基于uCLinux系统的IEEE1394设备驱动程序的编程研究与实现

linux系统reales 基于uCLinux系统的IEEE1394设备驱动程序的编程研究与实现

时间:2021-02-01 02:19:29

相关推荐

linux系统reales 基于uCLinux系统的IEEE1394设备驱动程序的编程研究与实现

本文分析了IEEE1394协议驱动层框架,介绍了uCLinux下IEEE1394设备驱动程序架构和编写IEEE1394视频设备驱动程序的步骤和方法。(1)IEEE1394网络架构IEEE1394的网络共有三层,分别是物理层、链接层及传输层。物理层主要的功能是数据的编码、译码与总线的判断。链接层主要功能为封包接收、封包传送与周期控制。传输层则是定义请求及响应协议,并用以实现读取、写人及锁住三个基本的传输动作。(2)uCLinux系统的IEEE1394的驱动程序编程研究尽管uCLinux沿用Linux的标准,但在uCLinux系统里编写IEEE1394设备驱动程序有其独特之处。从控制的角度来划分,IEEE1394驱动程序可以分为IEEE1394子系统、主机控制程序和设备驱动程序。IEEE1394子系统IEEE1394子系统即是IEEE1394_core。它通过定义一些数据结构、宏和功能函数来抽象所有的硬件设备。IEEE1394-core模块提供了为硬件处理的所有下层接口,包含所有IEEE1394设备驱动和主机控制的通用程序,IEEE1394设备驱动模块向子系统注册或者取消注册。对于特殊的IEEE1394设备(那些对任何子系统都不适合注册)需要注册fil仁。Peration和一些次设备号。所有的IEEE1394驱动程序都包括一个向子系统注册的结构,当设备被总线检测到,调用此人口点。主机控制程序主机控制程序可以分为两类:。hci、unci。在本系统中选择:。hci1394作为IEEE1394子系统的驱动程序,主机处理驱动(ohci)向IEEE1394_core数据结构注册它的功能函数。它完成IEEE1394_core接口硬件的初始化、状态控制、传输差错控制以及数据处理。IEEE1394设备驱动程序如果不是通用IEEE1394设备,Linux内核里不会支持,因此有必要单独为其写驱动程序。在此通过L讯uxAPI功能函数描述IEEE1394设备驱动程序的实现.IEEE1394_DEVIC是IEEE1394设备驱动程序实现的基础。其中初始化函数tvl394_init()完成系统加载时把IEEE1934设备驱动编译人内核,递交数据包函数及发送数据包函数实现对协议层的支持。设备驱动程序还要提供。Pen、reales。和ioctl等3个接口函数来完成对设备的打开、释放和控制处理,在Li、x2.4以后的内核中去掉了read、write、iseek这些不必要的操作。此外,还需申请中断号r肉uest_irq。(3)将驱动程序编译进内核并建立设备文件,uCLinux内核不支持内核模块Ikm(Loadablekernelmodule)设备驱动及文件系统,需要静态地编译进内核。IEEE1394的高速、灵活和可扩展性,使其在很多方面都大有用武之地,可以预见嵌人式设备中会越来越多的使用该类设备,所以了解uCLinux中IEEE1394设备驱动程序的编写有非常好的意义。作者:马学文,朱名日(桂林工学院电子与计算机系广西541004)基于uCLinux系统的IEEE1394设备驱动程序的编程研究与实现@马学文$桂林工学院电子与计算机系!广西541004

@朱名日$桂林工学院电子与计算机系!广西541004本文分析了IEEE1394协议驱动层框架,介绍了uCLinux下IEEE1394设备驱动程序架构和编写IEEE1394视频设备驱动程序的步骤和方法。(1)IEEE1394网络架构IEEE1394的网络共有三层,分别是物理层、链接层及传输层。物理层主要的功能是数据的编码、译码与总线的判断。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。