iW1706-00 For 5V2A Adapter Design150mW22AWG1 5M 06Sep'11

笔记本AC电源适配器设计方案

笔记本AC电源适配器设计方案[图] 作者:安森美半导体|出处:21IC中国电子网| 2011-05-31 16:16:17 |阅读:1182次 笔记本AC电源适配器设计方案[图],笔记本电脑的应用非常广泛,且市场规模持续快速增长。相应地,笔记本电脑电源适配器的市场也非常可观。用户 笔记本电脑的应用非常广泛,且市场规模持续快速增长。相应地,笔记本电脑电源适配器的市场也非常可观。用户往往要求高性能、小尺寸或低重量的笔记本,同时价格适宜。对于电源适配器设计人员而言,就要选择适合的控制器,用于开发高能效、集成丰富保护特性、尺寸小巧的适配器。 有利的是,安森美半导体推出了新的NCP1250/NCP1251固定频率6引脚脉宽调制(PWM)反激控制器,极佳地满足设计人员的需求,使他们能够开发高性能、高功率密度的电源转换器,用于笔记本/上网本电源适配器,并可用于DVD或机顶盒(STB)的低功率开放式电源等应用。 笔记本电脑电源适配器要求 从大多数用户的使用情况来看,笔记本电脑有相当的时间内会处在轻载或待机条件下。与提高25%、50%、75%或100%负载条件下的能效相比,降低极低负载条件甚至是待机条件下的能耗及提升能效更具挑战性。这就要求电源控制器具备极佳的轻载或待机能耗性能。 此外,用于笔记本的AC-DC适配器也要求具备以下几种保护特性: .短路保护(SCP):必须能够承受输出持续短路而不会损坏。当故障消失时,适配器必 须能够从保护模式下恢复,并重新提供额定功率。 .过压保护(OVP):在环路被破坏的情况下,如光耦合器损坏或TL431分压网络受到影响,适配器必须立即停止工作,并在用户重新启动适配器前保持在此状态。 .过温保护(OTP):如果适配器的温度超过某个温度值,适配器就存在损坏的风险。为了避免出现这种情况,就需要使用热传感器来持续监测温度,并在温度超过设计人员设定的限制值的情况下,适配器就持续关闭。当用户重新启动电源且温度下降时,适配器复位。 .过功率保护(OPP):对某些电源而言,重要的是在最坏条件下——如负载消耗的电流过大,最大输出电流保持在受控状态,而不会实际出现短路。 NCP1250/1关键特性及功能解析 NCP1250/1是采用极小的6引脚TSOP封装的固定频率PWM控制器。除了尺寸极小,还提供即便是其它更高端控制器可能都不具备的众多优势。在最简单的应用(5个功能引脚)中,NCP1250/1非常合适于设计紧凑、保护功能减至最少的离线电源。由于还有第6个多功能引

虚拟声卡驱动程序VirtualAudioCable使用方法

一:安装软件 点击 选择是(Y) 选择I accept 选择Install 安装成功,点击“确定”按钮即完成安装。 二、软件的设置 点击桌面开始按钮所有程序---Virtual Audio Cable —Control panel 进入软件初始化 设置。 在Cables 中选择1(即首次设置一个虚拟通道),点击旁边的Set 按钮生成通道Cable1. 在参数设置区将Line 、Mic (可选可不选)、S/PDIF (可选可不选)三个选项后面的方框打钩,选中之后点击参数设置区内的设置按钮Set ,即完成了,对虚拟声卡通道1 的设置。 鼠标右键点击桌面右下角的喇叭------ 调整音频属性---- < 或者点击开始—控制面板--- 声音、 语音和音频设备--- 声音和音频设备>弹出: 选择语音 此时语音部分的设置为原系统默认的设备,保持不变。 选择音频: 改变声音播放、录音的选项内容:

如上图将声音播放、录音的默认设备全部改为Virtual Cable 1 。点击应用--- 确定即可。 三、打开录音机录音--- 录制电脑里播放出来的音频(不包含麦克风 里的声音) - 即“内录” 开始--- 所有程序—附件--- 娱乐--- 录音机 点击确定即可开始录音(注:此时可在电脑中打开相应的音频文件,开始录音) 此时音频波段显示有声音输入,但是电脑的耳机听不到正在播放的音频文件(属正常现象)。若想同时听到音频文件的内容点击桌面开始按钮所有程序---Virtual Audio Cable —Audio Repeater 。 修改为 点击Start 即可听到正在录制的音频文件。此时的录音即是通过虚拟声卡通道录制电脑里的声音的。 四、同时录电脑里播放的声音和麦克风收集的外部声音----- 即混录 <通过这种方法解决现有笔记本无“立体声混音”或“波形音”选项的问题> 在《三打开录音机录音--- 录制电脑里播放出来的音频(不包含麦克风里的声音)------------ 即“内录”》的同时,在打开一个irtual Audio Cable —Audio Repeater 窗口将其设置为: 即将外部麦克风收集的声音转移到虚拟声卡通道Cable1 中,同电脑里播放的声音一起被录音软件收录为音频文件。

戴尔笔记本电脑电源适配器电路原理浅析与维修

戴尔笔记本电脑电源适配器电路原理浅析与维修 近日修了几台戴尔笔记本电脑PA-12系列HA65NS2-00型电源适配器,版本号REV A01。其标称输入电压为100~240V(50-60Hz).输出电压为直流19.5V,输出电流为3.34A,额定输出功率65W。戴尔Latitude、lnsipron 系列笔记本电脑均可使用该电源适配器,社会保有量较大。 HA65NS02-00型电源适配器大量使用了表面安装器件,如图1所示。 由于元器件密度高、工作电压高、电流大,发生故障的几率较大。若没有电路原理图维修相当困难。这里给出根据实物绘出的电路原理图(见图2),浅析其工作原理,给出两个维修实例。图2中:器件编号与实物一致,贴片电容未标注容量,电阻R12和R18阻值为实测值(缺省标注数值的电阻单位为欧姆,缺省标注数值的电容单位为微法)。 一、电路组成与主要元器件作用 1.电磁干扰抑制电路与整流滤波电路L1、R1A、R1B、CXl、L2组成差模和共模低通滤波器,通常称作电磁干扰抑制电路(EMI),用来抑制开关电源产生的电磁干扰;BDl和C1组成桥式全波整流滤波电路,为直流/直流变换电路提供平滑的直流电源(主电源)。 2.直流/直流变换电路 集成电路IC1及外围元器件、功率场效应开关管Ql、开关变压器T1等构成直流/直流变换电路。ICl是HA65NS02-00电源适配器的核心器件,采用SOP-8封装,顶部有两行标记,一行为“1D07N25",一行为"5528"。在查阅了大量资料后排除了NCPl207、LD7575等 芯片,最终确认该芯片为富士电机(Fuji Electric)生产的FA5528。FA5528是采用CMOS制程的电流模式脉宽调制控制芯片,典型工作电流仅1.4mA。该芯片额定工作频率60kHz,轻载时自动降低工作频率,图3是FA5528的内部电路框图。 电阻R5A、R5D、c5和D1构成消尖峰电路。用来削除开关管导通与夹断时T1初级绕组产生的高压尖峰脉冲(用来保护开关管Q1)。遇Q1击穿故障时,应检查消尖峰电路。D2和R1构成IC1的启动电路。启动电流大约7mA。IC1启动后,芯片启动电路关闭,改由辅助电源供电,启动电路电流降至251uA左右。开关变压器T1-1、T1-2绕组、R7、D3、R8、C3、C10和R4组成18V辅助电源为ICI提供电能。开关管Q1源极与高压地之间的电阻R18和R14为开关电源过载保护取样电阻。当流经过载保护电阻的峰值电流大于IC1内部设定的保护阀值电平时,IC1内部过载保护比较器翻转关闭脉宽调制器输出.功率场效应开关管Q1夹断,达到保护目的。 3.输出整流滤波电路 开关变压器T1A、T1B绕组产生的低压脉冲电压,经共阴极双肖特基二极管D31A整流、C21A~C21C滤波后,产生平滑的+19.5V电源供电脑使用。电阻R21和电容C21组成的网络用来吸收开关变压器产生的尖峰脉冲,保护整流器件。高亮度发光二极管LED和电阻R13相串用来指示电源适配器工作状态。 4.输出电压稳压控制电路 线性光电耦合器PH1和精密并联型可调整稳压器IC32及其外围元器件与IC1内部误差放大器、脉宽控制电路共同构成输出电压稳压控制电路。 由于IC32的存在,PHI②脚的电位是恒定的,当+19.5V电压变化时。PH1内部发光二极管的发光强度发生变化,PH1内部光电三极管集电极和发射极间的电压UCE随之发生变化,UCE的变化经ICI内部误差放大器放大后,调

调料大全

调料大全 盐 别名:食盐、咸鹾 使用提示:每天6~10克 盐知识介绍: 盐是人们日常生活中不可缺少的食品之一,每人每天需要6~10克盐才能保持人体心脏的正常活动、维持正常的渗透压及体内酸碱的平衡,同时盐是咸味的载体,是调味品中用得最多的,号称“百味之祖(王)”。放盐不仅增加菜肴的滋味,还能促进胃消化液的分泌,增进食欲。 我国盐的资源很丰富,产盐区遍及全国,产量也很大,不仅能充分满足国内人民生活的需要,而且还可以组织出口。我国所产的食盐主要有海盐、井盐、池盐、矿盐等。 食盐按加工程度的不同,又可分为原盐(粗盐)、洗涤盐、再制盐(精盐)。原盐是从海水、盐井水直接制得的食盐晶体,除氯化钠外,还含有氯化钾、氯化镁、硫酸钙、硫酸钠等杂质和一定量的水分,所以有苦味;洗涤盐是以原盐(主要是海盐)用饱和盐水洗涤的产品;把原盐溶解,制成饱和溶液,经除杂处理后,再蒸发,这样制得的食盐即为再制盐,再制盐的杂质少,质量较高,晶粒呈粉状,

色泽洁白,多作为饮食业烹调之用;另外,还有人工加碘的再制盐,为一些缺碘的地方作饮食之用。 盐营养分析: 1. 食盐调味,能解腻提鲜,祛除腥膻之味,使食物保持原料的本味; 2. 盐水有杀菌、保鲜防腐作用; 3. 用来清洗创伤可以防止感染; 4. 撒在食物上可以短期保鲜,用来腌制食物还能防变质; 5. 用盐调水能清除皮肤表面的角质和污垢,使皮肤呈现出一种鲜嫩、透明的靓丽之感,可以促进全身皮肤的新陈代谢,防治某些皮肤病,起到较好的自我保健作用。 盐补充信息: 1. 盐储存时应阴凉避光密闭; 2. 若长期过量食用食盐容易导致高血压、动脉硬化、心肌梗死、中风、肾脏病和白内障的发生; 3. 虽然多吃盐有碍健康,饮食宜清淡,但并不是吃盐越少越好; 4. 盐除了食用之外,还可以作防腐剂,利用盐很强的渗透力和杀菌作用保藏食物; 5. 盐在工业上用途也很广,是重要的工业原料; 6. 盐用于催吐,应炒黄后溶化服用;水化点眼,洗疮。 盐适合人群: 一般人群均可食用 高血压患者、肾病患者、白内障患者、儿童不宜多食,水肿者忌食。 盐食疗作用: 盐味咸、性寒,入胃、肾、大肠、小肠经; 有补心润燥、泻热通便、解毒引吐、滋阴凉血、消肿止痛、止痒之功效; 主治食停上脘、心腹胀痛、胸中痰癖、二便不通、齿龈出血、喉痛、牙痛、目翳、疮疡、毒虫螫伤等症。 盐做法指导: 1. 由于现在的食盐中都添加了碘或锌,硒等营养元素,烹饪时宜在菜肴即将出锅前加入,以免这些营素受热蒸发掉; 2. 制作鸡、鱼一类的菜肴应少加盐,因为它们富含具有鲜味的谷氨酸钠,本身就会有些咸味; 3. 烹调前加盐:即在原料加热前加盐,目的是使原料有一个基本咸味,并有收缩,在使用炸、爆、滑馏、滑炒等烹调方法时,都可结合上浆、挂糊,并加入一些盐,因为这类烹调方法的主料被包裹在一层浆糊中,味不得入,所以必须在烹前加盐;另外有些菜在烹调过程中无法加盐,如荷叶粉蒸肉等,也必须在蒸前加盐,烧鱼时为使鱼肉不碎,也要先用盐或酱油擦一下,但这种加盐法用盐要少,距离烹调时间要短; 4. 烹调中加盐:这是最主要的加盐方法,在运用炒、烧、煮、焖、煨、滑等技

编译hello设备驱动程序详细过程

编译hello world设备驱动程序详细过程 1、安装与你的开发板相同的内核版本的虚拟机,我的板子内核是2.6.8.1,虚拟机是2.6.9, 一般是虚拟机的内核只能比板子内核新,不能旧 #uanme –a [1](在任何目录下,输入此命令,查看虚拟机的内核版本,我的内核版本是2.6.9) 2、在虚拟机上设置共享目录,我的共享目录在linux下的/mnt/hgfs/share [2]share是自己命名的,我的物理机上,即Windows下的目录是G:/share, 3、在Windows下,把开发板的的交叉开发工具链[3],内核源码包[4],复制到物理机的共享目录下[5] 即Windows下的目录是G:/share, 4、#cp /mnt/hgfs/share/cross-3.3.2.tar.bz2 /usr/local/arm [6] 在Linux下,把交叉工具链,复制到/usr/local/arm目录下 5、#cd /usr/local/arm 6、#tar jxvf cross-3.3.2.tar.bz2 [7] 并在当前目录/usr/local/arm下解压它cross-2.95.3.tar.bz2和gec2410-linux-2.6.8.tar.bz2也是用同样的命令去解压 7、#export PATH=/usr/local/arm/3.3.2/bin:$PATH [8] 安装交叉工具链,在需要使用交叉编译时,只要在终端输入如下命令 #export PATH=/usr/local/arm/版本/bin:$PATH 即可,在需要更改不同版本的工具链时,重新启动一个终端,然后再一次输入上面的命令即可,使用哪个版本的交叉工具链,视你要编译的内核版本决定,编译2.4版本的内核,则用2.95.3版本的交叉工具链,而2.6版本内核的,则要用3.3.2版本的交叉工具链。 8、#cp gec2410-linux-2.6.8.tar.bz2 /root [9]把内核拷贝到/root目录下, 9、#cd /root 10、#tar gec2410-linux-2.6.8.tar.bz2 [10] 在/root解压开发板的内核源码压缩包gec2410-linux-2.6.8.tar.bz2,得到gec2410-linux-2.6.8.1文件夹 11、#cd /root/ gec2410-linux-2.6.8.1 12、#cp gec2410.cfg .config [11] gec2410.cfg文件是广嵌开发板提供的默认内核配置文件,在这里首先把内核配置成默认配置,然后在此基础上用make menuconfig进一步配置,但在这里,不进行进一步的配置,对于内核配置,还需要看更多的知识,在这里先存疑。 13、#make [12]在内核源代码的根目录gec2410-linux-2.6.8.1下用make命令编译内核,注意,先安装交叉工具链,再编译内核,因为这里编译的hello.ko驱动模块最终是下载到开发板上运行的,而不是在虚拟机的Linux系统运行的,如果是为了在虚拟机的Linux系统运行的,则不用安装交叉编译工具链arm-linux-gcc,而直接用gcc,用命令#arm-linux-gcc –v 可以查看当前已经安装的交叉编译工具链的版本。这里编译内核不是为了得到内核的映象文件zImage(虽然会得到内核的映象文件zImage),而是为了得到编译hello.o模块需要相关联,相依赖(depends on)的模块。 14、#cd /root 12、#mkdir hello [13]在/root目录下建立hello文件夹, 13、#cd hel 14 、#vi hello.c [12]编辑hello.c文件,内容是《Linux设备驱动程序》第三版22页的hello world程序。 15、#vi Makefile [13]在hello文件夹下编辑Makefile文件, 16、obj-m := module.o [14] 这是Makefile的内容,为obj-m := module.omodule.o视你编辑的.c文件而定,这里则要写成hello.o,写完后,保存退出。 17、cd /root/hello

USB电源适配器的电路保护方案

USB电源适配器的电路保护方案 -------AEM科技应用工程师郭田青 随着当今社会人们手中的手机、平板电脑等智能手持设备功能的不断升级强大,娱 乐和个性化的应用也使得设备的电池的续航能力成为其中的一个死角。现实生活中我们可 能经常会看到我们周边的朋友随身带个移动电源,没有随身电源就只能随时找地方对设备 充电了。因此电源适配器作为标配产品一直成了人们的必需品。 以苹果手机的USB电源适配等为代表的小型化适配器越来越受人亲睐,越来越多的电路元器件的SMD小型化封装让以往常见的电源充电器能够做到更加的小巧玲珑,集美观与便 携于一体。本文从内部电路重要的安规器件——保险丝的应用角度,说明AEM科技推出的创新型SMD 250VAC FUSE——MF2410系列适应潮流,如何布局在这类小尺寸 AC/DC电源适配器上的交流应用,并如何做到我们倡导的“该断时及时断,不该断是不能断,时时保障安全!”的要求呢。 作为一款UMF通用模块型保险丝,必须让工程师在设计初考虑满足下述要求。 一、结构上最大限度满足小尺寸电源适配器对器件的小体积要求 以USB power Adapter为例,在这个层面上,结构限制了内部元件的体积,例如硬币大小的PCB面积也让SMD元件成了工程师的首选。 图1 整体设计的PCB面积均如硬币大小,可以让外观做到迷你型。 作为安规元件的保险丝,MF2410通用模块保险丝满足了上面的小体积和SMD工艺的需求。相对于传统保险丝的尺寸,MF的体积小优势十分明显。 我们来看看市面上常用的几种保险丝尺寸大小比例:

表1 常见保险丝尺寸比较 MF2410 6.1mm 2.5mm 2.2mm 15.3mm 图2 可以看出MF 通用模块保险丝最大限度满足对体积的要求。 二、适合回流焊与波峰焊的SMT工艺 从生产工艺上讲,AEM 的MF保险丝材料与结构独具特点,这种SMT生产工艺不单省却了不少人工与辅材成本,根据我们对采用SMD fuse的客户原因调查,插件的引脚弯折加工导致fuse本体坏也是其中一种原因。 其次,由于电源电路插件的元件必不可少,因此生产工厂有采用波峰焊焊接的方式,保险丝需要承受波峰焊锡高温,与业界其它SMD陶瓷保险丝相比,AEM 的UMF通用模块式保险丝以环氧树脂为基体,电镀通孔的连接方式使熔丝与端头形成可靠的电连接和机械连接,不存在端头焊接受热脱帽现象,耐高温的能力突出。 图3 满足波峰焊、回流焊或手工焊的焊接工艺

最新46种厨房常见调料用法大全

四十六种厨房常见调料用法大全 食盐、生抽&老抽、醋、料酒&白酒、甜面酱、豆瓣酱、豆豉、番茄酱&番茄沙司、芝麻酱、沙拉酱、白糖、冰糖、红糖、辣椒、麻椒、花椒、八角、香叶、桂皮、黑胡椒&白胡椒、孜然、小茴香、五香粉、咖喱、豆腐乳、剁椒、泡椒、淀粉、味精、鸡精、蚝油等46种调料的科学用法,玩转这些瓶瓶罐罐,烹饪一点不难! 1、食盐 炒菜时盐一定要晚放。要达到同样的咸味,晚放盐比早放盐用的盐量要少一些。如果较早放盐,则盐分已经深入食品内部,在同样的咸度感觉下不知不觉摄入了更多的盐分,对健康不利。 此外盐还有很多妙用,比如:清洗茶杯,淡盐水浸泡蔬菜水果可消毒杀菌等。食盐的20种妙用 2、酱油 老抽起上色提鲜的作用,尤其是做红烧菜肴或者是焖煮、卤味时。生抽生抽用来调味,适宜凉拌菜,颜色不重,显得清爽。 老抽和生抽的区别可以把酱油倒入一个白色瓷盘里晃动颜色,生抽是红褐色的,浓度稀;而老抽是棕褐色并且有光泽,浓度稠。 3、醋 1)解腥:在烹调鱼类时可加入少许醋,可破坏鱼腥; 2)祛膻:在烧羊肉时加少量醋,可解除羊膻气; 3)减辣:在烹调菜肴时如感太辣可加少许醋,辣味即减少;

4)添香:在烹调菜肴时加少许醋能使菜肴减少油腻增加香味; 5)引甜:在煮甜粥时加少许醋能使粥更甜; 6)催熟:在炖肉和煮烧牛肉,海带,土豆时加少许醋可使之易熟易烂; 7)防黑:炒茄子中加少许醋能使炒出的茄子颜色不变黑; 8)防腐:在浸泡的生鱼中加少许醋可防止其腐败变质; 此外,醋在日常生活中还可以起到皮肤护理、头发护理、护甲美甲、消除疲劳、预防感冒、去除异味等作用。醋的75种妙用 辨别:购买时要看配料表,选择酿造醋,切勿选择危害健康的醋精或者其他工业醋酸勾兑的醋。 发酵成熟的陈醋口味更回味悠远,勾兑醋味道更尖锐,酸味刺鼻。一瓶约500ml的酿制醋价格大概是勾兑醋的2~3倍。 4、酒类 料酒腌制肉类的加料酒可以去腥,炒鸡蛋时在蛋液中加少许料酒可以去腥提香。白酒可以在腌制肉类或制作卤肉时使用,制作泡菜时加入一些白酒可以杀菌添香。另外烹饪时有时会使用到红酒、啤酒等。 5、酱类 甜面酱是以面粉、水、食盐为原料制成的一种酱。除了可以直接蘸食之外,还可以当调味料用,如:京酱肉丝,酱爆鸡丁等。在做炸酱面时,和黄酱一起使用,味道更好。豆瓣酱以蚕豆为主要原料配制而成,以咸鲜味为主。是加常口味的川菜常用的调料,比如回锅肉、

虚拟设备驱动程序的设计与实现

虚拟设备驱动程序的设计与实现 由于Windows对系统底层操作采取了屏蔽的策略,因而对用户而言,系统变得 更为安全,但这却给众多的硬件或者系统软件开发人员带来了不小的困难,因为只要应用中涉及到底层的操作,开发人员就不得不深入到Windows的内核去编写属 于系统级的虚拟设备驱动程序。Win 98与Win 95设备驱动程序的机理不尽相同,Win 98不仅支持与Windows NT 5.0兼容的WDM(Win32 Driver Mode)模式驱动程序 ,而且还支持与Win 95兼容的虚拟设备驱动程序VxD(Virtual Device Driver)。下面介绍了基于Windows 9x平台的虚拟环境、虚拟设备驱动程序VxD的基本原理和 设计方法,并结合开发工具VToolsD给出了一个为可视电话音频卡配套的虚拟设备 驱动程序VxD的设计实例。 1.Windows 9x的虚拟环境 Windows 9x作为一个完整的32位多任务操作系统,它不像Window 3.x那样依 赖于MS-DOS,但为了保证软件的兼容性,Windows 9x除了支持Win16应用程序和 Win32应用程序之外,还得支持MS-DOS应用程序的运行。Windows 9x是通过虚拟机 VM(Virtual Machine)环境来确保其兼容和多任务特性的。 所谓Windows虚拟机(通常简称为Windows VM)就是指执行应用程序的虚拟环 境,它包括MS-DOS VM和System VM两种虚拟机环境。在每一个MS-DOS VM中都只运 行一个MS-DOS进程,而System VM能为所有的Windows应用程序和动态链接库DLL(Dynamic Link Libraries)提供运行环境。每个虚拟机都有独立的地址空间、寄存器状态、堆栈、局部描述符表、中断表状态和执行优先权。虽然Win16、Win32应用程序都运行在System VM环境下,但Win16应用程序共享同一地址空间, 而Win32应用程序却有自己独立的地址空间。 在编写应用程序时,编程人员经常忽略虚拟环境和实环境之间的差异,一般认为虚拟环境也就是实环境。但是,在编写虚拟设备驱动程序VxD时却不能这样做 ,因为VxD的工作是向应用程序代码提供一个与硬件接口的环境,为每一个客户虚 拟机管理虚设备的状态,透明地仲裁多个应用程序,同时对底层硬件进行访问。这就是所谓虚拟化的概念。 VxD在虚拟机管理器VMM(Virtual Machine Manager)的监控下运行,而VMM 实 际上是一个特殊的VxD。VMM执行与系统资源有关的工作,提供虚拟机环境(能产

一文弄懂电源适配器基础知识

一文弄懂电源适配器基础知识 什么是电源适配器?电源适配器,也称为外部电源,一般是当作体积小的便携式电子设备和电子设备的电源电压转换设备来进行使用的。它通常用于小型电子产品,如手机,液晶显示器和笔记本电脑等。它的功能是将家用的220伏高压转换成这些电子产品可以工作的约5伏至20伏的稳定低电压,以便它们能够正常工作。 有两种主要类型的电源适配器,开关电源和线性电源。 1、关电源是一种利用现代电子技术控制开关时间比并保持稳定输出电压的电源。电源适配器的开关电源一般由脉宽调制(PWM)控制IC和MOSFET组成。 优点:效率高,体积小,可在宽电压范围内工作。缺点:对电源电路的干扰很大,故障发生时难以排除故障。 2、性电源通过变压器,整流电路整流滤波器转换AC,以获得不稳定的直流电压。为了实现高精度直流电压,电源适配器必须通过电压反馈电路调节输出电压。 优点:电源技术成熟,电路简单,开关电源无干扰和噪声。缺点:电压反馈电路处于在线状态。由于使用了电感变压器,调节器的功耗很大,转换效率低,设备重量大。 像这种电源转换设备,通常用的时间长了,难免会出现许多问题,线路容易出现故障、电压不稳定等症状就会频发,那么当出现故障的时候,应该怎样处理呢? 1、首先我们可以根据指示来判断情况,可以看电源适配器指标灯,如果指示灯亮,一般认为从电源到适配器之间没有问题,必须保证是指示灯本身没坏。 2、电源线尽量避免弄断内部电缆形成断路。如果外置电源不供电,这时可以插上电池试试,如果机器可以正常启动,就有可能是电源线或者适配器有问题。然后用万用表检测,查明电源线是否有问题,以简化维修难度,不要一开始就尝试打开电源适配器外壳。打开电源适配器外壳的难度真的是太大了。 3、如果原装适配器有问题,无法维修或者来不及维修,可以先使用其他适配器替代,只要输出电压和功率大致相当即可。笔记本电脑内部还有稳压电路撑着,不要太过于担心输出电压不匹配的问题。

笔记本电源适配器维修心得

前段时间教研室一个同学拜托我维修了一个笔记本电源,说下我的维修心得。 1、用工具撬开电源外壳(一般笔记本电源都是胶粘上的,没有用螺丝固定),取出屏蔽罩 跟电源。 2、观察电路有无明显坏掉部位,结果没有,测试保险管好着,上电,绿色指示灯不亮,说 明无输出电压,测量整流滤波电容两端电压为310V左右,与理论的√2倍220符合,说明整流电路没坏,断电,电容上电压仍然保持(310V相当危险,被电了一下,但没仔细分析,忽略了这一个非常关键的点,后边再说),观察主控芯片为KA3842,百度其PDF,测试各引脚,发现5脚与7脚短路,与实际不符,分析原因,百度电路原理图,如图下图所示(图片来自中电网),分析短路原因:芯片坏了或者外围电路短路,本人更希望是外围电路的问题,因为外围都是些电阻电容的东西,实验室有现成的不用去买。 短路原因罗列为:○15脚为地,7脚为电源,电容C5是否击穿,焊掉电容,测试电容好着。○2检测跟7脚相连的另一条电路(R2,二极管,与绕组34),放掉二极管的一端,测试二极管跟电阻发现没问题,再量5,7引脚仍然短路,初步判定为第三种情况。○3 KA3842坏了,没办法焊掉KA3842(焊掉两脚的电容比八脚芯片可容易得多,这是我希望是○1○2的另一个原因),再测果然是它坏了。 3、查出是KA3842的7脚5脚短路,分析其损坏原因,KA3842为一PWM输出芯片,百度 故障多出现7,5,6三脚短路,原因是MOS管6N60损坏(图中是7N60,本人维修的是6N60,电流6A,耐压600V),GD短路导致高压进入6脚,焊掉MOS管,测量MOS 管貌似好的(第一次测有点拿不准,后来事实证明确实没坏,测试方法为:看封装,123脚分别为GDS,用表笔将3个脚短路一下,万用表打到蜂鸣档,红黑表笔分别接S和D,测得有一个电阻,反接为断开;红笔接G,黑表笔接D,给G极一个电压,再次测量SD 发现两个都导通,最初导通的那个电阻减小差不多一半,证明管子好的。) 4、去电子市场买了KA3842,顺便问了一下有无6N60,店主说有7N60,我想7N60是7A, 600V可以替换,顺便也买了一个(前面说了第一次测有点拿不准,去一次电子市场不容易就顺便买了个,以防万一)。买回之后将3842与6N60都替换了,测量有无短路(非

46种厨房常见调料用法大全

食盐、生抽&老抽、醋、料酒&白酒、甜面酱、豆瓣酱、豆豉、番茄酱&番茄沙司、芝麻酱、沙拉酱、白糖、冰糖、红糖、辣椒、麻椒、花椒、八角、香叶、桂皮、黑胡椒&白胡椒、孜然、小茴香、五香粉、咖喱、豆腐乳、剁椒、泡椒、淀粉、味精、鸡精、蚝油等46种调料的科学用法,玩转这些瓶瓶罐罐,烹饪一点不难! 1、食盐 炒菜时盐一定要晚放。要达到同样的咸味,晚放盐比早放盐用的盐量要少一些。如果较早放盐,则盐分已经深入食品内部,在同样的咸度感觉下不知不觉摄入了更多的盐分,对健康不利。 此外盐还有很多妙用,比如:清洗茶杯,淡盐水浸泡蔬菜水果可消毒杀菌等。 2、酱油 老抽起上色提鲜的作用,尤其是做红烧菜肴或者是、时。 生抽生抽用来调味,适宜,颜色不重,显得清爽。 老抽和生抽的区别可以把酱油倒入一个白色瓷盘里晃动颜色,生抽是红褐色的,浓度稀;而老抽是棕褐色并且有光泽,浓度稠。 3、醋 1)解腥:在烹调鱼类时可加入少许醋,可破坏鱼腥; 2)祛膻:在烧羊肉时加少量醋,可解除羊膻气; 3)减辣:在烹调菜肴时如感太辣可加少许醋,辣味即减少; 4)添香:在烹调菜肴时加少许醋能使菜肴减少油腻增加香味; 5)引甜:在煮甜粥时加少许醋能使粥更甜; 6)催熟:在炖肉和煮烧牛肉,海带,土豆时加少许醋可使之易熟易烂; 7)防黑:炒茄子中加少许醋能使炒出的茄子颜色不变黑;

8)防腐:在浸泡的生鱼中加少许醋可防止其腐败变质; 此外,醋在日常生活中还可以起到皮肤护理、头发护理、护甲美甲、消除疲劳、预防感冒、去除异味等作用。 辨别:购买时要看配料表,选择酿造醋,切勿选择危害健康的醋精或者其他工业醋酸勾兑的醋。 发酵成熟的陈醋口味更回味悠远,勾兑醋味道更尖锐,酸味刺鼻。一瓶约500ml的酿制醋价格大概是勾兑醋的2~3倍。 4、酒类 料酒腌制肉类的加料酒可以去腥,时在蛋液中加少许料酒可以去腥提香。 白酒可以在腌制肉类或制作卤肉时使用,制作时加入一些白酒可以杀菌添香。 另外烹饪时有时会使用到、等。 5、酱类 甜面酱是以面粉、水、食盐为原料制成的一种酱。除了可以直接蘸食之外,还可以当调味料用,如:,等。在做炸酱面时,和一起使用,味道更好。 豆瓣酱以蚕豆为主要原料配制而成,以咸鲜味为主。是加常口味的川菜常用的调料,比如、、、等。 豆豉是用黄豆或黑豆泡透蒸(煮)熟,发酵制成的食品,有特殊风味,用以制作“””等。 番茄酱是鲜番茄的酱状浓缩制品,不加调味剂,一般不直接吃。常用作鱼、肉等食物的烹饪作料,可以增色、添酸、助鲜。如、、、等。 番茄沙司是番茄酱加糖、食盐在色拉油里炒熟,蕃茄沙司有各种口味的,适合直接蘸食。如蘸。 简单地说:番茄酱就是纯番茄,而番茄沙司是番茄酱调味之后做成的。番茄沙司可以直接食用,而番茄酱必须经过烹饪处理。番茄酱的番茄红素含量大大高于番茄沙司。 芝麻酱简称麻酱,是一种把芝麻磨成粉末并调制的酱料。可以直接食用或者作为凉拌调料。常用于、、或的蘸料。

联想笔记本电脑电源适配器原理分析与检修

---------------------------------------------------------------最新资料推荐------------------------------------------------------ 联想笔记本电脑电源适配器原理分析与检修 该电源适配器(型号为 92P1107),输入电压为交流 1OOV~240V 市电;输出直流 20V;最大输出功率有 90W 和 65W 两种。 其核心控制芯片为贴片式脉宽调制集成电路(3843),该芯片内含振荡器、脉宽调制比较器、逻辑控制器;具有过流、欠压等保护控制功能;工作电压为 7V~34V;最高工作频率可达 500MHz;启动电流仅需 1mA。 该芯片的各引脚功能如下:①脚是内部误差放大器的输出端。 ②脚是反馈电压输入端,作为内部误差放大器的反相输入端,与同相输入端的基准电压(+2.5V)进行比较,产生误差控制电压,控制脉冲宽度。 ③脚为过流检测输入端,当该脚的电压高于 1V 时,禁止驱动脉冲的输出。 ④脚为 RT/CT 定时电阻和电容的公共接入端,用于产生锯齿振荡波。 ⑤脚为接地端。 ⑥脚为脉宽调制信号输出端。 ⑦脚为工作电压输入端(7V>Vi≤34V)。 ⑧脚为内部基准电压(VREF=5V)输出端。 根据实物绘制了其电路原理图如附图所示。 经比较,两种输出功率的电原理图完全相同,只是过流保护电 1/ 7

路取样电阻 R20~R23 的取值以及 20V 直流电压输出滤波电容C11 及 C12 的容量有所不同。 一、整流滤波电路交流市电经 1A 保险管 F1 及电容 C1 进入整流电路,BD1 全桥整流后,经主滤波电容 C7 滤波,在 C7 两端得到约 300V 的直流电压,作为适配器的工作电压。 该适配器的输入电路只有一个高频滤波电容 C1

大厨宝典 厨房各种调料汇总

大厨宝典厨房各种调料汇总 孔子的一句“不得其酱不食”充分说明了调味文化的源远流长。开门七件事,柴米油盐酱醋茶,调味料以其绝对优势占据着日常生活的重要位置。不论是刚刚踏入厨房的新手,还是深谙厨事的高手,想要做出好吃的食物,还要懂得运用调味料。使食材变成盘中的佳肴。 厨房必备调料的三大类 (一)液体味料 酱油:可使菜肴入味,更能增加食物的色泽。适合红烧及制作卤味。 蚝油:蚝油本身很咸,可以糖稍微中和其咸度。 沙拉油:常见的烹调用油,亦可用于烹制糕点。 麻油(香油):菜肴起锅前淋上,可增香味。腌制食物时,亦可加入以增添香味。 米酒:烹调鱼、肉类时添加少许的酒,可去腥味。 辣椒酱:红辣椒磨成的酱,呈赤红色黏稠状,又称辣酱。可增添辣味,并增加菜肴色泽。 甜面酱:本身味咸。用油以小火炒过可去酱酸味。亦可用水调稀,并加少许糖调味,风味更佳。 辣豆瓣酱:以豆瓣酱调味之菜肴,无需加入太多酱油,以免成品过咸。以油爆过色泽及味道较好 芝麻酱:本身较干。可以冷水或冷高汤调稀。 蕃茄酱:常用于茄汁、糖醋等菜肴,并可增加菜肴色泽。 醋:乌醋不宜久煮,于起锅前加入即可,以免香味散去。白醋略煮可使酸味较淡。

鲍鱼酱:采用天然鲍鱼精浓缩制造而成,适用于:煎、煮、炒、炸、卤……等等 XO酱:大部份主要是由诸多海鲜精华浓缩而成,适用于各项海鲜料理。 (二)固体味料 盐(低钠盐):烹调时最重要的味料。其渗透力强,适合腌制食物,但需注意腌制时间与量。 糖:红烧及卤菜中加入少许糖,可增添菜肴风味及色泽。 味精:可增添食物之鲜味。尤其加入汤类共煮最适合。 发粉:加入面糊中,可增加成品之膨胀感。 面粉:分为高、中、低筋三种。制作面糊时以中筋面粉为区。用于沾粉油炸时则具著色功能。 甘薯粉:多用于油炸物之沾粉。亦可作为芡粉。 生粉:为芡粉之一种,使用时先使其溶于水再勾芡,可使汤汁浓稠。此外,用于油炸物的沾粉时可增加脆感。 用于上浆时,则可使食物保持滑嫩。 小苏打粉:以适量小苏打腌浸肉类,可使肉质较松滑嫩。 豆豉:干豆豉用前以水泡软,再切碎使用。湿豆豉只要洗净即可使用。 (三)辛香料 葱:常用于爆香、去腥。 姜:可去腥、除臭,并提高菜肴风味。

笔记本电源适配器的构造及原理

笔记本电源适配器的构造及原理 构造 笔记本电脑电源适配器主要由以下几个部件构成: 1:压敏电阻,其功能是当外界电压过高时,压敏电阻阻值迅速变得很小,与压敏电阻串联的保险丝被熔断,从而保护其它电路不被烧坏。 2:保险丝,规格为2.5A/250V,当电路中的电流过大时,保险丝会熔断以保护其它元件。3:电感线圈(又称扼流圈),主要功能是降低电磁干扰。 4:整流桥,规格为D3SB,作用是把220V交流电变为直流电。 5:滤波电容,规格为180uF/400V,作用是滤除直流电中的交流纹波,使电路工作更可靠。6:运放IC(集成电路),保护电路、电压调节的重要组成部分。 7:温度探头,用于探测电源适配器的内部温度,当温度高于某一设定值时(不同品牌的电源适配器,其设定的温度阀值略有不同),保护电路会切断适配器的电压输出,从而保护适配器不受损坏。 8:大功率开关管,是开关电源中的核心元件之一,开关电源能“一开一关”地工作,开关管功不可没。 9:开关变压器,开关电源中的核心元件之一。 10:次级整流管,功能是把低压交流电变为低压直流电。在IBM的电源适配器中,整流管往往是由两个大功率并联工作的,以获得较大的电流输出。 11:次级滤波电容,规格为820uF/25V,共有两个,起滤除低压直流电中的纹波的作用。 除上述元件外,电路板上还有可调电位器及其它阻容元件。 工作原理 适配器是将220V交流电压转变为19V的直流电压,输出电流为3A。220V交流电压经D2整流,C1滤波得到300V直流电压。该电压一路经开关变压器T1的1、2脚绕组加到场效应开关管Q1(K2543)的D极,另一路经R4降压后得到约17V启动电压给ICI(KA3842)⑦脚供电,并从ICl内部基准电压发生器产生5V基准电压从第⑧脚输出。此时其内部振荡器起振,从第⑥脚输出调宽脉冲(PWM),驱动开关管Q1,使其工作在开关状态。Q1的D极输出电流在开关变压器Tl初级绕组上产生感应电压,经磁芯耦合到T1次级,在次级⑤、⑥脚绕组上产生的感应电压经肖特基二极管Q2、电容C4整流滤波后得到19V直流电压输出。

厨房五大调料妙用技巧

厨房五大调料妙用技巧 一怎样用味精 味精是一种增鲜味的调料,炒菜、做馅、拌凉菜、做汤等都可使用。 味精对人体没有直接的营养价值,但它能增加食品的鲜味,引起人们食欲,有助于提高人体对食物的消化率。另外,味精中的主要成分谷氨酸钠还具有治疗慢性肝炎、肝昏迷、神经衰弱、癫痫病、胃酸缺乏等病的作用。 味精虽能提鲜,但如使用方法不当,就会产生相反的效果。 1.对用高汤烹制的菜肴,不必使用味精。因为高汤本身已具有鲜、香、清的特点,味精则只有一种鲜味,而它的鲜味和高汤的鲜味也不能等同。如使用味精,会将本味掩盖,致使菜肴口味不伦不类。 2.对酸性菜肴,如:糖醋、醋熘、醋椒菜类等,不宜使用味精。因为味精在酸性物质中不易溶解,酸性越大溶解度越低,鲜味的效果越差。 3.拌凉菜使用晶体味精时,应先用少量热水化开,然后再浇到凉菜上,效果较好(因味精在45℃时才能发挥作用)。如果用晶体直接拌凉菜,不易拌均匀,影响味精的提鲜作用。 4.作菜使用味精,应在起锅时加入。因为在高温下,味精会分解为焦谷氨酸钠,即脱水谷氨酸钠,不但没有鲜味,而且还会产生轻微的毒素,危害人体。 5.味精使用时应掌握好用量,并不是多多益善。它的水稀释度是3000倍,人对味精的味觉感为0.033%,在使用时,以1500倍左右为适宜。如投放量过多,会使菜中产生似成非成,似涩非涩的怪味,造成相反的效果。世界卫生组织建议:婴儿食品暂不用味精;成人每人每天味精摄入量不要超过6克。

6.味精在常温下不易溶解,在70 C~90 C时溶解最好,鲜味最足,超过100C时味精就被水蒸气挥发,超过130C时,即变质为焦谷氨酸钠,不但没有鲜味,还会产生毒性。对炖、烧、煮、熬、蒸的菜,不宜过早放味精,要在将出锅时放入。 7.在含有碱性的原料中不宜使用味精,回味精遇碱会化合成谷氨酸二钠,会产生氨水臭味。 二怎样用酒 烹调中,一般要使用一些料酒,这是因为酒能解腥起香的缘故。要使酒起到解腥起香的作用 1. 烹调中最合理的用酒时间,应该是在整个烧菜过程中锅内温度最高的时候。比如煸炒肉丝,酒应当在煸炒刚完毕的时候放;又如红烧鱼,必须在鱼煎制完成后立即烹酒;再如炒虾仁,虾仁滑熟后,酒要先于其它作料入锅。绝大部分的炒菜、爆菜、烧菜,酒一喷入,立即爆出响声,并随之冒出一股水汽,这种用法是正确的。 2. 上浆挂糊时,也要用酒。但用酒不能多,否则就挥发不尽。 3. 用酒要忌溢和忌多,有的人凡菜肴中有荤料,一定放酒。于是“榨菜肉丝汤”之类的菜也放了酒,结果清淡的口味反被酒味所破坏,这是因为放在汤里的酒根本来不及挥发的缘故。所以厨师们在用酒时一般都做到“一要忌溢,二要忌多”。 4. 有的菜肴要强调酒味,例如葡汁鸡翅,选用10只鸡翅膀经油炸后加蕃茄酱、糖、盐一起焖烧至翅酥,随后加进红葡萄酒,着芡出锅装盒。这个菜把醇浓的葡萄酒香味作为菜肴最大的特点,既然这样,酒在出锅前放,减少挥发就变成

《设备驱动程序开发技术》大作业

《设备驱动程序开发技术》 大作业 WDM驱动程序的开发流程和要点班级:计算机科学与技术1004

摘要 DWDM(Windows Driver Model)是Microsoft公司推出的一种符合Windows2k/XP下的内核模式驱动程序的分层体系结构的驱动程序模式。它源于 Windows NT的分层32位设备驱动程序模型,它支持更多的特性,如即插即用( PnP ,Plug and Play )、电源管理( PM ,Power Management )、Windows管理诊断( WMI ,Windows Management Instrumentation )和 NT 事件。它为Windows操作系统的设备驱动程序提供了统一的框架,在Windows平台上,WDM将成为主流的驱动模式。WDM是Windows98和Windows2000使用的新的驱动程序设计规范。使用WDM使得硬件驱动程序更加稳定,让操作系统对硬件更加有效地控制硬件。除了定义一个驱动程序与操作系统连接的标准接口以外,WDM也指明了驱动程序应该采用的更加模块化的设计。 关键词: WDM、驱动程序、操作系统

1 概述 WDM(Windows Driver Model)是Microsoft公司推出的一种符合Windows2k/XP下的内核模式驱动程序的分层体系结构的驱动程序模式。相对于以前的KDM、VXD来说,它的性能更高、系统之间移植更加方便。随着Microsoft的操作系统的不断升级,WDM已逐步取代了KDM、VXD,成为了Microsoft系统下驱动程序开发的主流。 WDM是通过一个128位的全局唯一标识符(GUID)实现驱动程序的识别。应用程序与WDM 驱动程序通信时,应用程序将每个用户请求形成I/O请求包(IRP)发送到驱动程序。驱动程序识别出IRP请求后指挥硬件执行相应操作。 2 WDM驱动模型 WDM模型为存在于Windows 98和Windows 2000操作系统中的设备驱动程序提供了一个参考框架。尽管对于最终用户来说这两个操作系统非常相似,但它们的内部工作却有很大不同。 Windows 2000概述 图1是以我的视点所看到的Windows 2000操作系统,该图着重了驱动程序开发者所关心的特征。软件要么执行在用户模式中,要么执行在内核模式中。当用户模式程序需要读取设备数据时,它就调用Win32 API函数,如ReadFile。Win32子系统模块(如KERNEL32.DLL)通过调用平台相关的系统服务接口实现该API,而平台相关的系统服务将调用内核模式支持例程。在ReadFile调用中,调用首先到达系统DLL(NTDLL.DLL)中的一个入口点,NtReadFile 函数。然后这个用户模式的NtReadFile函数接着调用系统服务接口,最后由系统服务接口调用内核模式中的服务例程,该例程同样名为NtReadFile。

虚拟块设备驱动程序设计与分析

如果只是为了应付考试,这个文档就太啰嗦了,不用看,不过还是可以帮助记忆,考试只会考其中加粗字体的几个函数中的一个,至于是哪个我不能断定,因此要记的还是比较多的,要是能理解就更好了,结合课本和下面的解释应该能大体上弄明白这个虚拟块设备驱动的 实现过程,毕竟设备驱动是内核的一部分,光看下面的解释也是还是很头晕的,不过坚持看下去还是有收获的,我也差不多花了半天时间,不过,要是打算……的话就可以直接跳过了。 #define MAJOR_NR 70 //我们创造的虚拟块设备的主设备号 #define DEVICE_NAME “bdemo”//我们创造的虚拟块设备的名字,当设备加载成功后可用lsmod命令查看到该设备模块名 #define blkdemo_devs 2 //虚拟块设备的个数 #define blkdemo_rahead 2 //读取块设备时预读的扇区个数 #define blkdemo_size 4 //每个虚拟块设备的大小,单位为KB #define blkdemo_blksize 1024 //设备每个数据块的大小,即block,单位为字节 #define blkdemo_hardsect 512 //设备每个扇区的大小,单位为字节 struct blkdemo_device { // 这里定义了我们将要创造的虚拟块设备的数据结构 int size; // 用来记录真实块设备的容量,即下面data指针所指向数据存储区的大小 int use_cnt; // 用来记录正在使用该块设备的程序的个数 int hardsect; // 用来保存该块设备每个扇区的大小,单位为字节,即设备的使用计数 u8 *data; // 该指针所指向的内存区域就是该块设备真正用来存储数据的区域,在该设备还未被加载函数初始化时,该指针为// 空,即系统还没有为该设备分配内存区域。 }; static int blkdemo_sizes[blkdemo_devs]; //用来保存我们创建的所有虚拟块设备的大小,单位为KB static int blkdemo_blksizes[blkdemo_devs]; //用来保存我们创建的所有虚拟块设备中每个数据块的大小,单位为字节static int blkdemo_hardsects[blkdemo_devs];//用来保存我们创建的所有虚拟块设备中每个扇区的大小,单位为字节 //上面的这三个数组将会在我们加载这些设备时被注册到内核的数据结构中(即让内核中与之相关的一些指针指向它们,让内核能够读取我们所创建的设备的一些重要信息 //对于一个新的设备,内核肯定不知道他为何物,要想让内核识别我们自己创造的设备,则必须将该设备的一些信息、使用这个设备的方//法等告诉内核,由于内核早已编译成型,至于如何去告诉内核就早已模式化。内核中有几个指针数组(书本page81)专门用来完成上面的部分任务: // blk_size[]; // blksize_size[]; // hardsect_size[]; // read_ahead[]; //这几个数组都为每一个主设备号留有一个位置,对于2.4的内核,主设备号和次设备号均用8位二进制来表示(即短整型的高八位和//低八位),因此这几个数组都包含有256个元素,每个元素都是与主设备号对应的一个指针,如果主设备号所对应的设备不存在,则该//指针置为空(NULL),其实其中很多指针都为空,因为一般电脑上都没有那么多不同类型的块设备,当然,对于我们所创造的这个块设//备而言,它与系统中所存在的其他块设备的类型都不同,要为其确定一个主设备号,这个没什么硬性的规定,只要找一个没被使用的主//设备号就可以了,这个程序中使用的是70(前面的MOJOR_NR宏)。上面我们定义了保存有虚拟块设备信息的数组,现在只要将他们的//首地址赋给这几个数组中下标70(主设备号)所对应的指针元素即可。这一过程是在后面的加载函数中完成的。 static int blksize = blkdemo_blksize; struct blkdemo_device blkdemo_dev[blkdemo_devs];//这里才真正创建了我们虚拟块设备对应的结构体变量(一个全局数组),//每个元素为对应一个虚拟块设备 虚拟块设备的打开函数(open()): int blkdemo_open(struct inode *inode, strcut file *filp) { //设备文件对应的节点(inode)结构中包含有对应的设备号 int num; num = DEVICE_NR(inode->i_rdev);//用DEVICE_NR宏可求出该节点所对应设备的次设备号,所以num即为次设备号if (!blkdemo_dev[num].use_cnt) { //如果该设备的使用计数为0,则说该设备没有被任何程序使用,当虚拟块设备没有被//任何程序使用时,内核先前为该设备所分配的存储区很可能已经被释放掉了,甚至对于可移动设备而言,有可能该设备都被拔掉了(当//然,我们的虚拟块设备是不可能的),因此,在打开该设备时要进行严格的检查,不然会导致设备打开出错而造成系统崩溃。 check_disk_change(inode->i_rdev);//首先检查该块设备是否发生了变化,比如已经被移除了(该设备不可能,所以//此处没有用if来判断,只是形式的调用了一下该函数。 if (!blkdemo_dev[num].data)//然后判断该设备的数据存储区域是否已经被释放掉了 return –ENOMEM; //如果是,则返回,告知系统该设备无法打开,-ENOMEM是一个内核中定义的宏,它代表的意思是//“error,no memory”。 }//如果上述情况均未发生,一切正常,则打开设备,对于这个虚拟的块设备,其实没有什么好打开的,不过还是意思一下:blkdemo_dev[num].use_cnt++; //将设备的使用计数加1,表示又多了个程序使用该设备。 MOD_INC_USE_COUNT; //并且将内核所管理的模块使用计数也加1,好让内核也知道多了一个程序使用该虚拟设备模块。模块使//用计数是内核管理模块时要用的,只有当一个设备的模块使用计数为0时才能卸载该模块,这个值也可以通过lsmod命令查看到return(0);//返回0,表示设备已成功打开 } 虚拟块设备的释放函数(release()): int blkdemo_release(struct inode *inode, struct file *filp) {//释放并不代表将此设备从内核中移除了,他是对调用它的程序而言的,只表示这个程序不再使用该设备了int num;

相关文档
最新文档