新手问题(增加一个程序问题)
本帖最后由 hetzenauer 于 2013-3-26 15:47 编辑今天收到apc220无线传输模块,但是设置好了以后使用下载的RF-ANET软件却一直跳出错误提示,说没有发现串行端口,更新了驱动程序以后还是老样子,去硬件管理器里面看了串口是正常的,不知道怎么才能解决。
另外一个问题是今天做履带底盘前进后退程序的时候,我根据《arduino开发实战指南》里面的程序烧入之后,发现只有用USB线连接电脑的时候芯片才正常工作,如果不连接电脑只连接电源的话就只是间断前进,不知何故,希望各位高人不吝赐教。多谢
编写MotorCar库的时候又出现问题,我在头文件MotorCar.h里面已经定义了私有函数_speedLeftPin,_speedRightPin,_dirLeftPin,_dirRightPin以及公有函数MotorCar(int,int,int,int),forward,back,turnLeft,turnRight,turnLeftOrigin,turnRightOrigin,stop,但是在试运行的时候,编译时提示cpp里面每个子函数都有问题
#include <MotorCar.h>
MotorCar::MotorCar(int _slpin,int _dlpin,int _srpin,int _drpin)
{
_speedLeftPin=_slpin;
_speedRightPin=_srpin;
_dirLeftPin=_dlpin;
_dirRightPin=_drpin;
pinMode(_speedLeftPin,OUTPUT);
pinMode(_speedRightPin,OUTPUT);
pinMode(_dirLeftPin,OUTPUT);
pinMode(_dirRightPin,OUTPUT);
}
void MotorCar::forward(int _speed)
{
digitalWrite(_dirRightPin,HIGH);
digitalWrite(_dirLeftPin,HIGH);
analogWrite(_speedRightPin,_speed);
analogWrite(_speedLeftPin,_speed);
}
void MotorCar::back(int _speed)
{
digitalWrite(_dirRightPin,LOW);
digitalWrite(_dirLeftPin,LOW);
analogWrite(_speedRightPin,_speed);
analogWrite(_speedLeftPin,_speed);
}
void MotorCar::turnLeft(int _speed)
{
digitalWrite(_dirRightPin,HIGH);
analogWrite(_speedRightPin,_speed);
analogWrite(_speedLeftPin,0);
}
void MotorCar::turnRight(int _speed)
{
digitalWrite(_dirLeftPin,HIGH);
analogWrite(_speedLeftPin,_speed);
analogWrite(_speedRightPin,0);
}
void MotorCar::turnRightOrigin(int _speed)
{
digitalWrite(_dirRightPin,LOW);
digitalWrite(_dirLeftPin,HIGH);
analogWrite(_speedRightPin,_speed);
analogWrite(_speedLeftPin,_speed);
}
void MotorCar::turnLeftOrigin(int _speed)
{
digitalWrite(_dirRightPin,HIGH);
digitalWrite(_dirLeftPin,LOW);
analogWrite(_speedRightPin,_speed);
analogWrite(_speedLeftPin,_speed);
}
void MotorCar::stop()
{
analogWrite(_speedRightPin,0);
analogWrite(_speedLeftPin,0);
}
提示是
E:\arduino-1.0.3-windows\arduino-1.0.3\libraries\MotorCar\MotorCar.cpp: In constructor 'MotorCar::MotorCar(int, int, int, int)':
E:\arduino-1.0.3-windows\arduino-1.0.3\libraries\MotorCar\MotorCar.cpp:12: error: 'OUTPUT' was not declared in this scope
E:\arduino-1.0.3-windows\arduino-1.0.3\libraries\MotorCar\MotorCar.cpp:12: error: 'pinMode' was not declared in this scope
E:\arduino-1.0.3-windows\arduino-1.0.3\libraries\MotorCar\MotorCar.cpp: In member function 'void MotorCar::forward(int)':
E:\arduino-1.0.3-windows\arduino-1.0.3\libraries\MotorCar\MotorCar.cpp:19: error: 'HIGH' was not declared in this scope
E:\arduino-1.0.3-windows\arduino-1.0.3\libraries\MotorCar\MotorCar.cpp:19: error: 'digitalWrite' was not declared in this scope
E:\arduino-1.0.3-windows\arduino-1.0.3\libraries\MotorCar\MotorCar.cpp:21: error: 'analogWrite' was not declared in this scope
E:\arduino-1.0.3-windows\arduino-1.0.3\libraries\MotorCar\MotorCar.cpp: In member function 'void MotorCar::back(int)':
E:\arduino-1.0.3-windows\arduino-1.0.3\libraries\MotorCar\MotorCar.cpp:26: error: 'LOW' was not declared in this scope
E:\arduino-1.0.3-windows\arduino-1.0.3\libraries\MotorCar\MotorCar.cpp:26: error: 'digitalWrite' was not declared in this scope
E:\arduino-1.0.3-windows\arduino-1.0.3\libraries\MotorCar\MotorCar.cpp:28: error: 'analogWrite' was not declared in this scope
E:\arduino-1.0.3-windows\arduino-1.0.3\libraries\MotorCar\MotorCar.cpp: In member function 'void MotorCar::turnLeft(int)':
E:\arduino-1.0.3-windows\arduino-1.0.3\libraries\MotorCar\MotorCar.cpp:33: error: 'HIGH' was not declared in this scope
E:\arduino-1.0.3-windows\arduino-1.0.3\libraries\MotorCar\MotorCar.cpp:33: error: 'digitalWrite' was not declared in this scope
E:\arduino-1.0.3-windows\arduino-1.0.3\libraries\MotorCar\MotorCar.cpp:34: error: 'analogWrite' was not declared in this scope
E:\arduino-1.0.3-windows\arduino-1.0.3\libraries\MotorCar\MotorCar.cpp: In member function 'void MotorCar::turnRight(int)':
E:\arduino-1.0.3-windows\arduino-1.0.3\libraries\MotorCar\MotorCar.cpp:39: error: 'HIGH' was not declared in this scope
E:\arduino-1.0.3-windows\arduino-1.0.3\libraries\MotorCar\MotorCar.cpp:39: error: 'digitalWrite' was not declared in this scope
E:\arduino-1.0.3-windows\arduino-1.0.3\libraries\MotorCar\MotorCar.cpp:40: error: 'analogWrite' was not declared in this scope
E:\arduino-1.0.3-windows\arduino-1.0.3\libraries\MotorCar\MotorCar.cpp: In member function 'void MotorCar::turnRightOrigin(int)':
E:\arduino-1.0.3-windows\arduino-1.0.3\libraries\MotorCar\MotorCar.cpp:45: error: 'LOW' was not declared in this scope
E:\arduino-1.0.3-windows\arduino-1.0.3\libraries\MotorCar\MotorCar.cpp:45: error: 'digitalWrite' was not declared in this scope
E:\arduino-1.0.3-windows\arduino-1.0.3\libraries\MotorCar\MotorCar.cpp:46: error: 'HIGH' was not declared in this scope
E:\arduino-1.0.3-windows\arduino-1.0.3\libraries\MotorCar\MotorCar.cpp:47: error: 'analogWrite' was not declared in this scope
E:\arduino-1.0.3-windows\arduino-1.0.3\libraries\MotorCar\MotorCar.cpp: In member function 'void MotorCar::turnLeftOrigin(int)':
E:\arduino-1.0.3-windows\arduino-1.0.3\libraries\MotorCar\MotorCar.cpp:52: error: 'HIGH' was not declared in this scope
E:\arduino-1.0.3-windows\arduino-1.0.3\libraries\MotorCar\MotorCar.cpp:52: error: 'digitalWrite' was not declared in this scope
E:\arduino-1.0.3-windows\arduino-1.0.3\libraries\MotorCar\MotorCar.cpp:53: error: 'LOW' was not declared in this scope
E:\arduino-1.0.3-windows\arduino-1.0.3\libraries\MotorCar\MotorCar.cpp:54: error: 'analogWrite' was not declared in this scope
E:\arduino-1.0.3-windows\arduino-1.0.3\libraries\MotorCar\MotorCar.cpp: In member function 'void MotorCar::stop()':
E:\arduino-1.0.3-windows\arduino-1.0.3\libraries\MotorCar\MotorCar.cpp:59: error: 'analogWrite' was not declared in this scope
HIGH,LOW,pinMode之类的我怎么定义啊,这不应该是原本就自带的么 你机子是不是联想的? 我和你碰到同样问题,如果右键以管理员身份打开的话能找到串口,但还是有错误:( maximus 发表于 2013-3-25 19:55 static/image/common/back.gif
你机子是不是联想的?
不是,我家台式机和IBM笔记本上都出现这个问题,但是单位里面清华同方的机器上就正常了 hetzenauer 发表于 2013-3-25 20:46 static/image/common/back.gif
不是,我家台式机和IBM笔记本上都出现这个问题,但是单位里面清华同方的机器上就正常了
IBM不也被联想收了吗?我也是THINKPAD maximus 发表于 2013-4-6 21:50 static/image/common/back.gif
IBM不也被联想收了吗?我也是THINKPAD
我那笔记本买的时候联想还没有收购IBM......我发现问题的原因好像是RE-ANET软件和64位的win7不兼容,只能在32位的系统上运行 hetzenauer 发表于 2013-4-7 12:51 static/image/common/back.gif
我那笔记本买的时候联想还没有收购IBM......我发现问题的原因好像是RE-ANET软件和64位的win7不兼容,只能 ...
我在我室友64位系统上跑成功过:P maximus 发表于 2013-4-9 16:41 static/image/common/back.gif
我在我室友64位系统上跑成功过
我在64位机器上成功过一次,后来就一直失败,但是除了这个以外别的系统环境好像没什么差别 你的库文件,开头要加上“#include<Arduino.h>”(如果是1.0.1以上的版本),以下的要加“#include<WProgram.h>”
页:
[1]