- #include "stc12c5a60s2.h"
- #include "intrins.h"
- //P1.0~P1.3连接步进电机驱动板的4根线
- //若不转可适当调整晶振频率,或者检查驱动板供电功率是否充足。
- unsigned char code clockWise[]={8,10,2,6,4,5,1,9};
- void delay() //@6MHz
- {
- unsigned char i, j;
- _nop_();
- i = 11;
- j = 190;
- do
- {
- while (--j);
- } while (--i);
- }
- void Delay500ms() //@6MHz
- {
- unsigned char i, j, k;
- i = 22;
- j = 3;
- k = 227;
- do
- {
- do
- {
- while (--k);
- } while (--j);
- } while (--i);
- }
- void main()
- {
- unsigned int j=0;
- P1M0=0xFF;
- P1M1=0x00;
- while(1)
- {
- for(j=0;j<116;j++){ //步进电机滑轨有多长,这里的116改多少。
- P1=clockWise[7]<<4;delay();
- P1=clockWise[6]<<4;delay();
- P1=clockWise[5]<<4;delay();
- P1=clockWise[4]<<4;delay();
- P1=clockWise[3]<<4;delay();
- P1=clockWise[2]<<4;delay();
- P1=clockWise[1]<<4;delay();
- P1=clockWise[0]<<4;delay();
- }
- Delay500ms();
- for(j=0;j<116;j++){
- P1=clockWise[0]<<4;delay();
- P1=clockWise[1]<<4;delay();
- P1=clockWise[2]<<4;delay();
- P1=clockWise[3]<<4;delay();
- P1=clockWise[4]<<4;delay();
- P1=clockWise[5]<<4;delay();
- P1=clockWise[6]<<4;delay();
- P1=clockWise[7]<<4;delay();
- }
- Delay500ms();
- }
- }
复制代码
|