📄 motor1.lst
字号:
C51 COMPILER V8.02 MOTOR1 12/22/2006 09:47:21 PAGE 1
C51 COMPILER V8.02, COMPILATION OF MODULE MOTOR1
OBJECT MODULE PLACED IN motor1.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE motor1.C BROWSE DEBUG OBJECTEXTEND
line level source
1 /******************************************************************
2 /* *
3 /* ME500单片机开发系统演示程序 -步进电机正反转控制实验 *
4 /* *
5 /* 版本: V1.0 (2006/11/20) *
6 /* 作者: gguoqing (Email: gguoqing@willar.com) *
7 /* 网站: www.willar.com(伟纳电子) www.mcusj.com(伟纳单片机世界)*
8 /* 时间: 2006/05/30 *
9 /* *
10 /*【版权】COPYRIGHT(C)伟纳电子 www.willar.com ALL RIGHTS RESERVED *
11 /*【声明】此程序仅用于学习与参考,引用请注明版权和作者信息! *
12 /* *
13 /******************************************************************/
14
15 #include <reg51.h> //51芯片管脚定义头文件
16 #include <intrins.h> //内部包含延时函数 _nop_();
17
18 #define uchar unsigned char
19 #define uint unsigned int
20
21 uchar code FFW[8]={0xf1,0xf3,0xf2,0xf6,0xf4,0xfc,0xf8,0xf9};
22 uchar code REV[8]={0xf9,0xf8,0xfc,0xf4,0xf6,0xf2,0xf3,0xf1};
23
24 /********************************************************/
25 /*
26 /* 延时t毫秒
27 /* 11.0592MHz时钟,延时约1ms
28 /*
29 /********************************************************/
30 void delay(uint t)
31 {
32 1 uint k;
33 1 while(t--)
34 1 {
35 2 for(k=0; k<125; k++)
36 2 { }
37 2 }
38 1 }
39 /********************************************************/
40 /*
41 /*步进电机正转
42 /*
43 /********************************************************/
44 void motor_ffw(uint n)
45 {
46 1 uchar i;
47 1 uint j;
48 1 for (j=0; j<12*n; j++) //转1×n圈
49 1 {
50 2 for (i=0; i<8; i++) //一个周期转30度
51 2 {
52 3 P1 = FFW[i]; //取数据
53 3 delay(15); //调节转速
54 3 }
55 2 }
C51 COMPILER V8.02 MOTOR1 12/22/2006 09:47:21 PAGE 2
56 1 }
57 /********************************************************/
58 /*
59 /*步进电机反转
60 /*
61 /********************************************************/
62 void motor_rev(uint n)
63 {
64 1 uchar i;
65 1 uint j;
66 1 for (j=0; j<12*n; j++) //转1×n圈
67 1 {
68 2 for (i=0; i<8; i++) //一个周期转30度
69 2 {
70 3 P1 = REV[i]; //取数据
71 3 delay(15); //调节转速
72 3 }
73 2 }
74 1 }
75 /********************************************************
76 *
77 * 主程序
78 *
79 *********************************************************/
80
81 main()
82 {
83 1 while(1)
84 1 {
85 2 motor_ffw(5); //电机正转
86 2 delay(1000); //换向延时
87 2 motor_rev(5); //电机反转
88 2 delay(1000); //换向延时
89 2 }
90 1 }
91
92 /********************************************************/
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 172 ----
CONSTANT SIZE = 16 ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- 8
IDATA SIZE = ---- ----
BIT SIZE = ---- ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -