步进电机加减速运行程C程序.docx
- 文档编号:8102075
- 上传时间:2023-01-28
- 格式:DOCX
- 页数:6
- 大小:14.89KB
步进电机加减速运行程C程序.docx
《步进电机加减速运行程C程序.docx》由会员分享,可在线阅读,更多相关《步进电机加减速运行程C程序.docx(6页珍藏版)》请在冰豆网上搜索。
步进电机加减速运行程C程序
1./******************************************************************/
2./*****************************************************************/
3./*
4./*步进电机加减速运行程
序
5./*步进电机启动时,转速由慢到快逐步加
速。
6./*步进电机匀速运
行
7./*步进电机由快到慢逐步减速到停止
8./*
9./******************************************************************/
10.
11.#include
12.#include
13.
14.#defineucharunsignedchar
15.#defineuintunsignedint
16.
17.sbitaddr0=P1^4;
18.sbitaddr1=P1^5;
19.sbitaddr2=P1^6;
20.sbitaddr3=P1^7;
21.
22.ucharcodeFFW[8]={0x0e,0x0c,0x0d,0x09,0x0b,0x03,0x07,0x06};//正转数组
23.ucharcodeREV[8]={0x06,0x07,0x03,0x0b,0x09,0x0d,0x0c,0x0e};//反转数组
24.ucharrate;
25./********************************************************/
26./*
27./*延时
28./*11.0592MHz时钟,
29./*
30./********************************************************/
31.voiddelay()
32.{
33.uchark;
34.uints;
36.do
37.{
38.for(s=0;s<100;s++);
39.}while(--k);
40.}
41.
42.
43.voiddelay2(uchark)
44.{
45.
46.uchars;
47.for(s=0;s 48. 49.} 50. 51./********************************************************/ 52./* 53./*步进电机正转 54./* 55./********************************************************/ 56.voidmotor_ffw() 57.{ 58.uchari; 59. 60.for(i=0;i<8;i++)//一个周期转30度 61.{ 62.P0=FFW[i];//取数据 63.addr0=1; 64.addr1=0; 65.addr2=1; 66.addr3=1; 67.addr3=0; 68.delay();//调节转速 69.} 70.} 71. 72./********************************************************/ 73./* 74./*步进电机反转 75./* 76./********************************************************/ 77.voidmotor_rev() 78.{ 80. 81.for(i=0;i<8;i++)//一个周期转30度 82.{ 83.P0=REV[i];//取数据 84.addr0=1; 85.addr1=0; 86.addr2=1; 87.addr3=1; 88.addr3=0; 89.delay();//调节转速 90.} 91.} 92. 93./******************************************************** 94.* 95.*步进电机运行 96.* 97.*********************************************************/ 98.voidmotor_turn() 99.{ 100.ucharx; 101.rate=0x30; 102.x=0xf0; 103.do 104.{ 105.motor_ffw();//正转加速 106.rate--; 107.}while(rate! =0x0a); 108. 109.do 110.{ 111.motor_ffw();//正转匀速 112.x--; 113.}while(x! =0x01); 114. 115.do 116.{ 117.motor_ffw();//正转减速 118.rate++; 119.}while(rate! =0x30); 120.do 121.{ 122.motor_rev();//反转加速 123.rate--; 124.}while(rate! =0x0a); 125. 126.do 127.{ 128.motor_rev();//反转匀速 129.x--; 130.}while(x! =0x01); 131. 132.do 133.{ 134.motor_rev();//反转减速 135.rate++; 136.}while(rate! =0x30); 137.} 138. 139./********************************************************140.*141.*主程序 142.*143.*********************************************************/144.main() 145.{ 146. 147.P1=0xf0; 148. 149.while (1) 150.{ 151.P0=0x00;//ULN2003输出高电平 152.addr0=1; 153.addr1=0; 154.addr2=1; 155.addr3=1; 156.addr3=0; 157.delay2(255); 158. 159.motor_turn(); 160. 161.} 162.}
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 步进 电机 减速 运行 程序
![提示](https://static.bdocx.com/images/bang_tan.gif)