单片机控制步进电机程序c语言正反转停止,51单片机步进电机正反转停止实验-C51源代码...
#include //51芯片管脚定义头文件
#include //内部包含延时函数 _nop_();
#define uchar unsigned char
#define uint unsigned int
uchar code FFW[8]={0x01,0x03,0x02,0x06,0x04,0x0c,0x08,0x09}; //四相八拍正转编码
uchar code REV[8]={0x09,0x08,0x0c,0x04,0x06,0x02,0x03,0x01}; 四相八拍反转编码
sbit K1 = P3^2; //正转
sbit K2 = P3^3; //反转
sbit K3 = P3^4; //停止
sbit BEEP = P3^6; //蜂鸣器
/********************************************************/
/*
/* 延时t毫秒
/* 11.0592MHz时钟,延时约1ms
/*
/********************************************************/
void delay(uint t)
{
uint k;
while(t--)
{
for(k=0; k<125; k++)
{ }
}
}
/**********************************************************/
void delayB(uchar x) //x*0.14MS
{
uchar i;
while(x--)
{
for (i=0; i<13; i++)
{ }
}
}
/**********************************************************/
void beep()
{
uchar i;
for (i=0;i<100;i++)
{
delayB(4);
BEEP=!BEEP; //BEEP取反
}
BEEP=1; //关闭蜂鸣器
}
/********************************************************/
/*
/*步进电机正转
/*
/********************************************************/
void motor_ffw()
{
uchar i;
uint j;
for (j=0; j<8; j++) //转1*n圈
{
if(K3==0)
{break;} //退出此循环程序
for (i=0; i<8; i++) //一个周期转45度
{
P1 = FFW[i]; //取数据
delay(2); //调节转速
}
}
}
/********************************************************/
/*
/*步进电机反转
/*
/********************************************************/
void motor_rev()
{
uchar i;
uint j;
for (j=0; j<8; j++) //转1×n圈
{
if(K3==0)
{break;} //退出此循环程序
for (i=0; i<8; i++) //一个周期转45度
{
P1 = REV[i]; //取数据
delay(2); //调节转速
}
}
}
/********************************************************
*
* 主程序
*
*********************************************************/
main()
{
uchar r,N=64; //N 步进电机运转圈数
while(1)
{
if(K1==0)
{
beep();
for(r=0;r
{
motor_ffw(); //电机正转
if(K3==0)
{beep();break;} //退出此循环程序
}
}
else if(K2==0)
{
beep();
for(r=0;r
{
motor_rev(); //电机反转
if(K3==0)
{beep();break;} //退出此循环程序
}
}
else
P1 = 0xf0;
}
}
/********************************************************/
单片机控制步进电机程序c语言正反转停止,51单片机步进电机正反转停止实验-C51源代码...相关推荐
- 第01课 了解单片机的原理控制一个LED灯的亮和灭-----51单片机C语言试验教程
第一课,了解单片机及单片机的控制原理和DX516 的用法,控制一个LED 灯的亮和灭 本章学习内容: 单片机基本原理,如何使用DX516 仿真器,如何编程点亮和灭掉一个LED 灯,如何进入KEILC5 ...
- c语言单片机定时器的应用程序,51单片机定时器中断程序(C语言)
51c程序 51单片机定时器中断程序(C语言) 用C语言实现的,先要定义好定时器的初值 不管你使用多大的晶振,使用51单片机,一般都是12分频出来,也就可以得出一个机器周期 机器周期=12/n(n指晶 ...
- 单片机定时报警C语言程序,51单片机 定时器 中断程序 (C语言)
EA 是 中断总开关, 不管是定时器,串口还是外部中断,都需要打开 EA 才能触发中断; ET0 是 定时器0 的专用中断开关, 也就是说: 打开了EA.而不打开ET0,定时器0是无法触发 ...
- 基于51单片机的公交车安全智能检测系统、基于51单片机的金属探测仪控制设计、基于单片机的智能电子密码锁系统设计、基于51单片机酒精浓度检测仪设计【资料转发分享】
630基于51单片机的公交车安全智能检测系统-设计资料 本资料是基于单片机的公交车安全监测系统 具有如下功能: 1.监测环境的温度,超标报警.可以设置上下限 2.监测是否有火灾以及有毒气体,超标报警, ...
- C语言极速学习开发——51单片机入门编程之使用KeilC51进行代码编译(点亮你心中学习的精神之灯-下)
系列文章目录 提示:本文章为系列文章,系列文章的所有文章的目录后期会时刻更新,喜欢的朋友请收藏好 <第一章 C语言极速学习开发--51单片机入门编程之使用KeilC51进行代码编译(点亮你心中学 ...
- 台达触摸屏modbusRTU与51单片机通讯台达屏与郭天祥51单片机通讯程序
台达触摸屏modbusRTU与51单片机通讯台达屏与郭天祥51单片机通讯程序亲测过好用,P1口led显示8个位的状态上传给触摸屏,d2至d7为16数据寄存器能写能读,数码管显示当前写入的数码id=60 ...
- 详解步进电机原理及其正反转驱动程序(51单片机)
一.步进电机基本原理 1.开环 步进电机是将电脉冲信号转变为角位移或线位移的开环控制元件. 2.工作状态 非超载时,电机转速.转过的角度取决于脉冲信号的频率和脉冲数. 3.线性关系 给电机施加一个脉冲 ...
- 单片机跑马灯程序c语言,MCS-51单片机控制跑马灯的三种方法
描述 在MCS一51单片机的控制系统中,它的四个并行8位输入输出端口P0一P3是我们经常使用的.在并行端口的编程学习中,"跑马灯"是单片机并行端口输出控制的典型实例.所谓跑马灯,是 ...
- avr单片机led数码管六位动态显示时分秒c语言程序,AVR单片机控制8段LED数码管同时显示 - AVR单片机8位数码管显示的程序实现(两种方法介绍)...
AVR单片机控制8段LED数码管同时显示 这是一个简单的供单片机入门学习者练习用的8段LED数码管控制汇编程序,控制一个两位的数码管同时显示字符(动态刷新).用AVR- Studio-4 开发,在AV ...
- 单片机六位抢答器c语言程序,八路电子抢答器(基于51单片机的8路抢答器设计C语言程序)...
哥,你还有AT89C51单片机8路抢答器的资料吗 哥,你还有AT89C51单片机8路抢答器的资料吗 AT89C51单片机8路抢答器的资料 源程序如下 #include #define uchar un ...
最新文章
- AI工程师面试知识点:TensorFlow 框架
- java 使用正则表达式从网页上提取网站标题
- jQuery和Prototype兼容问题
- 前端学习(580):打开开发者工具
- 首批国家应用数学中心名单公布,哪些高校获批?
- 【人脸识别】FaceNet详解
- 使用截图工具FastStone Capture
- Brother DCP-1608 Printer共享打印机防坑指南
- 北京内推 | 华为诺亚方舟实验室招聘计算机视觉研究实习生
- Ubuntu 18.04 安装驱动
- 计蒜客--T1212 仙岛求药
- php字符串转拼音,php程序如何把中文字符转换为拼音
- JAVA查询银行卡信息
- N阶行列式计算(JAVA)
- (附源码)node.js外卖平台 毕业设计 151448
- Android 获取通讯录数据
- Eclipse中如何把自己写的方法封装成jar包供其他项目使用
- 在Kubernetes上安装Netdata的方法
- 国家推行电子货币见解
- 国企计算机职称考试都考什么,计算机软考证书哪个含金量高?长什么样?国企有用吗?可以评职称吗?...
热门文章
- 苹果手机六位数密码忘记了用计算机,忘记iPhone锁屏密码?三种方法帮你顺利解决!...
- ISAPI概述(转)
- 利用fiddler抓包工具测试APP及高级应用
- 软件测评师--第九小时 web应用测试
- 计算机软件研究方法与技术路线,项目的研究方法与技术路线
- python开发微信公众号开发教程_python编写微信公众号首图思路详解
- 小程序项目:基于微信小程序的培训机构系统——计算机毕业设计
- 程序猿的中秋节——浪漫至死不渝!!
- (十)stm32 GPIO口复用,重映射 RCC_APB2Periph_AFIO
- TI am3352 gpio 驱动