51单片机控制直流电机程序

#include

// Define new types

typedef unsigned char uchar;

typedef unsigned int uint;

// Define P3 pins

sbit Inc = P3^4;

sbit Dec = P3^5;

sbit Dir = P3^6;

sbit PWM = P3^7;

void delay(uint);

void main(void)

{

int speed;

// Select initial direction and speed.

if (Dir) //Dir = 1 anti clockwise;Dir = 0 clockwise speed = 400; //T(PWM) = 0.012s,f = 83.3Hz else

speed = 100;

// Main control loop

while(1)

{

if(Dir) //anti_clockwise

{

if(!Inc)

// Increase speed

speed = speed > 0 ? speed - 1 : 0;

if(!Dec)

// Decrease speed

speed = speed

// Drive a PWM signal out.

PWM=1;

delay(speed);

PWM=0;

delay(500-speed);

}

else //clockwise

{

if(!Inc)

// Increase speed

speed = speed

// Decrease speed

speed = speed > 0 ? speed - 1 : 0;

// Drive a PWM signal out.

PWM=1;

delay(speed);

PWM=0;

delay(500-speed);

}

}

}

void delay(uint j)

{ for(; j>0; j--)

{

//__no_operation();

}

}

#include

// Define new types

typedef unsigned char uchar;

typedef unsigned int uint;

// Define P3 pins

sbit Inc = P3^4;

sbit Dec = P3^5;

sbit Dir = P3^6;

sbit PWM = P3^7;

void delay(uint);

void main(void)

{

int speed;

// Select initial direction and speed.

if (Dir) //Dir = 1 anti clockwise;Dir = 0 clockwise speed = 400; //T(PWM) = 0.012s,f = 83.3Hz else

speed = 100;

// Main control loop

while(1)

{

if(Dir) //anti_clockwise

{

if(!Inc)

// Increase speed

speed = speed > 0 ? speed - 1 : 0;

if(!Dec)

// Decrease speed

speed = speed

// Drive a PWM signal out.

PWM=1;

delay(speed);

PWM=0;

delay(500-speed);

}

else //clockwise

{

if(!Inc)

// Increase speed

speed = speed

// Decrease speed

speed = speed > 0 ? speed - 1 : 0;

// Drive a PWM signal out.

PWM=1;

delay(speed);

PWM=0;

delay(500-speed);

}

}

}

void delay(uint j)

{ for(; j>0; j--)

{

//__no_operation();

}

}


相关文章

  • 单片机程序设计
  • 引 言 调速能力强,速度变化平滑是直流电机的显著特点,在很多的控制系统中有极为广泛的应用,但是以往使用模拟器件或电路来完成控制直流电机的,这样做有很多问题例如:控制准确度低,稳定性差,这些问题如果仍然有过去的设计是根本无法解决和消除的,并且 ...查看


  • 单片机控制直流电机
  • 毕 业 设 计 ( 2015届 ) 题目: 单片机控制直流电机 完成日期: 2015 年 6 月 5 日 摘 要 近年来由于微型机的快速发展,国外交直流系统数字化已经达到实用阶段.由于以微 处理器为核心的数字控制系统硬件电路的标准化程度高, ...查看


  • 直流电机控制
  • 微机应用课程设计报告 题 目: 基于单片机的直流电动机控制器设计 专 业: 班 级: 姓 名: 学 号: 地 点: 时 间:指导老师: 摘要 电动机作为最主要的机电能量转换装置,其应用范围已遍及国民经济的各个领域和人们的日常生活.无论是在工 ...查看


  • 步进电机毕业论文
  • 本科生毕业论文(设计) 题 目: 姓 名: 学 院: 专 业: 班 级: 学 号: 步进电机的驱动控制的设计 周小云 工学院 农业电气化与自动化 电气81 3218119 指导教师: 徐进 职称: 讲师 2012 年 5月 4日 南京农业大 ...查看


  • 基于单片机的交流伺服电机转速控制系统研究
  • 基于单片机的交流伺服电机转速控制系统研究 伺服电机属于控制电机,它分为直流伺服电机和交流伺服电机两种.由于交流伺服电机具有体积小,重量轻,大转矩输出,低惯量和良好的控制性能等优点,已广泛应用于自动控制系统和自动检测系统中作为执行元件,将控制 ...查看


  • PWM直流电机调速系统设计
  • 单片机为核心,以键盘作为输入达到控制直流电机的启停.速度和方向,完成了基本要求和发挥部分的要求.在设计中,采用了PWM 技术对电机进行控制,通过对占空比的计算达到精确调速的目的. 本文介绍了直流电机的工作原理和数学模型.脉宽调制(PWM ) ...查看


  • 基于单片机的交流伺服电机转速控制系统研究 1
  • 1 交流伺服电机控制系统设计方案 系统使用的交流伺服电机为三相交流电机:驱动器控制U/V/W三相电形成电磁场:转子在此磁场的作用下转动,同时电机由接近传感器将转速信号反馈给驱动器:驱动器根据反馈值与目标值进行比较,调整转子转动的角度.伺服电 ...查看


  • 单片机音乐喷泉控制设计
  • <单片机原理及接口技术>课程设计 题目: 班 级: 姓 名: 学 号: 指导教师: 时 间: 课程设计成绩评定表 摘要 随着人们生活水平的提高和建立绿色城市的向往,音乐喷泉以其独特的魅力 和特殊的功能,愈来愈成为休闲娱乐产业中的 ...查看


  • 课程设计步进电机控制系统
  • 上海工程技术大学课程设计(论文) 步进电机控制系统 目 录 1. 绪论............................................................1 2. 系统原理................ ...查看


  • 循迹小车论文
  • SCIENCE AND TECHNOLOGY 学 士 学 位 论 文 THESIS OF BACHELOR (2010 - 2014年) 题 目 基于单片机的蓝牙循迹小车 目 录 摘要 ........................... ...查看


热门内容