0
问答首页 最新问题 热门问题 等待回答标签广场
我要提问

单片机

单片机 C语言

#include

#define uchar unsigned char

#define uint  unsigned int

//四项八拍正转励磁顺序:A->AB—>B->BC->C->CD->D->DA

uchar code FFW[]={0x01,0x03,0x02,0x06,0x04,0x0C,0x08,0x09};

//反转励磁顺序:AD->D->CD->C->BC->B->AB->A

uchar code REV[]={0x09,0x08,0x0C,0x04,0x06,0x02,0x03,0x01};

sbit K1=P3^0;          //正转

sbit K2=P3^1;           //反转

sbit K3=P3^2;            //停止

//延时                                                                                          

void delay(uintx)

{

   uchar i;

   while(x--) for(i=0;i<120;i++);

}

//正转

void SETP_MOTOR_FFW(uchar n)

{

    uchar i,j;

        for (i=0;i<5*n;i++)

        {

         for (j=0;j<8;j++)

          {

            if(K3==0) break;

                P1=FFW[j];

                delay(25);

           }

          }

}

//反转

void SETP_MOTOR_REV(uchar n)

{

    uchar i,j;

        for (i=0;i<5*n;i++)

        {

          for (j=0;j<8;j++)

          {

            if(K3==0)  break;

                P1=REV[j];

                delay(25);

           }

          }

}

//主程序

void main()

{

  uchar N=3;        //运转圈数

  while(1)

  {

    if(K1==0)

        {

          P0=0xFE;      //LED1点亮

          SETR_MOTOR_FFW(N);         //电机正传

          if(K3==0)         break;

         }

         else if(K2==0)

         {

           P0=0xFD;

           SETP_MOTOR_REV(N);        //电机反转

           if(K3==0)  break;

          }

          else

          {

            P0=0xFB;                  //LED3点亮

            P1=0x03;

           }

   }

}

有一个错误BUJINGDIANJI.C(20): error C202: 'x': undefined identifier 怎么解决?

提问者:小孩子不懂事 地点:- 浏览次数:8936 提问时间:10-22 17:27
我有更好的答案
提 交
8条回答
胡政鹏测试_3 05-07 03:04 回答数: 被采纳数:
X没声明,延时那里
60user49 05-02 03:03 回答数: 被采纳数:
是这样吗?
{
uchar i;
uint x;
while(x--) for(i=0;i<120;i++);
zsl1220548 05-03 19:10 回答数: 被采纳数:
void delay(uintx)
uint和X之间应该有个空格
60user186 05-04 12:21 回答数: 被采纳数:
uintx  之间没有空格
梅子74 05-08 22:54 回答数: 被采纳数:
我把你的程序跑了一遍,除了需要把void delay(uintx)改成void delay(uint x)之外。还有你的主程序调用电机正传时,子函数名写错了。你把字母P写成R了。。。
qian801228 04-30 22:40 回答数:0 被采纳数:0
应该空格啊,要不系统就默认uintx是一个整体。
60user18 04-29 14:27 回答数:0 被采纳数:0
void delay(uintx)的确应该是这里的事
dfgdaf 05-06 13:31 回答数: 被采纳数:
问题解了(uint x之间有空格,主程序调用电机正传时,子函数名写错了P写成了R),谢谢各位指导!
撰写答案
提 交
1 / 3
1 / 3
相关单片机
具有音调控制的单片机立体声前置放大器
用于单片机与电子装置中的开关电源
单片机软硬件复位的条件都有啥
电动机的单片机控制
单片机应用系统开发实例导航