Serial port 通过RS232与Arduino接口秤
我试图通过RS232从KERN ew220-3nm到Arduino Uno的磅秤上获取重量Serial port 通过RS232与Arduino接口秤,serial-port,arduino-uno,Serial Port,Arduino Uno,我试图通过RS232从KERN ew220-3nm到Arduino Uno的磅秤上获取重量 #include <SoftwareSerial.h> SoftwareSerial mySerial(5,4); void setup() { Serial.begin(9600); mySerial.begin(9600); } void loop() { char a[200] = {0}; if (m
#include <SoftwareSerial.h>
SoftwareSerial mySerial(5,4);
void setup() {
Serial.begin(9600);
mySerial.begin(9600);
}
void loop() {
char a[200] = {0};
if (mySerial.available()){
for (int i=0; i<20; i++) {
a[i] = mySerial.read();
Serial.println(a[i],BIN);
}
}
}
根据设备手册中的规范,它有1个起始位、8个数据位偶数奇偶校验位和1个停止位。在数据字节(2-9)中,最大数据位为6。总字节数为15。
按照这个解码,在某个时刻,我得到10作为停止位。此外,还有一些起始位后跟空闲状态。您是如何用arduino编写刻度的?它不是TTL串行,因此您需要一个转换器
这篇文章可能会给你更多的信息检查起始位和停止位的唯一方法是在RS-232线上使用示波器。从串行端口读取数据只提供每个字符帧的数据位。但在这里,当行空闲时,我也会得到结果。这将如何解释与数据不同的开始位和停止位?不鼓励只提供链接的答案,因为如果链接发生变化,信息就会丢失。最好是发布基本部分,主要是他需要给我们更多的信息,比如他是如何将天平连接到Arduino的。也许你需要读十六进制而不是二进制,这有点奇怪。我同意。当您有更多代表时,您可以将这些问题添加为评论。在查看新用户的答案时,我们会尽量注意链接之类的东西。我还对你的回答进行了一些编辑,以删除前面的问题(这可能会使它看起来像另一个问题而不是答案)。考虑到海报所问的问题从未得到解决,他们的链接没有太大用处。
11111111111111111111111111101001
11111111111111111111111111110000
11111111111111111111111110001110
1110
11111111111111111111111110011111
11111111111111111111111111100000
1110
11111111111111111111111110100011
1111100
11
1110
11111111111111111111111110010001
11111111111111111111111111000000
11
1110001
11111111111111111111111111100000
11
1010101
11111111111111111111111110100000
1111
11111111111111111111111111010110
0