2013-07-24 34 views
0

我试图在我的Mega上一次设置所有模拟输入引脚的引脚模式。所以我做了一个阵列之前设置:从'char *'无效转换为'uint8_t'Arduino

char* Analog_Input_List[16] = {"A0","A1","A2","A3","A4","A5","A6","A7","A8","A9","A10","A11","A12","A13","A14","A15"}; 

然后我试图运行这个命令:

//analogue input pin set-up 
for (int i =0;i<8;i++){ 
pinMode(Analog_Input_List[i], OUTPUT); 
} 

但我发现了这个错误:

sketch_jul24a.cpp: In function ‘void setup()’: 
sketch_jul24a.cpp:54:40: error: invalid conversion from ‘char*’ to ‘uint8_t’ 
sketch_jul24a.cpp:54:40: error: initializing argument 1 of ‘void pinMode(uint8_t, uint8_t)’ 

我是新到arduino编程和类型的声明和操作一直让我感到困惑我知道它的一些简单但不知道如何去解决它。

感谢

回答

2

你试图通过初始化预处理器宏扩展到整型常量被描述的引脚。他们不是字符串。你想要的是

int inputPins[] = { A0, A1, /* etc. */ }; 

改为。

+0

辉煌的欢呼声!我无法在任何地方在网上找到...:D – user2137452

+0

@ user2137452如果有帮助,请接受我的回答。另外,看看我的评论 - 在编程Arduino之前,你应该至少将C学到一个基本的级别。 – 2013-07-24 13:04:36

相关问题