第10讲 驱动及操作系统.ppt
《第10讲 驱动及操作系统.ppt》由会员分享,可在线阅读,更多相关《第10讲 驱动及操作系统.ppt(30页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、设备驱动设备驱动使用任何外部设备时都需要有相应驱动使用任何外部设备时都需要有相应驱动程序的支持。驱动程序为上层软件提供设程序的支持。驱动程序为上层软件提供设备的操作接口。对于上层软件而言,只需备的操作接口。对于上层软件而言,只需要调用驱动程序提供的接口,而不用理会要调用驱动程序提供的接口,而不用理会设备具体的内部操作。对于驱动程序而言,设备具体的内部操作。对于驱动程序而言,不仅要实现设备的基本功能函数,如初始不仅要实现设备的基本功能函数,如初始化、中断响应、发送、接收等,使设备的化、中断响应、发送、接收等,使设备的基本功能得以实现,而且针对设备使用过基本功能得以实现,而且针对设备使用过程中可能
2、出现的各种差错,还应提供完备程中可能出现的各种差错,还应提供完备的错误处理函数。的错误处理函数。驱动层软件有两个重要的概念:硬件抽象驱动层软件有两个重要的概念:硬件抽象层层(Hardware Abstraction Layer,HAL)和和板级支持包板级支持包(Board Support Package,BSP)。可以简单地理解为硬件抽象层与硬。可以简单地理解为硬件抽象层与硬件具有更加紧密的相关性,而板级支持包件具有更加紧密的相关性,而板级支持包与操作系统具有更加紧密的相关性。与操作系统具有更加紧密的相关性。具体地讲,硬件抽象层的目的是为了具体地讲,硬件抽象层的目的是为了将硬件抽象化,即通过程
3、序来控制诸如将硬件抽象化,即通过程序来控制诸如CPU、I/O、存储器等硬件的操作,从而使、存储器等硬件的操作,从而使得系统的设备驱动程序与硬件无关。得系统的设备驱动程序与硬件无关。设计板级支持包的目的主要是为驱动程序设计板级支持包的目的主要是为驱动程序提供访问硬件设备寄存器的函数包,从而提供访问硬件设备寄存器的函数包,从而实现对操作系统的支持。为保证与操作系实现对操作系统的支持。为保证与操作系统保持正确的接口,以便良好地支持操作统保持正确的接口,以便良好地支持操作系统,不同的操作系统应对应不同定义形系统,不同的操作系统应对应不同定义形式的板级支持包。在功能上,板级支持包式的板级支持包。在功能上
4、,板级支持包大体需要实现以下两方面的内容:大体需要实现以下两方面的内容:(1)在系统启动时,完成对硬件的初始在系统启动时,完成对硬件的初始化。化。(2)为驱动程序提供访问硬件的手段。为驱动程序提供访问硬件的手段。在为驱动程序提供访问硬件的手段时,在为驱动程序提供访问硬件的手段时,在为驱动程序提供访问硬件的手段时,在为驱动程序提供访问硬件的手段时,BSPBSP一般一般一般一般应完成以下工作:应完成以下工作:应完成以下工作:应完成以下工作:1)1)将驱动程序提供的将驱动程序提供的将驱动程序提供的将驱动程序提供的ISR(ISR(中断服务程序中断服务程序中断服务程序中断服务程序)挂挂挂挂载到中断向量表
5、上。载到中断向量表上。载到中断向量表上。载到中断向量表上。2)2)创建驱动程序初始化所需要的设备对象。创建驱动程序初始化所需要的设备对象。创建驱动程序初始化所需要的设备对象。创建驱动程序初始化所需要的设备对象。BSPBSP将硬件设备描述为一个数据结构。这个数据将硬件设备描述为一个数据结构。这个数据将硬件设备描述为一个数据结构。这个数据将硬件设备描述为一个数据结构。这个数据结构中包含这个硬件设备的一些重要参数,上层结构中包含这个硬件设备的一些重要参数,上层结构中包含这个硬件设备的一些重要参数,上层结构中包含这个硬件设备的一些重要参数,上层软件就可以直接访问这个数据结构。软件就可以直接访问这个数据
6、结构。软件就可以直接访问这个数据结构。软件就可以直接访问这个数据结构。3)3)为驱动程序提供访问硬件设备寄存器的函为驱动程序提供访问硬件设备寄存器的函为驱动程序提供访问硬件设备寄存器的函为驱动程序提供访问硬件设备寄存器的函数。数。数。数。4)为驱动程序提供可重用性措施,比如将为驱动程序提供可重用性措施,比如将与硬件关系紧密的处理部分在与硬件关系紧密的处理部分在BSP中完成,中完成,驱动程序直接调用驱动程序直接调用BSP提供的接口,这样提供的接口,这样驱动程序就与硬件无关。只要不同的硬件驱动程序就与硬件无关。只要不同的硬件系统的系统的BSP提供的接口相同,驱动程序就提供的接口相同,驱动程序就可在
7、不同的硬件系统上运行。可在不同的硬件系统上运行。4.3.3 A/D转换功能驱动实例ARM S3C440BX芯片自带一个路模芯片自带一个路模拟信号输入的拟信号输入的10位位A/D转换器,转换器,1.ADC(A/D Conversion)的引脚设置S3C440BX芯片与芯片与A/D功能有关的引脚功能有关的引脚如表如表4-6所示,所示,在电路中,对上述引脚需要按照图所示加在电路中,对上述引脚需要按照图所示加上电容。上电容。2.ADC2.ADC转换时间的计算转换时间的计算A/DA/D转换时间即完成一次转换时间即完成一次转换时间即完成一次转换时间即完成一次A/DA/D转换所需要转换所需要转换所需要转换所
8、需要的时间。如果系统时钟为的时间。如果系统时钟为的时间。如果系统时钟为的时间。如果系统时钟为66 MHz66 MHz且且且且ADCADC时钟时钟时钟时钟源的预分频值为源的预分频值为源的预分频值为源的预分频值为9 9,则,则,则,则1010位数字量的转换时间位数字量的转换时间位数字量的转换时间位数字量的转换时间为为为为3.ADC相关寄存器及其设置与与A/D转换相关的寄存器主要有如下转换相关的寄存器主要有如下三个:三个:(1)ADCPSR:采样预分频寄存器。:采样预分频寄存器。(2)ADCCON:采样控制寄存器。:采样控制寄存器。4.ADC驱动程序参考代码(1)(1)定义与定义与定义与定义与ADC
9、ADC相关的控制位。相关的控制位。相关的控制位。相关的控制位。#define ADCCON_FLAG#define ADCCON_FLAG0 x400 x40#define ADCCON_SLEEP#define ADCCON_SLEEP0 x200 x20#define ADCCON_ADIN0#define ADCCON_ADIN0(0 x02)(0 x02)#define ADCCON_ADIN1#define ADCCON_ADIN1(0 x12)(0 x12)#define ADCCON_ADIN2#define ADCCON_ADIN2(0 x22)(0 x22)#define A
10、DCCON_ADIN3#define ADCCON_ADIN3(0 x32)(0 x32)#define ADCCON_ADIN4#define ADCCON_ADIN4(0 x42)(0 x42)#define ADCCON_ADIN5#define ADCCON_ADIN5(0 x52)(0 x52)#define ADCCON_ADIN6#define ADCCON_ADIN6(0 x62)(0 x62)#define ADCCON_ADIN7#define ADCCON_ADIN7(0 x72)(0 x72)#define ADCCON_READ_START#define ADCCON
11、_READ_START0 x20 x2#define ADCCON_ENABLE_START#define ADCCON_ENABLE_START0 x10 x1 嵌入式操作系统概述嵌入式操作系统概述 嵌入式实时操作系统嵌入式实时操作系统嵌入式实时操作系统嵌入式实时操作系统大多数嵌入式系统应用在实时环境中,并且大多数嵌入式系统应用在实时环境中,并且大多数嵌入式系统应用在实时环境中,并且大多数嵌入式系统应用在实时环境中,并且随着嵌入式系统的广泛应用,实时系统和嵌入式随着嵌入式系统的广泛应用,实时系统和嵌入式随着嵌入式系统的广泛应用,实时系统和嵌入式随着嵌入式系统的广泛应用,实时系统和嵌入式系统已
12、经密切联系在一起了。一般地,嵌入式操系统已经密切联系在一起了。一般地,嵌入式操系统已经密切联系在一起了。一般地,嵌入式操系统已经密切联系在一起了。一般地,嵌入式操作系统是指支持嵌入式系统工作的操作系统,它作系统是指支持嵌入式系统工作的操作系统,它作系统是指支持嵌入式系统工作的操作系统,它作系统是指支持嵌入式系统工作的操作系统,它在知识体系和技术结构上与通用操作系统没有太在知识体系和技术结构上与通用操作系统没有太在知识体系和技术结构上与通用操作系统没有太在知识体系和技术结构上与通用操作系统没有太大区别。通用操作系统只注重平均性能,如对于大区别。通用操作系统只注重平均性能,如对于大区别。通用操作系
13、统只注重平均性能,如对于大区别。通用操作系统只注重平均性能,如对于整个系统来说,所有任务的平均响应时间是关键,整个系统来说,所有任务的平均响应时间是关键,整个系统来说,所有任务的平均响应时间是关键,整个系统来说,所有任务的平均响应时间是关键,并不关心单个任务的响应时间;而实时系统强调并不关心单个任务的响应时间;而实时系统强调并不关心单个任务的响应时间;而实时系统强调并不关心单个任务的响应时间;而实时系统强调的是实时性,即系统的正确性不仅依赖于计算结的是实时性,即系统的正确性不仅依赖于计算结的是实时性,即系统的正确性不仅依赖于计算结的是实时性,即系统的正确性不仅依赖于计算结果,也依赖于结果产生的
14、时间。因此,实时系统果,也依赖于结果产生的时间。因此,实时系统果,也依赖于结果产生的时间。因此,实时系统果,也依赖于结果产生的时间。因此,实时系统是指一个能够在指定的或者确定的时间内,实现是指一个能够在指定的或者确定的时间内,实现是指一个能够在指定的或者确定的时间内,实现是指一个能够在指定的或者确定的时间内,实现系统功能和对外部或内部、同步或异步事件作出系统功能和对外部或内部、同步或异步事件作出系统功能和对外部或内部、同步或异步事件作出系统功能和对外部或内部、同步或异步事件作出响应的系统。响应的系统。响应的系统。响应的系统。典型的嵌入式操作系统典型的嵌入式操作系统嵌入式嵌入式嵌入式嵌入式Lin
15、uxLinuxLinuxLinux是一种免费的、源代码完全开放的、符合是一种免费的、源代码完全开放的、符合是一种免费的、源代码完全开放的、符合是一种免费的、源代码完全开放的、符合POSIXPOSIX标准规范的操作系统。随着标准规范的操作系统。随着标准规范的操作系统。随着标准规范的操作系统。随着LinuxLinux的迅速的迅速的迅速的迅速发展,嵌入式发展,嵌入式发展,嵌入式发展,嵌入式LinuxLinux现在已经有许多版本,包括现在已经有许多版本,包括现在已经有许多版本,包括现在已经有许多版本,包括硬实时的嵌入式硬实时的嵌入式硬实时的嵌入式硬实时的嵌入式Linux(Linux(如新墨西哥工学院的
16、如新墨西哥工学院的如新墨西哥工学院的如新墨西哥工学院的RT-RT-LinuxLinux、堪萨斯大学的、堪萨斯大学的、堪萨斯大学的、堪萨斯大学的KURT-Linux)KURT-Linux)和一般的嵌和一般的嵌和一般的嵌和一般的嵌入式入式入式入式LinuxLinux版本版本版本版本(如如如如 CLinuxCLinux、PocketLinuxPocketLinux等等等等)。RT-LinuxRT-Linux把把把把LinuxLinux任务优先级设为最低,使得所任务优先级设为最低,使得所任务优先级设为最低,使得所任务优先级设为最低,使得所有实时任务的优先级都高于它,从而达到既兼容有实时任务的优先级都高
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第10讲 驱动及操作系统 10 驱动 操作系统
限制150内