#include

#define unint unsigned int

void delay();

void anjian();

void frun();

void zrun();

code unsigned char runz[8]={ 0x03,0x0b,0x09,0x0d,0x0c,0x0e,0x06,0x07}; //正转动数组

code unsigned char runf[8]={ 0x07,0x06,0x0e,0x0c,0x0d,0x09,0x0b,0x03}; //反转动数组

code unsigned char seg7code[10]={ 0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90}; //显示段码 数码管字跟:

unsigned char a,b,s,i,j,k,z,gw,sw,bw,speed,m;

int y=31;//定义转动速度,数值越大电机转速越慢反之则快

sbit P2_0=P2^0;//正转按键

sbit P2_1=P2^1;//反转按键

sbit P2_2=P2^2;//加速按键

sbit P2_3=P2^3;//减速按键

sbit P1_7=P1^7;

main()

{ P1_7=0;

a=0;

b=0;

while(1)

{

if(P2_0==0)

{

while(!P2_0);

b=1;

P0=seg7code[1];

}

if(P2_1==0)

{

while(!P2_1);

b=2;

P0=seg7code[2];

}

anjian();

switch(b)

{

case 0: break;

case 1: frun();break;

case 2: zrun();        break;

default:break;

}

switch(y)

{

case 7:speed=100;break;

case 9:speed=99;break;

case 11:speed=98;break;

case 13:speed=97;break;

case 15:speed=96;break;

case 17:speed=95;break;

case 19:speed=94;break;

case 21:speed=93;break;

case 23:speed=92;break;

case 25:speed=91;break;

case 27:speed=90;break;

case 29:speed=89;break;

case 31:speed=88;break;

case 33:speed=87;break;

case 35:speed=86;break;

case 37:speed=85;break;

case 39:speed=84;break;

case 41:speed=83;break;

case 43:speed=82;break;

case 45:speed=81;break;

case 47:speed=80;break;

case 49:speed=79;break;

case 51:speed=78;break;

case 53:speed=77;break;

case 55:speed=76;break;

case 57:speed=75;break;

case 59:speed=74;break;

case 61:speed=73;break;

case 63:speed=72;break;

case 65:speed=71;break;

case 67:speed=70;break;

case 69:speed=69;break;

case 71:speed=68;break;

case 73:speed=67;break;

case 75:speed=66;break;

case 77:speed=65;break;

case 79:speed=64;break;

case 81:speed=63;break;

case 83:speed=62;break;

case 85:speed=61;break;

case 87:speed=60;break;

case 89:speed=59;break;

case 91:speed=58;break;

case 93:speed=57;break;

case 95:speed=56;break;

case 97:speed=55;break;

case 99:speed=54;break;

case 101:speed=53;break;

case 103:speed=52;break;

case 105:speed=51;break;

case 107:speed=50;break;

case 109:speed=49;break;

case 111:speed=48;break;

case 113:speed=47;break;

case 115:speed=46;break;

case 117:speed=45;break;

case 119:speed=44;break;

case 121:speed=43;break;

case 123:speed=42;break;

case 125:speed=41;break;

case 127:speed=40;break;

case 129:speed=39;break;

case 131:speed=38;break;

case 133:speed=37;break;

case 135:speed=36;break;

case 137:speed=35;break;

case 139:speed=34;break;

case 141:speed=33;break;

case 143:speed=32;break;

case 145:speed=31;break;

case 147:speed=30;break;

case 149:speed=29;break;

case 151:speed=28;break;

case 153:speed=27;break;

case 155:speed=26;break;

case 157:speed=25;break;

default:break;

}

}

}

void delay(i)//延时函数

{

for(j=0;j

for(k=0;k<30;k++);

display();

}

void delay2(m)//延时函数

{

for(j=0;j

for(k=0;k<255;k++);

}

void frun()// 反转运行

{

for(z=0;z<8;z++)

{

P1=runf[z];

delay(y);

}

}

void zrun()// 正转运行

{

for(z=0;z<8;z++)

{

P1=runz[z];

delay(y);

}

}

void anjian()

{         P1_7=0;

if(P2_2==0)

{

if(!P2_2);

delay2(255);

delay2(255);

delay2(255);

delay2(255);

y--;

if(y<=7)y=7;

P0=seg7code[3];

}

if(P2_3==0)

{

if(!P2_3);

delay2(255);

delay2(255);

delay2(255);

delay2(255);

P0=seg7code[4];

if((y<46)&&(y>7))y=+2;

if((y<157)&&(y>47))y++;

if(y>=157)y=157;

}

}

display()

{

bw=speed/100;

sw=speed%100/10;

gw=speed%10;

P2=P2&0x7f; //P2.7 输出低电平,选通千位数

P3=seg7code[0]; //取出千位数,查表,输出。

delay2(8); //延时

P2=P2|0xf0; //销隐

P2=P2&0xbf; //P2.6 输出低电平,选通百位数

P3=seg7code[bw]; //取出百位数,查表,输出。

delay2(8); //延时

P2=P2|0xf0; //销隐

P2=P2&0xdf; //P2.5 输出低电平,选通十位数

P3=seg7code[sw]; //取出十位数,查表,输出。

delay2(8); //延时

P2=P2|0xf0; //销隐

P2=P2&0xef;

P3=seg7code[gw]; //取出个位数,查表,输出。

delay2(8);

P2=P2|0xf0;

}

电机控制系统php,步进电机调速控制系统资料(原理图+单片机源码)相关推荐

  1. 【直流电机】基于matlab直流电机双闭环调速系统仿真【含Matlab源码 2368期】

    ⛄一.获取代码方式 获取代码方式1: 完整代码已上传我的资源:[直流电机]基于matlab直流电机双闭环调速系统仿真[含Matlab源码 2368期] 点击上面蓝色字体,直接付费下载,即可. 获取代码 ...

  2. 51单片机的直流电机PWM调速控制系统(附Proteus仿真+C程序等全套资料)

    设计思路 直流电机PWM控制系统的主要功能包括:很实现对直流电机的加速.减速以及电机的正转.反转和急停,并且可以调整电机的转速,能够方便的实现电机的智能控制. 主体电路:即直流电机PWM控制模块.这部 ...

  3. 嵌入式基于Linux电机控制,基于嵌入式arm+linux平台的直流电机调速控制系统.pdf

    2012--2013 学年第 二 学期 物电 学院期末考试卷 嵌入式系统与应用 学号 : 姓名 : 班级 : 成绩: 评语: 装 订 (考试题目及要求) 嵌入式大作: 采用实验箱上的电位器作为信号输入 ...

  4. 直流电机PID转速闭环调速控制系统

    在工业自动控制系统和各种智能产品中常常会用用电动机进行驱动.传动和控制,而现代智能控制系统中,对电机的控制要求越来越精确和迅速,对环境的适应要求越来越高.随着科技的发展,通过对电机的改造,出现了一些针 ...

  5. 采用超级电容器单独供电的BLDC调速控制系统设计分析与实现

    摘要 本文针对第十二届全国大学生智能汽车竞赛电磁节能组,设计一种采用超级电容器单独供电的无刷直流电机(BLDC)调速控制系统.该装置在实现超级电容器充分放电及对电能的最大利用的前提下,实现了控制系统闭 ...

  6. 电机调速程序c语言,步进电机调速控制系统设计C语言程序及说明.doc

    步进电机调速控制系统设计C语言程序及说明.doc 步进电机调速控制系统设计C语言程序及说明使用元器件单片机8051.步进电机17H185H-04A.128细分/3.0A步进电机驱动器.LED显示器.实 ...

  7. 前凸后翘的步进电机调速算法~

    [导读] 大家好,我是逸珺. 今天想分享一种超级实用的步进电机调速算法,这种算法在步进电机调速方案中可以说是一种非常优异的方案. 梯形调速算法 为啥需要设计一个调速算法呢?步进电机不是给多少脉冲就动多 ...

  8. 步进电机调速,S曲线调速算法你会吗?

    [导读] 大家好,我是逸珺. 今天想分享一种超级实用的步进电机调速算法,这种算法在步进电机调速方案中可以说是一种非常优异的方案. 梯形调速算法 为啥需要设计一个调速算法呢?步进电机不是给多少脉冲就动多 ...

  9. 步进电机调速,S曲线调速算法很香

    [导读] 大家好,我是逸珺. 今天想分享一种超级实用的步进电机调速算法,这种算法在步进电机调速方案中可以说是一种非常优异的方案. 梯形调速算法 为啥需要设计一个调速算法呢?步进电机不是给多少脉冲就动多 ...

最新文章

  1. 基于SSM实现在线课程学习及作业提交系统
  2. linux7添加两个网关,RHEL7设置IP地址、网关和DNS
  3. SAP Fiori Launchpad tile里显示的数字的刷新间隔是在服务器端什么地方配置的
  4. 水力冲孔数值模拟前景_防喷器成形工艺的有限元数值模拟研究
  5. 你爱我,我爱你,IP被封很头疼【Python爬虫实战:ip代理js逆向采集】
  6. python脚本开发_python
  7. ArcGIS Pro 简明教程(4)工具和模型构建器
  8. Robust Representation Learning with Feedback for Single Image Deraining论文解读
  9. 运行 Docker 容器时的安全风险:别丢了你的套接字
  10. 深入浅出MySql索引
  11. 在深圳,考PMP需要花费多少钱?
  12. 模型评估方法【附python代码】(信息准则:赤池信息量准则AIC、贝叶斯信息准则BIC)
  13. python 数据可视化sns作图
  14. win7修复计算机无鼠标,win7电脑鼠标不听使唤反应慢如何修复
  15. HEVC中低复杂度量化技术
  16. 2021-10-22
  17. 机器学习-雅可比式与多元高斯分布
  18. 数据吞吐高达 21 亿条!实时计算在贝壳找房的应用实践
  19. C语言,常用的系统函数
  20. 外卖订餐APP开发和解决方案

热门文章

  1. 触摸屏分屏拓展屏软件(可自定义界面)
  2. Solaris 迅速查找手册
  3. 百面机器学习 #2 模型评估:0102 精确率与召回率,假阳性与真阳性率,PR曲线和ROC曲线
  4. 数理统计(python)
  5. 汽车免费WiFi的原理是什么?
  6. LeetCode-2206. 将数组划分成相等数对_Python
  7. ASSIST: Towards Label Noise-Robust Dialogue State Tracking论文笔记
  8. 面向对象学习笔记——封装、继承、多态
  9. 利用MATLAB仿真实现交通红绿灯识别的目的
  10. 图像识别流程学习总结