Сегодня понадобилось срочно подключить к PC синезубый GPS приемник Holux имеющий UART выход. Подключение нужно было сделать через USB порт. Переходник от мобилы который я переделывал здесь, потерял.
И тут как всегда приходит на помощь Arduino
Таким образом можно подключать к РС разные устройства от модемов до дисплеев. Можно на базе этого сделать интеллектуальный мост, GPS с гироскопом и т.д.

Скетчь для Arduino с возможностью обработки данных
Скетч на ассемблере, стабильно работает на высоких скоростях передачи
PHP код:
uint8_t RX_Pin=8;
uint8_t TX_Pin=9;
void setup()
{
pinMode(0, INPUT); //RX
pinMode(1, OUTPUT);//TX
pinMode(RX_Pin, OUTPUT);
pinMode(TX_Pin, INPUT);
}
void loop()
{
uint8_t Result;
asm volatile(
"cli" "\n\t"
"label%=:" "in %[Result], %[in_portd]" "\n\t"
"out %[out_portb], %[Result]" "\n\t"
"in %[Result], %[in_portb]" "\n\t"
"out %[out_portd], %[Result]" "\n\t"
"rjmp label%=" "\n\t"
: [Result] "=r" (Result)
: [out_portb] "I" (_SFR_IO_ADDR(PORTB)), [out_portd] "I" (_SFR_IO_ADDR(PORTD)),
[in_portb] "I" (_SFR_IO_ADDR(PINB)), [in_portd] "I" (_SFR_IO_ADDR(PIND))
:
);//asm end
}
Скетч для прямого подключения к пинам RX(D0) и TX(D1)
PHP код:
//http://www.compcar.ru
void setup()
{
pinMode(0, INPUT); //RX
pinMode(1, INPUT);//TX
}
void loop()
{
}