подключение Arduino UNO к оборудованию с rs232 разъемом
- Войдите на сайт для отправки комментариев
Ср, 16/08/2017 - 11:21
Добрый день!
Есть необходимость подключить ардуино к оборудованию и подцепить LED экран через rs232. есть контроллер adm3202, который преобразует 12В на 5В грубо говоря(rs232 работает на 12 В). оборудование работает на скорости 115200, ардуино на 9600. для начало подключил к ардуино rs232 через adm3202, скорость 9600 - работает
byte rx = 6; byte tx = 7; byte SWval; void setup() { pinMode(rx,INPUT); pinMode(tx,OUTPUT); digitalWrite(tx,HIGH); delay(2); digitalWrite(13,HIGH); //turn on debugging LED SWprint('h'); //debugging hello SWprint('i'); SWprint(10); //carriage return } void SWprint(int data) { byte mask; //startbit digitalWrite(tx,LOW); delayMicroseconds(bit9600Delay); for (mask = 0x01; mask>0; mask <<= 1) { if (data & mask){ // choose bit digitalWrite(tx,HIGH); // send 1 } else{ digitalWrite(tx,LOW); // send 0 } delayMicroseconds(bit9600Delay); } //stop bit digitalWrite(tx, HIGH); delayMicroseconds(bit9600Delay); } int SWread() { byte val = 0; while (digitalRead(rx)); //wait for start bit if (digitalRead(rx) == LOW) { delayMicroseconds(halfBit9600Delay); for (int offset = 0; offset < 8; offset++) { delayMicroseconds(bit9600Delay); val |= digitalRead(rx) << offset; } //wait for stop bit + extra delayMicroseconds(bit9600Delay); delayMicroseconds(bit9600Delay); return val; } } void loop() { SWval = SWread(); SWprint(toupper(SWval)); }
Как только подключаюсь параллельно к оборудованию терминал ничего не выдает, не реагирует ни на что, то есть одновременно может работать только один serial. Вопрос можно ли это как то решить?