ImageVerifierCode 换一换
格式:DOCX , 页数:13 ,大小:87.92KB ,
资源ID:5144066      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-5144066.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基于51单片机的直流电机控制系统设计Word文档格式.docx)为本站会员(b****2)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

基于51单片机的直流电机控制系统设计Word文档格式.docx

1、第三章 系统硬件电路设计整体框图如下第四章 系统的软件设计 本系统编程部分工作采用KELI-C51语言完成,采用模块化的设计方法,与各子程序做为实现各部分功能和过程的入口,完成键盘输入、按键识别和功能、PWM脉宽控制和数码管显示等部分的设计。单片机资源分配如下表:P0显示模块接口键盘中断P1键盘模块接口P1.0/P1.1PWM电机驱动接口系统时钟PWM脉宽控制:本设计中采用软件延时方式对脉冲宽度进行控制,延时程序函数如下:/*延时函数*/delays() uchar i; for(i=5000;i0;i-);键盘中断处理子程序:采用中断方式,按下键,完成延时去抖动、键码识别、按键功能执行。要实

2、现按住加/减速键不放时恒加或恒减速直到放开停止,就需在判断是否松开该按键时,每进行一次增加/减少一定的占空比。显示子程序:利用数组方式定义显示缓存区,缓存区有8位,分别存放各个数码管要显示的值。定时中断处理程序:采用定时方式1,因为单片机使用12M晶振,可产生最高约为65.5ms的延时。对定时器置初值B1E0H可定时20ms,即系统时钟精度可达0.02s。当20ms定时时间到,定时器溢出则响应该定时中断处理程序,完成对定时器的再次赋值,并对全局变量time加1,这样,通过变量time可计算出系统的运行时间。3、软件设计中的特点:对于电机的启停,在PWM控制上使用渐变的脉宽调整,即开启后由停止匀

3、加速到默认速度,停止则由于当前速度逐渐降至零。这样有利于保护电机。键盘处理上采用中断方式,不必使程序对键盘反复扫描,提高了程序的效率。第五章:程序见附件1第六章:PCB图第七章:元件清单元件数量(个)直流电机1极性电容20uf 1按键6 电容22pf2 At895112MHZ晶振 RP1 1 四位一体数码管Led2电阻1k 电阻200KULN2003电阻10K电源口HDR2x3 74LS04下载口IDC第八章:参考文献1孙涵芳 徐爱卿.MCS-51/96系列单片机原理及应用M.北京:北京航空航天大学出版社,1977.2何立民.单片机应用技术选编M.北京:北京航空航天大学出版社,2003.3史国

4、生.交直流调速系统M.北京:化学工业出版社,2002.161-174.第九章:心得体会本次课程设计虽然只有两周,但短短两周我掌握了汇编编程的原理和方法。熟悉了单片机基本特征和电路设计的方法。掌握了直流电机的控制方法。熟练了运用定时器设计PWM波控制直流电机。总之,收获很多。附件1/*头文件*/#includeabsacc.h#include /* /*自定义变量*/#define uint unsigned int /自定义变量#define uchar unsigned char char gw,sw,bw,qw;uchar j; /定时次数,每次20msuchar f=5; /计数的次数s

5、bit P10=P10; /PWM输出波形1sbit P11=P11; /PWM输出波形2sbit P12=P12; /正反转sbit P13=P13; /加速sbit P14=P14; /减速sbit P15=P15; /停止sbit P16=P16; /启动uchar k;uchar t; /脉冲加减/*/*/*控制位定义*/uchar code smg12=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x73,0x71;/程序存储区定义字型码表char data led4=0x08,0x04,0x02,0x01; /位码uint x

6、; /数码管显示的数值display(); /数码管显示 delays(); /延时函数key();displays();/*/*主函数*/main (void) TMOD=0x51; /T0方式1 定时计数 T1方式1计数 TH0=0xb1; /装入初值 20MS TL0=0xe0; TH1=0x00; / 计数567 TL1=0x00; TR0=1; /启动 t0 TR1=1; /启动t1 gw=sw=bw=qw=0; /数码管初始化 P0=0xc0; P2=1; while(1) /无限循环 display(); key(); /*数码管显示*/display() gw=x%10; /求

7、速度个位值,送到个位显示缓冲区 sw=(x/10)%10; /求速度十位值,送到十位显示缓冲区 bw=(x/100)%10; /求速度百位值,送到百位显示缓冲区 qw=x/1000; /求速度千位值,送到千位显示缓冲区 for(i=0;i4;) P2=ledi; if(i=0) /显示个位 P0=smggw; delays(); else if(i=1) /显示十位 P0=smgsw; else if(i=2) /显示百位 P0=smgbw; delays(); else if(i=3) /显示千位 if(k=0) /正转时显示三 P0=0x49; else P0=0x71; /反转时显示F

8、i+;/*/*/*t0定时*中断函数*/void t0() interrupt 1 using 2 /重装t0 f-; if(k=0) if(ft) P10=1; else P10=0; P11=0; if(f=5) t=5; if(P14=0) /减速 while(P14=0); t-; if(t1) t=1;if(P15=0) /停止 while(P15=0); EA=0; 课程设计成绩评定表评定项目内 容满分评分总分学习态度学习认真,态度端正,遵守纪律。10答疑和设计情况认真查阅资料,勤学好问,提出的问题有一定的深度,分析解决问题的能力较强。40说明书质量设计方案正确、表达清楚;设计思路、实验(论证)方法科学合理;达到课程设计任务书规定的要求;图、表、文字表达准确规范,上交及时。回答问题情况回答问题准确,基本概念清楚,有理有据,有一定深度。总成绩采用五级分制:优、良、中、及格、不及格指导教师评语:签名: 年 月 日

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2