版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第十三章PWM原理和应用何宾2023.09设计实例二:直流风扇驱动和测速实现本节将通过高级PWM定时器驱动直流风扇并对直流风扇的转速进行测量,并通过1602字符LCD屏显示测量的直流风扇的转速设计实例一:直流风扇驱动和测速实现
--直流风扇的驱动原理在本章设计中,使用了日本山羊电气株式会社(SANYODENKI)的SanAce409GA0405P6F001直流散热风扇。本节将对该直流散热风扇的驱动原理进行介绍直流风扇的驱动原理
--直流风扇的连线和规范直流散热风扇的外观风扇单元的导线以规定的电压连接到直流电源。红线为“+”,黑色或蓝色原则上为-(GND)直流风扇的驱动原理
--直流风扇的连线和规范传感器线在直流风扇传感器输出规范的情况下,连接了黄色导线。将该黄色导线连接到传感器的接收电路。传感器的规格会因风扇的型号而不同。不要让超过默认值的电流流过传感器的到导线。风扇可能会损坏控制线对于具有PWM速度控制功能的风扇,需要连接棕色导线。使用棕色导线进行控制直流风扇的驱动原理
--直流风扇的连线和规范该直流风扇的主要机械和电气规范规格参数值风扇制造商
日本山羊电气株式会社模型型号9GA0405P6F001尺寸(mm)40×40×20额定电压(V)5V直流工作电压范围(V)4.5~5.5额定电流(A)0.18额定输入(W)0.9额定转速(RPM)8000最大空气流量(m3/min)0.21最大空气流量(CFM)7.4噪声(dBA)28PWM控制有传感器类型脉冲传感器工作温度(℃)-20~+70外壳材料塑料质量(g)35直流风扇的驱动原理
--PWM速度控制功能PWM速度控制功能是通过改变控制段子和GND之间的输入脉冲信号的占空比从外部控制风扇转速的功能对于本节所使用的直流风扇来说,PWM与转速之间的关系直流风扇的驱动原理
--脉冲传感器(转速输出类型)风扇每旋转一圈,脉冲传感器就会输出两个脉冲波形,这对于检测风扇速度非常有利脉冲传感器可以集成在各种无刷直流电机(brushlessdirectcurrentmotor,BLDC)风扇中注:风扇内部或外部设备的噪声可能会影响传感器的输出直流风扇的驱动原理
--脉冲传感器(转速输出类型)下图给出了脉冲传感器电路从图中可知,脉冲传感器的输出采用了集电极开漏的模式,因此需要在脉冲传感器输出端口(测速线)上拉一个电阻到电源上直流风扇的驱动原理
--脉冲传感器(转速输出类型)
设计实例二:直流风扇驱动和测速的实现
--系统硬件连接在该设计中,需要将直流风扇连接到STC32G系列单片机硬件开发平台,以及将1602字符LCD连接到STC32G系列硬件开发平台
直流风扇与STC32G系列硬件开发平台的连接直流风扇的信号STC32G系列硬件开发接口STC32G12K128单片机引脚红色线(电源线)J3插座上标记为5V的插孔—黑色线(地线)J3插座上标记为GND的插孔—棕色线(PWM控制信号线)J1插座上标记为TP_DO的插孔P2.4黄色信号线(风扇测速信号线)STC32G12K128单片机外围第45号焊盘P2.0设计实例二:直流风扇驱动和测速的实现
--系统硬件连接(1602LCD与STC32G实验箱)1602字符LCD与STC32G系列单片机硬件开发平台的连接STC32G实验箱J5插座引脚号信号名字与单片机引脚连接关系
1602LCD引脚号信号名字功能1GND地1VSS地2VCC+5V电源3V0—2VCC+5V电源4RSP4.53V0LCD驱动电压输入5R/WP4.24RS寄存器选择。RS=1,数据;RS=0,指令6EP4.47DB0P6.05R/W读写信号。R/W=1,读操作;R/W=0,写操作8DB1P6.19DB2P6.26E芯片使能信号10DB3P6.37DB08位数据总线信号11DB4P6.48DB112DB5P6.59DB213DB6P6.610DB314DB7P6.711DB415PSB—12DB516N.C—13DB617/RST—14DB718VOUT—
15LEDA背光源正极,接+5.0V19A背光正极,接+5.0V16LEDK背光源负极,接地20K背光源负极,接地
设计实例二:直流风扇驱动和测速的实现
--系统设计策略在该设计中,系统的设计策略主要包括:
使用高级PWM定时器的通道3产生PWM信号来驱动直流风扇。通过按下/释放STC32G系列单片机硬件开发平台上标记为IN0的按键,来触发STC32G12K128单片机上的外部中断0在外部中断0的中断服务程序INT0_Isr()中修改占空值,并将修改后的占空值分别保存到通道3捕获/比较高位寄存器PWMA_CCR3H和捕获/比较低位寄存器PWMA_CCR3L中设计实例二:直流风扇驱动和测速的实现
--系统设计策略由于直流风扇的测速信号输出为周期性的方波信号,因此通过高级PWM定时器的通道1,捕获每个方波信号的上升沿,并产生PWM定时器捕获中断在PWMA_Isr()中,对脉冲个数进行计数/递增脉冲个数设计实例二:直流风扇驱动和测速的实现
--系统设计策略由于要在1602字符LCD屏上显示直流风扇的转速,为了避免频繁刷新1602字符LCD屏,通过STC32G12K128单片机的定时器0产生周期为1Hz(1s)的定时器0中断在Timer0_Isr()中,对测速输出的脉冲个数进行计数,如上图(a)所示。在Timer0_Isr()中,对脉冲个数设初值为0,在下一个定时器0中断来临时,为1秒内所得到的直流风扇测速输出的脉冲个数。根据上式给出的测速信号T周期与风扇转速N之间的关系,就可以通过计算测速信号的脉冲个数T来得到风扇转速N的值设计实例二:直流风扇驱动和测速的实现
--系统设计策略直流风扇的测速信号输出为开漏输出,因此需要该信号接上拉电阻上拉到STC32G12K128单片机的供电电压由于STC32G12K128单片机内的每个引脚都提供了可配置的上拉电阻,因此在该设计中通过软件使能STC32G12K128单片机内相应引脚的上拉电路,这样就无需在单片机外部再使用额外的上拉电阻元件,显著降低了硬件设计的复杂度设计实例二:直流风扇驱动和测速的实现
--添加已有的设计文件本节将已有的设计文件添加到新建立的设计工程中,主要步骤包括:同时选中\stc32_example\example_12_1目录下的文件lcd1602.h和lcd1602.c,并将这两个文件复制粘贴到当前工程目录\stc32_example\example_13_2中在Keil主界面左侧的Project窗口中,找到并展开Target1文件夹。在展开项中,找到并选中SourceGroup1文件夹,单击鼠标右键,出现浮动菜单。在浮动菜单内,选择AddExistingFilestoGroup‘SourceGroup1’...设计实例二:直流风扇驱动和测速的实现
--添加已有的设计文件弹出AddFilestoGroup‘SourceGroup1‘对话框界面。通过按下鼠标左键和Ctrl按键,同时选中文件lcd1602.h和lcd1602.c单击Add按钮,退出AddFilestoGroup‘SourceGroup1’对话框界面在Keil主界面左侧的Project窗口中,新添加了名字为lcd1602.h的文件和lcd1602.c的文件设计实例二:直流风扇驱动和测速的实现
--添加main.c文件#include"lcd1602.h"//包含头文件lcd1602.h
#definePWM_PERIOD1023//设置PWM信号的周期值
u8flag1s=0;//定义并初始化无符号字符型变量flag1su16PWM3_Duty=0;//定义并初始化无符号整型变量PWM3_Dutyu16count=0;//定义并初始化无符号整型变量countu16cnt=0;//定义并初始化无符号整型变量cnt设计实例二:直流风扇驱动和测速的实现
--添加main.c文件/*******定义PWMA中断服务程序PWM_ISR(),中断号26*********/voidPWMA_ISR()interrupt26{ PWMA_SR1=~0x02;//清除捕获/比较1的中断标志 count=count+1;//测速输出脉冲个数递增}/********定义定时器中断服务程序Timer0_Isr(),中断号为1*******/voidTimer0_Isr()interrupt1{flag1s=1;//标志flag1s设置为“1”cnt=30*count;//通过1秒内测速脉冲个数count,计算转速cntcount=0;//测速脉冲个数count设置为0}设计实例二:直流风扇驱动和测速的实现
--添加main.c文件voidINT0_Isr()interrupt0//定义外部中断0中断服务程序INT0_Isr(),中断号为0{ if(PWM3_Duty<1024)//如果占空值PWM3_Duty小于1024PWM3_Duty+=128;//占空值PWM3_Duty的值增加128 else//如果占空值PWM3_Duty大于等于1024 PWM3_Duty=0;//占空值PWM3_Duty的值设置为0/********占空值PWM3_Duty高8位加载到PWMA_CCR3H***********/ PWMA_CCR3H=(u8)(PWM3_Duty>>8);/********占空值PWM3_Duty低8位加载到PWMA_CCR3L************/PWMA_CCR3L=(u8)(PWM3_Duty); }设计实例二:直流风扇驱动和测速的实现
--添加main.c文件voidmain()//定义主函数main{ u8rpm[20];//定义无符号字符型数组变量rpm EAXFR=1;//扩展寄存器(XFR)访问使能 WTST=0x00;//将CPU执行程序的速度设置为最快 CKCON=0x00;//设置外部数据总线速度为最快 P2M0=0;//寄存器P2M0初始化为0P2M1=0;//寄存器P2M1初始化为0,P2端口为准双向模式 P4M0=0;//寄存器P4M0初始化为0 P4M1=0;//寄存器P4M1初始化为0,P4端口为准双向P6M0=0;//寄存器P6M0初始化为0 P6M1=0;//寄存器P6M1初始化为0,P6端口为准双向设计实例二:直流风扇驱动和测速的实现
--添加main.c文件P2PU|=0x01;//使能P2.0引脚的上拉电阻 lcdwait();//调用函数lcdwait(),等待1602字符LCD屏状态稳定 lcdinit();//调用函数lcdinit(),初始化1602字符LCD屏 lcdshowstr(0,0,"FanSpeedis");//在字符1602LCD第一行开始打印信息“FanSpeedis” lcdshowstr(10,1,"RPM");//在字符1602LCD第二行第10列打印字符“RPM”IP=0x02;//寄存器IP初始化为0x02 IPH=0x02;//寄存器IPH初始化为0x02,定时器0中断优先级最高 TM0PS=0x5B; //定时器/计数器0时钟预分频寄存器TM0PS设置为0x5BAUXR|=0x80; //定时器0/计数器0时钟设置为1T模式 TMOD&=0xF0; //定时器0/计数器0设置为定时器模式
设计实例二:直流风扇驱动和测速的实现
--添加main.c文件TL0=0x3F; //定时初值0x3F加载到计数初值低8位寄存器TL0 TH0=0x01; //定时初值0x01加载到计数初值高8位寄存器TH0 TF0=0; //清除定时器/计数器0的TF0标志 ET0=1;//使能定时器/计数器0溢出中断 EX0=1;//使能外部中断0PWMA_CCER1=0x00;//写CCMRx前必须先清零CCxE关闭通道 PWMA_CCMR1=0x01;//CC1为输入模式,且映射到TI1FP1上 PWMA_CCMR3=0x68;//不受ETRF影响,PWM模式1,使能预加载 PWMA_CCER1=0x01;//使能CC1上的捕获功能 PWMA_CCER1|=0x00;//设置捕获极性为CC1的上升沿PWMA_CCER2=0x05;//高电平有效,使能OC3和对应互补输出设计实例二:直流风扇驱动和测速的实现
--添加main.c文件/********PWM通道3周期值高8位加载到PWMA_ARRH***********/PWMA_ARRH=(u8)(PWM_PERIOD>>8);/********PWM通道3周期值低8位加载到PWMA_ARRL***********/PWMA_ARRL=(u8)PWM_PERIOD;/*******PWM通道3占空值高8位加载到PWMA_CCR3H**********/ PWMA_CCR3H=(u8)(PWM3_Duty>>8);/*******PWM通道3占空值低8位加载到PWMA_CCR3L**********/PWMA_CCR3L=(u8)(PWM3_Duty);
/******使能PWM3_P输出,关闭其他通道************/PWMA_ENO=0x10;设计实例二:直流风扇驱动和测速的实现
--添加main.c文件PWMA_PS=0x11;//PWM通道3的输出引脚P2.4,PWM通道1引脚P2
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 垃圾焚烧烟气净化技师考试试卷及答案
- 2025年中煤矿建集团总部工作人员(第四批次)招聘12人笔试历年参考题库附带答案详解
- 2025山西阳泉静态交通建设运营有限公司万通停车场招聘工作人员1人笔试历年参考题库附带答案详解
- 2025山东省商业集团有限公司招聘71人笔试历年参考题库附带答案详解
- 2025小米集团社会招聘岗位(3852个)笔试历年参考题库附带答案详解
- 2025安徽六安某国企招聘外包人员4人笔试历年参考题库附带答案详解
- 2025国药控股兰州盛原医药有限公司招聘笔试历年参考题库附带答案详解
- 2025四川高速公路建设开发集团有限公司管理岗位夏季毕业生招聘39人笔试历年参考题库附带答案详解
- 2025四川绵阳市水务(集团)有限公司招聘党务管理等岗位17人笔试历年参考题库附带答案详解
- 2025四川宜宾钲兴智造科技有限公司第一批项目制员工招聘4人笔试历年参考题库附带答案详解
- 中核集团校招测评题
- 2026年湖北孝感市高三二模高考数学模拟试卷(含答案详解)
- 2026届广东省江门市高三一模英语试卷
- 2025年辅警面试考试试题库及答案
- 2025-2030工程机械行业市场发展分析及发展前景与投资机会研究报告
- 2024年初二微机考试必刷100题附完整答案
- TSG 08-2026 特种设备使用管理规则
- 国开2026年春季《形势与政策》专题测验1-5答案
- 2026《职业病防治法》试题(含答案)
- 质量体系管理制度流程(3篇)
- 2025年杭州萧山水务有限公司公开招聘40人笔试历年典型考题(历年真题考点)解题思路附带答案详解
评论
0/150
提交评论