单片机控制直流电机加减速仿真设计附带c程序.docx

单片机控制直流电机加减速仿真设计附带c程序.docx

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
单片机控制直流电机加减速仿真设计附带c程序

单片机控制直流电机加减速仿真设计评分表姓名陈小江(1)罗婷婷(16)班级14电子科学与技术准考证号得分起止时间2016年12月1日——2016年12月20日项目考核内容及要求总分评分标准得分备注单片机程序调试1.利用仿真软件Proteus画电路图,正确进行硬件系统连接,熟练掌握仿真开发工具。20电路连接、设置错误扣10分;元件使用错误每处扣3分;元件布置不合理,电路图不美观扣5分;其它情况酌情扣分;2、能根据具体的电路形式和设计要求,编写源程序,正确使用编程工具,程序的编译、调试方法和步骤正确无误。201、所需文件不完整,扣10分;参数设置错误扣5分;其它情况酌情扣分。3、程序运行调测:运行程序,检查程序运行结果,判断是否达到设计要求。程序备注要和程序的实际功能相符。30程序不能运行扣20分;程序功能和设计要求不符每处扣10分;程序注释错误每处扣 2 分;其它情况酌情扣分。附加功能4、段码管显示数字和直流电机转速所在档位匹配。301、根据功能完成情况酌情给分。评分老师 胡总华二、 设计内容通过编写程序,在P2.0端口产生一个频率为1KHz(周期1000微秒)占空比可调的矩形波信号,占空比可调间隔为0.2,即可取得占空比为20%,40%……80%到100%的PWM波,通过改变矩形波占空比改变直流电机的转速(可参照实验6)。通过两个按键,实现加速、减速5级(1至5档)调控,共5个档位。当直流电机转速处于最高转速时,按下加速按键无效,并保持最高转速,当直流电机转速处于最低转速时,按下减速按钮无效,并保持最低转速。其它情况时,加速按键每按下一次,转速增加一个档位,减速按键每按下一次,转速减小一个档位。用虚拟示波器观察相关矩形波信号的波形。单片机的时钟频率设定为11.0592MHz。三、设计要求1.利用 Proteus仿真软件画出仿真电路;2.在单片机P1口上加一个7位段码管和锁存器(74HC573),用于显示直流电机当前转速所在的档位。3.按照设计要求编写程序,生成Hex文件,下载到单片机中验证是否达到设计要求。四、考核要求1.班级内2名同学自由组队,两人配合完成设计。该项设计总分不超过100分,两人最后得分相同。2.如果出现多组设计程序及其内容雷同或有抄袭现象,全部记为0分。是否涉嫌抄袭,由评分老师判定。3.设计内容要建一个文件夹,以小组内2名同学的名字命名。设计结束后,把该文件夹压缩为压缩包文件,以电子的形式按时交给学习委员,不按时上交的同学该项成绩记为0分。4.要求每条程序后添加注释。5.上交纸质设计报告一份。6.该项考核成绩占本课程期末考试成绩的40%。显示程序:#includereg52.h//51单片机头文件#define uchar unsigned char //宏定义无符号字符#define uint unsigned int//宏定义无符号整型uchar led[]={0x06,0x5b,0x4f,0x66,0x6d,0x7d};//定义字模档数为1--5挡uchar anjian[]={2,4,6,8,10}; //占空比20%,40%,60%,80%,100%的PWM sbit jiasu=P2^6; //定义加速按键位 sbit jiansu=P2^7;//定义减速按键位 sbit maichong=P2^0; //定义脉冲输出 sbit shumaguan=P3^4; //定义数码管控制位uchar time=0; //定时循环初始化uchar i=1;//初始化 void deplay(uchar s) //延时函数声明 { uint j=500; //定义自变量 for(;j0;j--) //for循环, for(;s0;s--);//嵌套for循环 }void itime ()interrupt 1 //定义中断函数{ TH0=0xff;//重装计数初值 TL0=0x9c; ++time;//定时加1 if(time==anjian[i-1]) //高电平满足此条件变低电平 maichong=0; if(time==10) //当循环到10次时,周期时间为1000us时变高电平 { time=0; //定时初始化maichong=1;//将脉冲设置为高电平 } }void main()//主函数{ TMOD=0x01;//T0定时方式1 TH0=0xff;//计数初值设为100us TL0=0x9c; TR0=1; //启动T0 shumaguan=0; //数码管显示置零

文档评论(0)

jiupshaieuk12 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:6212135231000003

1亿VIP精品文档

相关文档