我认为我的问题更多是缺乏理解,但这里有一个概述:
我正在尝试与使用串行通信的旧三菱讨论。初始化工作是通过以 5 波特切换 K 线(这种技术似乎在其他地方使用),然后将 K 线作为 INPUT 传递,读取一些代码,之后您可以直接在 K 线上读写。所述协议的细节(以及我们只使用一行的事实)在此处详述。
这让我有点困惑,因为我习惯了一个 TX 引脚和一个 RX 引脚,不必在每次读写后在 TX 和 RX 之间切换一个引脚,但让我们假设这是可行的。
如何在 Teensy 3.2 上设置串行通信(指定波特率和 RX/TX 引脚,此处相同)?(经典的 Arduino C++ 东西)
或者也许我可以有两个引脚,每个引脚都连接到 K 线。这在物理上是相同的,但允许我在软件中将其定义为标准序列。
这是到目前为止编写的代码:
void setup() {
// HERE: SETUP SERIAL WITH ONE PIN
// Or do the two-pins-on-same-wire-thing with HWSerial.begin(15625, SERIAL_8N1);
pinMode(DATA_PIN, OUTPUT);
// MUT Init
int init = MUT_INIT_CODE;
for (int i= 0; i < 9; i++){
if (init & 1){
digitalWrite(DATA_PIN, HIGH);
digitalWrite(LED_PIN, HIGH);
} else {
digitalWrite(DATA_PIN, LOW);
digitalWrite(LED_PIN, LOW);
}
init >>= 1;
delay(MUT_INIT_DELAY);
}
byte answer[3];
pinMode(DATA_PIN, INPUT);
HWSerial.readBytes(answer, 3);
}
提前致谢!