步进电机加速的c语言编程,步进电机加速-匀速-减速运行程序(C - 电子制作 - 电子发烧友网...
步进电机加速-匀速-减速运行程序(C51)
ME300系列单片机开发系统+步进电机模块演示程序
功能:步进电机以加速方式启动,转速达到程序规定的最快速度后保持一段时间匀速运转,又开始以减速
方式运行直到步进电机停止转动。由K1键控制演示程序运行。步进电机模块上D1-D4可以指示工作状态。
/******************************************************************/
/* */
/* ME300B单片机开发系统演示程序 - 步进电机加减速运行程序 */
/* */
/* 步进电机启动时,转速由慢到快逐步加速。 */
/* 步进电机匀速运行 */
/* 步进电机由快到慢逐步减速到停止 */
/* 网站http://www.elecfans.com */
/******************************************************************/
#include //51芯片管脚定义头文件
#include //内部包含延时函数 _nop_();
#define uchar unsigned char
#define uint unsigned int
sbit K1=P1^4;
uchar code FFW[8]={0xf1,0xf3,0xf2,0xf6,0xf4,0xfc,0xf8,0xf9};
//uchar code REV[8]={0xf9,0xf8,0xfc,0xf4,0xf6,0xf2,0xf3,0xf1};
uchar rate ;
/********************************************************/
/*
/* 延时
/* 11.0592MHz时钟,
/*
/********************************************************/
void delay()
{
uchar k;
uint s;
k = rate;
do
{
for(s = 0 ; s <500 ; s++) ;
}while(--k);
}
/********************************************************/
/*
/*步进电机正转
/*
/********************************************************/
void motor_ffw()
{
uchar i;
for (i=0; i<8; i++) //一个周期转30度
{
P1 = FFW[i]; //取数据
delay(); //调节转速
}
}
/********************************************************
*
*步进电机运行
*
*********************************************************/
void motor_turn()
{
uchar x;
rate=0x10;
x=0xf0;
do
{
motor_ffw(); //加速
rate--;
}while(rate!=0x01);
do
{
motor_ffw(); //匀速
x--;
}while(x!=0x01);
do
{
motor_ffw(); //减速
rate++;
}while(rate!=0x10);
}
/********************************************************
*
* 主程序
*
*********************************************************/
main()
{
P1=0xf0;
while(1)
{
P1=0xf0;
if(K1==0)
{
motor_turn();
}
}
}
/********************************************************/
步进电机加速的c语言编程,步进电机加速-匀速-减速运行程序(C - 电子制作 - 电子发烧友网...相关推荐
- java模拟加速匀速减速_步进电机加速-匀速-减速运行程序(C51源程序)
ME300系列单片机开发系统+步进电机模块演示程序 功能:步进电机以加速方式启动,转速达到程序规定的最快速度后保持一段时间匀速运转,又开始以减速 方式运行直到步进电机停止转动.由K1键控制演示程序运行 ...
- 【c】C语言编程写的一个http下载程序
来自: 百度空间-软件工程师 大家都很熟悉HTTP协议的应用,因为每天都在网络上浏览着不少东西,也都知道是HTTP协议是相当简单的.每次用到FlashGet之类的下载软件下载网页,当用到那个" ...
- c51步进电机汇编语言,用C51语言实现步进电机的运行速度控制
用C51语言实现步进电机的运行速度控制 作者在本文中首先介绍步进电机的速度运行原理 ,对整个运行阶段进行详细分析 ,然后在此 (本文共4页) 阅读全文>> 给出一种以带有看门狗功能的新型单 ...
- C语言编程入门之--第一章初识程序
导读:计算机程序无时不刻的影响着人类的生活,现代社会已经离不开程序,程序的作用如此巨大,那么程序到底是什么呢?本章主要讨论程序的概念,唤起读者对程序的兴趣,同时对C语言程序与其它语言程序进行比较,说明 ...
- c语言编程中野指针错误,C程序中可怕的野指针
一.疑问点 指针是C语言一个很强大的功能,同时也是很容易让人犯错的一个功能,用错了指针,轻者只是报个错,重者可能整个系统都崩溃了.下面是大家在编写C程序时,经常遇到的一种错误的使用方法,也许在你的学习 ...
- 步进电机加速的c语言编程,关于步进电机S型加速程序编写
给你看一篇文章吧http://wenku.baidu.com/view/39fe ... 71.html?from=search 我是参照这个来写的 [mw_shl_code=applescript, ...
- c语言入门小程序素数,C语言编程入门经典18个小程序
C语言是面向过程的,而C++是面向对象的 C跟C++的区别: C是一个结构化语言,它的重点在于算法和数据结构.C程序的设计首要考量的是怎样借助一个过程,对输入(或环境条件)进行运算处理得到输出(或推动 ...
- java语言简单代码_java语言编程如何实现一个最简单程序?
在编程语言中,实践出结果是最重要的,其他的什么都是为此做准备,下面我们就来看看该如何编译一个最简单的java程序. 首先,启动你的编程软件,如eclipse等,具体可以网上了解, 再来,创建一个新的j ...
- c语言编程抢30,抢三十-程序?
抢三十-程序? 小时候玩过一个小游戏(从1开始轮流数数,二个人,每个人至多可以数1-3个数,谁先数到最后一个数30谁就嬴),想用C语言编写出来.但是写出来之后却出现问题?只输出前一次的数?希望哪位可以 ...
- 单片机 串口 波特率 c语言 9600 11.0592mhz t1,C51语言编程:单片机与 PC 串口通信程序...
单片机接收PC机发来的指令信号,然后单片机又向PC机发送字符串.具体要求如下: 当接收指令信号为:'go',单片机向PC机发送字符串:WELCOME TO CHINA!; 当接收指令信号为:'who' ...
最新文章
- Linux中重定向--转载
- 直播|清华谢晓晖——面向互联网图像搜索的用户行为模型研究
- asp.net编程:asp.net中如何设置页面的编码
- python的数据清理_Python数据清理,清洗
- Linux IO磁盘篇整理小记
- stm32实验报告心得体会_STM32实验报告
- Flume监听文件夹中的文件变化_并把文件下沉到hdfs
- 查看自己电脑上某个端口有没有被占用
- mysql-5.7安装、配置
- python插入排序
- 【车间调度】基于matlab遗传算法求解多目标流水车间调度问题【含Matlab源码 443期】
- openwrt 自动签到插件-食用指南
- linux返回上一步命令
- python读写excel文件(xls格式)
- 【仅剩12小时】Python科研绘图教程,40+绘图案例(附完整代码)
- 【web前端(三十九)】javascript_jquery操作样式
- 服务器不稳定怎么解决?常见的4种问题和6种处理方法
- 推出全新的交互式导航和社交导航 iGibson 挑战
- 一、什么是JWT?了解JWT,认知JWT
- 磁带机PowerVault LTO-7使用