搜索
bottom↓
回复: 14

求教:这段程序显示错误的提示是什么意思?

[复制链接]

出0入0汤圆

发表于 2018-11-29 10:43:23 | 显示全部楼层 |阅读模式
int IN1 = 7;   //IN1
int IN2 = 6;   //IN2
int IN3 = 5;  // IN3
int IN4 = 4;  // IN4
int beep= 3;  //铚傞福鍣ㄨ礋鏋�char time = 0, i = 0, count = 0;

void setup()
{
  //鍒濆鍖栫數鏈洪┍鍔↖O涓鸿緭鍑烘柟寮�  pinMode(IN1, OUTPUT); // PIN 7
  pinMode(IN2, OUTPUT); // PIN 6
  pinMode(IN3, OUTPUT); // PIN 5
  pinMode(IN4, OUTPUT); // PIN 4
  pinMode(beep, OUTPUT); //PIN 3
  digitalWrite(beep, HIGH);
  Serial.begin(9600);//璁剧疆娉㈢壒鐜囦负9600
}
/*******************************鍥涚浉鍏媿***********************************/
void Coil_A()
{
  digitalWrite(IN1, LOW); digitalWrite(IN2, HIGH); digitalWrite(IN3, HIGH); digitalWrite(IN4, HIGH);
}
void Coil_AB()
{
  digitalWrite(IN1, LOW); digitalWrite(IN2, LOW); digitalWrite(IN3, HIGH); digitalWrite(IN4, HIGH);
}
void Coil_B()
{
  digitalWrite(IN1, HIGH); digitalWrite(IN2, LOW); digitalWrite(IN3, HIGH); digitalWrite(IN4, HIGH);
}
void Coil_BC()
{
  digitalWrite(IN1, HIGH); digitalWrite(IN2, LOW); digitalWrite(IN3, LOW); digitalWrite(IN4, HIGH);
}
void Coil_C()
{
  digitalWrite(IN1, HIGH); digitalWrite(IN2, HIGH); digitalWrite(IN3, LOW); digitalWrite(IN4, HIGH);
}
void Coil_CD()
{
  digitalWrite(IN1, HIGH); digitalWrite(IN2, HIGH); digitalWrite(IN3, LOW); digitalWrite(IN4, LOW);
}
void Coil_D()
{
  digitalWrite(IN1, HIGH); digitalWrite(IN2, HIGH); digitalWrite(IN3, HIGH); digitalWrite(IN4, LOW);
}
void Coil_DA()
{
  digitalWrite(IN1, LOW); digitalWrite(IN2, HIGH); digitalWrite(IN3, HIGH); digitalWrite(IN4, LOW);
}
/*******************************************************************/

void beep_once()//铚傞福鍣ㄥ搷涓�
{
   digitalWrite(beep, LOW);
   delay(100);
   digitalWrite(beep, HIGH);
}

void loop()
{
  unsigned long now_time = micros(); //鑾峰彇褰撳墠鐨勭郴缁熻繍琛屾椂闂撮暱搴�  while ((micros() - now_time) < 14648); //   60 000 000us/4096
  switch (i)
  {
    case 0: Coil_A(); i++; break;
    case 1: Coil_AB(); i++; break;
    case 2: Coil_B(); i++; break;
    case 3: Coil_BC(); i++; break;
    case 4: Coil_C(); i++; break;
    case 5: Coil_CD(); i++; break;
    case 6: Coil_D(); i++; break;
    case 7: Coil_DA(); i = 0; break;
    default: break;
  }
  count++;
  if (count == 68)//涓�璁℃椂锛屾樉绀哄苟铚傞福鍣ㄥ搷涓�笅
  {
    count = 0;
    time++;
    if (time == 60)
      time = 0;
    Serial.print("second: " ) ;
    Serial.print(time, DEC) ;
    Serial.println("s" ) ;
    beep_once();
  }
}




以下是错误提示:
code21.ino: In function 'void loop()':
code21:62: error: 'i' was not declared in this scope
code21:74: error: 'count' was not declared in this scope
code21:78: error: 'time' was not declared in this scope

阿莫论坛20周年了!感谢大家的支持与爱护!!

月入3000的是反美的。收入3万是亲美的。收入30万是移民美国的。收入300万是取得绿卡后回国,教唆那些3000来反美的!

出0入0汤圆

 楼主| 发表于 2018-11-29 10:46:11 | 显示全部楼层
和孩子玩arduino,使用图形编程,一段步进电机驱动程序不能使用,上传时发现这个错误,不知道什么意思。请坛友指教,谢谢!

出10入113汤圆

发表于 2018-11-29 10:48:49 | 显示全部楼层
三个变量没定义。

出0入24汤圆

发表于 2018-11-29 10:53:16 | 显示全部楼层
int beep= 3;  //铚傞福鍣ㄨ礋鏋�char time = 0, i = 0, count = 0;

char前面加个回车

出0入0汤圆

 楼主| 发表于 2018-11-29 10:54:43 | 显示全部楼层
饭桶 发表于 2018-11-29 10:48
三个变量没定义。

谢谢,我不懂C语言,这个是步进电机驱动程序,你帮我定义一个数据,我输入试试,好吗?能不能简单告诉我这三个数据分别是什么意思,可以吗?谢谢!

出0入0汤圆

 楼主| 发表于 2018-11-29 10:57:05 | 显示全部楼层
和小学生玩,这是蛮好的一个项目,但只能用图形化编程,重点是项目创意,程序方面注重逻辑关系,命令了啥没法和孩子们讲的,我自己也不懂。

出0入0汤圆

 楼主| 发表于 2018-11-29 11:01:08 | 显示全部楼层
20061002838 发表于 2018-11-29 10:53
int beep= 3;  //铚傞福鍣ㄨ礋鏋�char time = 0, i = 0, count = 0;

char前面加个回车

谢谢!
加了一个回车不再显示错误,可是电机还是不转,电机内有抖动。

出10入113汤圆

发表于 2018-11-29 11:04:18 | 显示全部楼层

int IN1 = 7;   //IN1
int IN2 = 6;   //IN2
int IN3 = 5;  // IN3
int IN4 = 4;  // IN4
int beep= 3;  //铚傞福鍣ㄨ礋鏋�
char time = 0, i = 0, count = 0;

void setup()
{
  //鍒濆鍖栫數鏈洪┍鍔↖O涓鸿緭鍑烘柟寮�  
pinMode(IN1, OUTPUT); // PIN 7
  pinMode(IN2, OUTPUT); // PIN 6
  pinMode(IN3, OUTPUT); // PIN 5
  pinMode(IN4, OUTPUT); // PIN 4
  pinMode(beep, OUTPUT); //PIN 3
  digitalWrite(beep, HIGH);
  Serial.begin(9600);//璁剧疆娉㈢壒鐜囦负9600
}
/*******************************鍥涚浉鍏媿***********************************/
void Coil_A()
{
  digitalWrite(IN1, LOW); digitalWrite(IN2, HIGH); digitalWrite(IN3, HIGH); digitalWrite(IN4, HIGH);
}
void Coil_AB()
{
  digitalWrite(IN1, LOW); digitalWrite(IN2, LOW); digitalWrite(IN3, HIGH); digitalWrite(IN4, HIGH);
}
void Coil_B()
{
  digitalWrite(IN1, HIGH); digitalWrite(IN2, LOW); digitalWrite(IN3, HIGH); digitalWrite(IN4, HIGH);
}
void Coil_BC()
{
  digitalWrite(IN1, HIGH); digitalWrite(IN2, LOW); digitalWrite(IN3, LOW); digitalWrite(IN4, HIGH);
}
void Coil_C()
{
  digitalWrite(IN1, HIGH); digitalWrite(IN2, HIGH); digitalWrite(IN3, LOW); digitalWrite(IN4, HIGH);
}
void Coil_CD()
{
  digitalWrite(IN1, HIGH); digitalWrite(IN2, HIGH); digitalWrite(IN3, LOW); digitalWrite(IN4, LOW);
}
void Coil_D()
{
  digitalWrite(IN1, HIGH); digitalWrite(IN2, HIGH); digitalWrite(IN3, HIGH); digitalWrite(IN4, LOW);
}
void Coil_DA()
{
  digitalWrite(IN1, LOW); digitalWrite(IN2, HIGH); digitalWrite(IN3, HIGH); digitalWrite(IN4, LOW);
}
/*******************************************************************/

void beep_once()//铚傞福鍣ㄥ搷涓�
{
   digitalWrite(beep, LOW);
   delay(100);
   digitalWrite(beep, HIGH);
}

void loop()
{
  unsigned long now_time = micros(); //鑾峰彇褰撳墠鐨勭郴缁熻繍琛屾椂闂撮暱搴�  
while ((micros() - now_time) < 14648); //   60 000 000us/4096
  switch (i)
  {
    case 0: Coil_A(); i++; break;
    case 1: Coil_AB(); i++; break;
    case 2: Coil_B(); i++; break;
    case 3: Coil_BC(); i++; break;
    case 4: Coil_C(); i++; break;
    case 5: Coil_CD(); i++; break;
    case 6: Coil_D(); i++; break;
    case 7: Coil_DA(); i = 0; break;
    default: break;
  }
  count++;
  if (count == 68)//涓�璁℃椂锛屾樉绀哄苟铚傞福鍣ㄥ搷涓�笅
  {
    count = 0;
    time++;
    if (time == 60)
      time = 0;
    Serial.print("second: " ) ;
    Serial.print(time, DEC) ;
    Serial.println("s" ) ;
    beep_once();
  }
}

出0入0汤圆

 楼主| 发表于 2018-11-29 11:05:51 | 显示全部楼层
问题太幼稚,我自己都感觉不好意问但没办法,不懂就是不懂

出0入0汤圆

 楼主| 发表于 2018-11-29 11:13:08 | 显示全部楼层
谢谢,可以了!
就是两个地方加了两个回车,对吗?

出0入0汤圆

 楼主| 发表于 2018-11-29 11:13:55 | 显示全部楼层
饭桶 发表于 2018-11-29 11:04
int IN1 = 7;   //IN1
int IN2 = 6;   //IN2
int IN3 = 5;  // IN3

谢谢,可以了!
就是两个地方加了两个回车,对吗?

出10入113汤圆

发表于 2018-11-29 11:14:29 | 显示全部楼层
对的,你复制代码后没检查格式。

出0入0汤圆

发表于 2018-11-29 11:38:19 | 显示全部楼层
wenyuan 发表于 2018-11-29 11:01
谢谢!
加了一个回车不再显示错误,可是电机还是不转,电机内有抖动。

类似于pwm频率太快了。

出0入0汤圆

 楼主| 发表于 2018-11-29 13:47:49 | 显示全部楼层
饭桶 发表于 2018-11-29 11:14
对的,你复制代码后没检查格式。

我不是复制的,是直接打开了硬件供应商给的程序

出0入0汤圆

 楼主| 发表于 2018-11-29 13:49:33 | 显示全部楼层
沉默胜过白金 发表于 2018-11-29 11:38
类似于pwm频率太快了。

谢谢!
后来两个地方加了个回车键就行了,但转速很慢。这里改变哪个参数可以提高速度?
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-4-26 06:37

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表