C语言步进电机自动加减速,单片机控制步进电机要求:有加速、减速、停止、正转、反转按钮,电机是四相五线,控制两个步进电机,c程序...

这篇博客介绍了如何使用C语言在单片机上控制步进电机,实现加速、减速、正转、反转和停止功能。通过按键处理函数处理加速键、减速键和正反转键的输入,根据速度标志调整电机转速,并通过特定的延时函数控制电机转动的步进。程序中包含了针对不同速度和方向的电机操作实例。
摘要由CSDN通过智能技术生成

满意答案

我用的是控制一个步进电机的,这个是我以前写的,你的要求在下面的程序做修改就行了;程序如下:

#include

#define uchar unsigned char

#define uint unsigned int

//uchar table[]={0x18,0x30,0x60,0x48,0x48,0x60,0x30,0x18}; //二相励磁

uchar table[]={0x08,0x10,0x20,0x40,0x40,0x20,0x10,0x08}; //一相励磁

uchar num=0,maichong,zhengfan;

sbit add_key=P3^2; //加速键

sbit reduce_key=P3^3; //减速键

sbit zhengfan_key=P3^4; //正反转按键

void delay(uint z) //延时1ms

{

uint x,y;

for(x=z;x>0;x--)

for(y=114;y>0;y--);

}

void only_key()//按键处理

{

static uchar flag; //定义成静态只被定义一次

if(zhengfan_key==0) //检测正反按键是否被按下

{

delay(5);

if(zhengfan_key==0)

{

flag=~flag;//取反

if(flag==0)

zhen

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值