第 五 章 驱动程序设计
? 驱动程序的任务:就是把操作系统的驱动接口“映射”到具体的功能实现中。
? 伪驱动不直接与某个硬件交互,而仅仅实现操作系统提供的驱动程序接口。最常见的使
用方式是为上层软件提供一些服务。
? 驱动模型。
? 对于Windows平台,最为熟知的是桌面Windows的WDM(Windows Driver Model)模型。WDM体
系结构实行分层处理,即设备驱动被分成了若干层,典型地分成:高层驱动程序、中间层驱动程序、底层驱动程序。每层驱动再把I/O请求划分成更简单的请求,传给更下层的驱动执行。最底层的驱动程序在收到I/O请求后,通过硬件抽象层,与硬件作用,从而完成I/O请求工作。
?
?
?
? 编写驱动程序的3个要素:1、了解驱动程序所针对的硬件 ;2、了解目标操作系统的驱动工作机制;3、解驱动程序的模型 。 在Windows CE下,所有的驱动程序都以用户态下的DLL文件形式存在。 Windows CE下的驱动程序DLL也都是被动态加载的。 动态链接库DLL最大的优势是可以在运行的时候被动态加载,并且使用同一个DLL的多个程序之间
可以实现共享。
一、绘图方法: 1、颜色设置:
(1)颜色函数:
①QBColor:16种基本颜色。
QBColor(0)~QBColor(15)
②RGB颜色:
RGB(红色值,绿色值,蓝色值)
RGB(red,green,blue)
每种颜色值为:0~255
(2)颜色常数:
vbRed,vbGreen,vbBlue等。
(3)16进制颜色:
&H000000~&HFFFFFF
2、Pset:画点
Pset(x,y),c
3、Line:画线等
(1)画线:Line(x1,y1)-(x2,y2),c
(2)画矩形:Line(x1,y1)-(x2,y2),c,B
(3)填充矩形:Line(x1,y1)-(x2,y2),c,BF
4、Circle:画圆等
(1)画圆:Circle(x,y),r,c
(2)画弧、画扇形:Circle(x,y),r,c,start,end
Start、end:0~2π(画弧)
-2π~-0.000001(画扇形)
(3)画椭圆:Circle(x,y),r,c,,,aspect
Aspect:纵横比
二、图像类控件: 1、Line控件:线条控件
(1)BorderColor:边框颜色。
(2)BorderStyle:边框样式。
(3)BorderWidth:边框宽度。
2、Shape控件:图形控件
(1)Shape:形状。
(2)FillColor:填充颜色。
(3)FillStyle:填充样式。
3、Picture控件:图像框控件
(1)功能(简答):
①接受和输出图像;
②创建动态绘图;
③输出文本;
④作为控件容器。
(2)属性:
①AutoRedraw:自动重绘。
②AutoSize:自适应尺寸。
③Picture:控件中显示的图片。
(3)方法:
①PaintPicture:绘制图形文件。
②LoadPicture:加载图片。
对象名.Picture=LoadPicture(“带路径文件名”)
4、Image控件:图像控件
(1)功能:显示图像。
(2)属性:
①Picture:控件中要显示的图片。
②Stretch:图形是否调整大小与控件相适应。
True:图形调整大小与控件相适应。
False:控件调整大小与图形相适应。(默认)
(3)方法:
Move方法:
对象名.Move Left,Top,Width,Height
三、多媒体控件:
1、Declare语句:用于在模块级别中声明对DLL动态链接库中外部过程的引用。
2、API函数mciSendString:使用字符串作为操作命令来控制媒体的设置。 常用操作命令如下:
(1)Open:打开媒体设备。
(2)Close:关闭媒体设备。
(3)Play:播放媒体设备。
(4)Pause:暂停播放媒体文件。
(5)Stop:停止播放媒体文件。
3、ShockWaveFlash控件:Flash动画播放器
(1)属性:
①Movie:指定要播放的Flash动画文件。
②TotalFrames:总帧数。
③CurrentFrame:当前帧编号。
(2)方法:
①Play:开始播放动画。
②Back:跳到动画的上一帧。
③Forward:跳到动画的下一帧。
④Rewind:返回动画的第一帧。
⑤Stop:暂停Flash动画播放。
4、MediaPlayer控件:媒体播放器控件
(1)属性:
①URL:指定媒体文件的位置。
②fullScreen:是否处于全屏显示状态。
③playState:返回当前控件状态。
(2)controls:
①Controls.play:播放媒体。
②Controls.stop:停止播放。
③Controls.pause:暂停播放。
④Controls.currentPosition:返回当前播放进度。
⑤Controls.currentPositionString:返回时间格式字符串。
(3)currentMedia:
①currentMedia.duration:返回媒体的总长度。
②currentMedia.durationString:返回时间格式的字符串。
(4)settings:
①Settings.volume:设置音量,设置为0~100。
②Settings.balance:设置立体声的左声道和右声道的音量。
《VisualFoxpro程序设计》课程小结08会计一班戴佳进20xx10420xx4本学期我们专业开设了《VisualFoxpr…
谈一下C++程序设计的一些个人经验及看法,仅供参考,希望能对大家有用一、心得:编程序首先是在纸上写一下代码,代码写好了,才到电脑上…
?Strcmp的用法原型:externintstrcmp(constchar*s1,constchar*s2);用法:#inclu…
《高级语言程序设计》课程总结C语言程序设计是掌握计算机软、硬件系统工作原理必需的基本知识,也是计算机相关专业的重要入门知识。C语言…
第五章驱动程序设计?驱动程序的任务:就是把操作系统的驱动接口“映射”到具体的功能实现中。?伪驱动不直接与某个硬件交互,而仅仅实现操…
一、绘图方法:1、颜色设置:(1)颜色函数:①QBColor:16种基本颜色。QBColor(0)~QBColor(15)②RGB…
《VisualFoxpro程序设计》课程小结08会计一班戴佳进20xx10420xx4本学期我们专业开设了《VisualFoxpr…
一、课程设计名称金属探测器的设计二、课程设计目的1.进一步了解什么是自激振荡、产生正弦波自激振荡的条件、正弦波振荡电路的组成和判断…
毕业设计总结班级:学号:姓名:指导老师:一、总体情况毕业设计是学生在学习阶段的最后一个环节,是对所学基础知识和专业知识的一种综合应…
经过近一周的奋战,机械设计课程设计终于完成了。看着自己的“巨作”,打心底里佩服自己,虽然还有好多不足之处。从当初看着书本后面例题图…