直流电机调速c语言程序,课程设计_直流电机调速(C语言版).doc

单片机课程设计

学院:电气与信息工程学院

班级:07级电气工程及其自动化3班

设计者:

设计名称:直流电机调速

指导老师:张志文 教授

目录

一. 课程设计题目及其实现目标……………………3

二. 设计原理图…………………………………4

三. 设计原理及其实现方法…………………………5

四. 流程图…………………………………6

五. 程序清单…………………………………7

六.课程设计心得…………………………………13

一. 课程设计题目及其实现目标

课程设计题目:直流电机调速

实现的目标

1).通过键盘改变脉冲的占空比从而达到改变转速使得电机转速从高到低,从低到高

2).通过改变pwm的极性从而改变电机的转向,实现正反转

3).能够通过数码显示管显示电机的转速和电机的转向

4).通过启动键唯一启动电机,从而达到防止电机误启动的目的

5).能够通过键盘快速达到电机预先设定的速度和转向

备注:由于没有传感器,所以本课程设计中没有设计测速模块,所显示的速度为理论速度,并非电机的实际转速

二. 设计原理图

注:本原理图采用proteus绘制

三. 设计原理及其实现方法

1. 速度调节的实现

通过控制L298的使能端“允许”或者“禁止”,通过改变a

(脉冲宽度)的值,从而达到控制PWM脉冲宽度调节电机转速的目的

2. 转向的控制

通过L298中的H桥,从AT89C51中的P1_6和P1_7输出控制信号控制BJT的基极电压,控制L298中H桥的BJT通断,从而达到控制电机转向的目的

附:A. L298的原理图

B.本设计所需要芯片以及作用

AT89C51:单片机

L298:控制电机驱动和转向

74L408:四与门芯片

8255A:用于扩展51端口,作显示用

2803:显示缓冲用

MAX239:串口通讯芯片

四. 流程图

N Y

Y

N

Y

N

Y

Y

N N

Y

N

Y N

五.程序清单

#include

#include

#include

#include

#include

#define PA XBYTE[0x1FFF] //A口地址;

#define PB XBYTE[0x3FFF] //B口地址 ;

#define PC XBYTE[0x5FFF] //C口地址;

#define CON XBYTE[0x7FFF] //*控制字地 */ ;

uchar key=0; //定义key为全局变量

uint a=100;

uchar n=5;

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值