c 计算机操作步进器,自制AT89C2051驱动步进电机的电路
措施
stepper.c
stepper.hex
/*
* STEPPER.C
* sweeping stepper's rotor cw and cww 400 steps
* Copyright (c) 1999 by W.Sirichote
*/
#include c:\mc51\8051io.h /* include i/o header file */
#include c:\mc51\8051reg.h
register unsigned char j,flag1,temp;
register unsigned int cw_n,ccw_n;
unsigned char step[8]={0x80,0xc0,0x40,0x60,0x20,0x30,0x10,0x90}
#define n 400
/* flag1 mask byte
0x01 run cw()
0x02 run ccw()
*/
main()
{
flag1=0;
serinit(9600);
disable(); /* no need timer interrupt */
cw_n = n; /* initial step number for cw */
flag1 |=0x01; /* initial enable cw() */
while(1){
{
tick_wait(); /* wait for 10ms elapsed */
energize(); /* round-robin execution the following tasks every 10ms */
cw();
ccw();
}
}
}
cw(){
if((flag1&0x01)!=0)
{
cw_n--; /* decrement cw step number */
if (cw_n !=0)
j ; /* if not zero increment index j */
else
{flag1&=~0x01; /* disable cw() execution */
ccw_n = n; /* reload step number to ccw counter */
flag1 |=0x02; /* enable cww() execution */
}
}
}
ccw(){
if((flag1&0x02)!=0)
{
ccw_n--; /* decremnent ccw step number */
if (ccw_n !=0)
j--; /* if not zero decrement index j */
else
{flag1&=~0x02; /* disable ccw() execution */
cw_n = n; /* reload step number to cw counter */
flag1 |=0x01; /* enable cw() execution */
}
}
}
tick_wait(){ /* cputick was replaced by simpler ASM code 10ms wait */
asm' JNB TCON.5,*'; /* wait for TF0 set */
asm' CLR TCON.5'; /* clear TF0 for further set */
asm' ORL TH0,#$DC'; /* reload TH0 with $DC, TL0 = 0 */
}
energize(){
P1 = step[(j&0x07)]; /* only step 0-7 needed */
}
(责任编辑:admin)
c 计算机操作步进器,自制AT89C2051驱动步进电机的电路相关推荐
- arduino 步进电机驱动库_Arduino驱动 步进电机
本帖最后由 李逍遥 于 2019-6-3 23:16 编辑 首先,感谢作者的分享,认真读完代码,学到了很多知识,但在其中发现一些错误,可能是我的拙见,如果理解错误请指出. 问题:在运行原代码时,电机总 ...
- 计算机任务驱动法教学应用,任务驱动教学法在计算机教学中的应用
任务驱动教学法在计算机教学中的应用 任务驱动教学法在计算机教学中的应用1 1任务驱动教学法 任务驱动教学法是由教师根据当前教学主题设计并提出任务,针对提出的任务,采取演示或讲解等方式,给出完成任务的思 ...
- 计算机的指令合成为,第二章计算机操作基础知识doc
第二章计算机操作基础知识doc (29页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 23.9 积分 第二章 计算机操作基础知识第一节 计算机基础知识 ...
- 计算机垃圾回收的过程,计算机体系 – 垃圾收集器
原标题:计算机体系 – 垃圾收集器 来源:MRRiddler , blog.mrriddler.com/2017/05/01/计算机体系-垃圾收集器/ 继上篇讲述了栈和堆以后,程序已经可以" ...
- 计算机操作师初级理论知识试卷答案,[计算机操作员初级理论知识试卷1.doc
[计算机操作员初级理论知识试卷1 职业技能鉴定国家题库 计算机操作初级理论知识试卷 意 事 项 1.考试时间:120分钟. 2.请首先按要求在试卷的标封处填写您的姓名.准考证号和所在单位的名称. 3. ...
- 计算机操作与规范,计算机操作基础与汉字规范码拼音拼形训练
计算机操作基础 第一单元 计算机基本操作 第一课 认识计算机 第二课 Windows95概述 第三课 纸牌游戏 第四课 Windows95窗口操作 第五课 画图软件的简单使用(1) 第六课 画图软件的 ...
- 计算机实践学什么作用,大学计算机基础:计算机操作实践
大学计算机基础:计算机操作实践 语音 编辑 锁定 讨论 上传视频 <大学计算机基础:计算机操作实践>是人民邮电出版社出版的图书,ISBN是9787115182425.[1] 书 名 ...
- layui 数字步进器_光音移动设计规范 — 表单类
表单在产品中主要负责数据采集功能.表单类组件指的是需要用户手动填写或者选择信息的组件. 光音移动端设计规范针对表单类组件,目前收录了8个(后续会增加),分别为: 1.开关 2.单选和复选 3.步进器 ...
- 计算机的基础操作知识试题,计算机操作基础知识试题(220道)
计算机操作基础知识试题(220道) (16页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 19.90 积分 计算机操作基础知识试题(220道)一.单选题( ...
- 计算机操作及应用描述,计算机操作及应用教程
<计算机操作及应用教程>是2000年航空工业出版社出版的图书,作者是郑小玲. 书 名 计算机操作及应用教程 作 者 郑小玲 ISBN 9787801346070 页 数 ...
最新文章
- java 随机取三个_Java-Random 从五个人中随机三个 且不能重复
- SharePoint 2010 技巧系列: 控制Ribbon菜单权限(SiteActions的例子)
- AtCoder AGC005E Sugigma: The Showdown (博弈论)
- 做移动应用使用地图API时需要注意的问题
- PHP传值及引用_无需整理
- python自动化测试的工具_python自动化测试(3)- 自动化框架及工具
- Python random模块seed理解
- JDK源码-ArrayList源码
- Deep_Rank,经典ctr系列预估模型复现框架
- Vue3.0 + Ts 项目框架搭建四:配置 Svg-Icon、Icon图标
- AcWing 786. 第k个数
- 如何从python官网下载模块-Python各种模块下载及安装配置
- HTML5浏览器测试网站汇总
- 十进制转十二进制-复试练习
- 4G模块Air720系列 android RIL驱动源码发布
- 使用双重循环实现五子棋游戏棋盘的绘制
- 单片机实验笔记(汇编、Proteus仿真)(下)
- Linux延时(延迟)函数比较:介绍Linux系统中常用的延时函数sleep、usleep、nanosleep、select和std::sleep_for()的区别和使用场景
- java编程英语_Day17
- http协议,http状态码,请求,响应
热门文章
- R语言Γ(gamma)分布
- matlab 分组求平均值,MATLAB:取一个列表中两个数字的平均值?(MATLAB: taking the average of two numbers in a list?)...
- 使用axure9绘制三级导航
- 中原建业在港上市首日破发,基石投资者祥来及楼公望亏780万港元
- redis的过期策略【转】
- 心率传感器MAX30102使用
- GBASE 8s DB-Access入门
- android京东流式布局,京东移动端首页流式布局
- 最好用的进销存软件测评排名
- Python 转 exe