将输出从arduino发送到picaxe

时间:2014-10-13 09:24:55

标签: arduino arduino-ide picaxe

我正在做一个涉及Arduino Uno和Picaxe 14m2的课程项目。

我正在尝试为Arduino Uno编写程序代码,这将允许我向Picaxe上的输入发送和输出值。

所以在外行人看来,这就是我希望实现的目标:

我希望Arduino检查传感器,以及传感器是否返回特定值。 ( - 我知道这一部分,但不知道下一部分。)然后我想让Arduino发送一个值(HIGH,或类似的东西)作为Picaxe输入引脚之一的输出。然后,我需要Picaxe注意到已发送的值,然后执行其他操作。

任何帮助将不胜感激。 感谢。

2 个答案:

答案 0 :(得分:0)

如果您正在寻找,可能需要指定您拥有的PICAXE类型。 由于这些芯片的类型存在差异。

之后你可能需要查看PICAXE的数据表,以便找到指令集和程序存储器的类型," EEPROM ...."。

之后:

  1. 列出您的Is / Os,输入和输出。
  2. 设置源代码编辑器。
  3. 编写源代码并将其刻录到PICAXE程序 记忆。(C,汇编...)
  4. 写下你的Arduino代码,设置Is / Os并告诉你 Arduino如何处理和输出信号。(C语言)
  5. 为要连接的硬件制作电路图 两个芯片之间。
  6. 别忘了看Arduino和。的加载效果 PICAXE,因为您不想刻录您的项目硬件 毕竟。
  7. 测试您的项目并注意您必须进行故障排除 发生问题时的软件和硬件。
  8. 我建议您使用示波器测试进出两个电路的信号+传感器的信号。

    • 对于你需要PICAXE做的任何额外的事情,使用If语句,因为它们不是那么技术化而且易于编写和排除故障。

    对于您的方案,您实际上是通过来自传感器的可变信号使Arduino向PICAXE发出指令。

    ^给我反馈,我会帮助更多。

答案 1 :(得分:0)

您可能希望了解使用UART(又名序列号)或i2c通讯。

串行通信应该适用于任何PICAXE和Arduino,而i2c仅在您使用X2系列PICAXE芯片时才能工作。 i2c的主要优势在于使用多个从设备(加上主设备,即总共不超过2个设备),在这些设备中,您可以使用相同的两条线路连接最多128个设备。串行(UART)通信更简单,只需要一根电线(加一个公共接地)就可以单向发送数据,这是我将在本答复的其余部分显示的内容

Here is the manual entry用于PICAXE的串行输入,Here's the entry用于Arduino的串行输出。给出问题所需的代码如下:

对于arduino:

void setup(){
  Serial.begin(9600);
}
void loop(){
   if (conditionMet){    //whatever the condition is in your code
       int bytesSent = Serial.write(“HIGH”); //send the string “HIGH"
   }
}

和PICAXE:

main:
    serin 6, T9600, ("HIGH")  'uses qualifier to look for exact message "HIGH"
    'do whatever when criteria met
goto main