| 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 */     }     学习过程中遇到问题了吗?请进入 论坛讨论           |
- 博世将采用ST的智..
- 2008-1-14
- DC/DC电源模块..
- 2007-12-27
- 采用CK-611磁..
- 2007-12-13
- 基于PQ35的开关..
- 2007-12-10
- TMS320VC5..
- 2007-11-8
- 表面波等离子体激励..
- 2007-11-8
- plc与电源的整合..
- 2007-9-19
- PLC应用在配电系..
- 2007-9-14
- 基于FPGA的软件..
- 2007-8-30
- 单片开关电源的发展..
- 2007-8-9
- 直流电弧炉新型整流..
- 2007-7-29
- 50MW脉冲调制器..
- 2007-8-9
- 5kW高频通信电源..
- 2007-8-9
- 智能化在线式UPS..
- 2007-8-9
- 通用双热交换控制器..
- 2007-8-9
- 开关电源控制芯片M..
- 2007-8-9
- Tiny Swit..
- 2007-8-9
- 现代电源技术中电容..
- 2007-8-9
- IGBT高压变频调..
- 2007-8-9
- 交交变频器用于交流..
- 2007-8-9




