单片机课程设计-直流风扇电机转速测量与pwm控制

单片机课程设计-直流风扇电机转速测量与pwm控制

ID:15673416

大小:50.50 KB

页数:18页

时间:2018-08-04

单片机课程设计-直流风扇电机转速测量与pwm控制_第1页
单片机课程设计-直流风扇电机转速测量与pwm控制_第2页
单片机课程设计-直流风扇电机转速测量与pwm控制_第3页
单片机课程设计-直流风扇电机转速测量与pwm控制_第4页
单片机课程设计-直流风扇电机转速测量与pwm控制_第5页
资源描述:

《单片机课程设计-直流风扇电机转速测量与pwm控制》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、单片机课程设计_直流风扇电机转速测量与PWM控制一.设计思路程序应用模块化进行设计,主要有初始化模块、显示模块、读键模块、数制转换模块、双字节除法模块、中断模块和控制调节模块。编程次序可按此先后进行。初始化模块:8155工作方式、T0和T1工作方式、标志位状态、所用单元初值、中断设置以及初始显示等。显示模块:设定值和实测值的数值与字符动态显示。读键模块:从I/O口依据某位数码管亮时读入小按键是否有效,然后根据四个小键盘的不同功能进行相应的处理,只要设定值一改变立刻显示。加1键和减1键要有连加连减功能。数制转换模块:将二进制转换为十进制

2、。外部中断模块:将转1圈的时间通过双字节除法程序求出即时转速。定时中断模块:PWM输出波形形成。控制调节模块:通过设定值和实测值的比较来改变脉冲波的占空比,该数据的调节分为简单比例调节PP和比例积分调节PI。调节公式分别为:YK=YK1+KP*EKYK=YK1+KP*EK+KI*EK2YK:要输出的数据YK1:上次输出的数据EK:设定值和实测值的差值EK1:上次的EK值EK2:EK-EK1的差值KP:比例系数(设KP=1~2)KI:积分系数(设KI=1~2)一.   带注释软件清单;==========使用单元设定==========

3、//..................................使用单元设定    DIS0EQU30H    DIS1EQU31H    DIS2EQU32H    DIS3EQU33H    LEDEQU34H    TM1EQU35H;    TM2EQU36H;    INTVBIT37H;中断标志    THXEQU38H;定时脉宽高电平    CISHUEQU39H    FIRSTBIT41H;检测加减是否第一次按下    SET1BIT42H    SETZ0EQU43H;设定当前设定值SETZ0~SETZ3 

4、   SETZ1EQU44H    SETZ2EQU45H    SETZ3EQU46H    TM3EQU47H;循环次数单元    JIA1BIT48H; 单步加标志    LIANJIABIT49H;连加标志    JIAN1BIT50H;单步减标志    LIANJIANBIT51H;连减标志    SETDATAEQU52H;设定速度暂存单元    REALDATAEQU53H;实测速度暂存单元    YK1EQU54H;上次输出数据暂存单元    KPEQU56H;比例系数    KIEQU57H;积分系数    EKEQ

5、U58H;设定值和实测值的差值    EK1EQU59H;上次的EK值    OUTPUTEQU60H;    EK2EQU61H;EK-EK1的值    ONPRESSBIT62H;判定ENTER键是否弹起标志    TMSEQU63H;闪烁时长    SHANBIT64H;闪烁标志;==========主程序==========      ORG0000H      SJMPMAIN      ORG0013H;外部中断1入口地址      AJMPINX1      ORG001BH;定时器T1中断入口地址      AJMPI

6、TX1      ORG0070HMAIN: MOVSP,#70H;设定堆栈指针入口地址       ACALLINIT;调用初始化程序 M1: JBSET1,FLASH;当前为设置状态则跳到闪烁显示模块       ACALLDISP;否则为一般显示       SJMPNEXTTFLASH:ACALLDISP1NEXTT:ACALLDELAY;调用按键延时程序       ACALLM2;调用按键程序       DJNZCISHU,M1;第隔100MS刷新一下实测值       MOVCISHU,#20ACALLCONTROL;

7、调用控制调速模块       SJMPM1//==========初始化模块========== INIT:MOVDPTR,#0FD00H ;设置PA、PB为输出口,PC为输入口      MOVA,#03H      MOVX@DPTR,A      MOVTMOD,#21H ;定时器/计数器T1为方式2,定时器/计数器T0为方式1      MOVTL0,#00H  ;定时器/计数器T0赋初值#00H      MOVTH0,#00H      MOVTHX,#0BBH ;输出单元赋初值#0BBH,即脉冲高电平宽度      MO

8、VTH1,THX      MOVTL1,THX      SETBTR1 ;启动定时器/计数器T1      SETBTR0 ;启动定时器/计数器T0      SETBET1 ;允许定时器/计数器T1溢出中断    

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。