Решил пойти дальше - подключил МК (RX,TX), написал прошивку по чтению/записи из/в UART и программку на компе по отправке данных и приему из комп порта. И дальше какая то фигня затворилась.
В МК логика была задумана такая - при чтении байта этот байт отправляется в портB, куда подключены 8 светодиодов (к каждой ноге по одному) что бы увидеть что он получил. В ответ шлем 0.
При нажатии на кнопку зажигаем еще одни светодиод и шлем единичку, при отпускании - тушим и шлем двойку.
МК тактируется от кварца на 8 мегагерц. Скорость по уарту - 9600. Подключение примитивное, даже незнаю чего там описывать. Схема вот

Программа на компе еще примитивней. Отправляет в порт $01, $02, $04, $08, $00. Ну что бы разные светодиоды загорались. Ну и раз в полсекунды читаем есть что в порту или нет. Программа на дельфях. Октрываю порт как файл
Код: Выделить всё
Com1:=CreateFile(PChar('Com1'),GENERIC_READ or GENERIC_WRITE,0,nil,OPEN_EXISTING,FILE_FLAG_OVERLAPPED,0);Код: Выделить всё
SetCommStateПуржим. Пуржится.
А вот дальше начинается свистопляска.
В диспетчере устройств устройство сидит плотно, не пропадает, все стабильно. Но вот работает оно фих знает как.
Иногда при подключении начинают из ком порта литься данные. Ну по логике так ит должно быть, но оттуда льется 120 (десятичная) и шесть нулей. Когда я туда пытаюсь что то отправить, то светодиоды загораются, но как то "от балды", хотя всегда одинаково, но не в соответствии с тем что я посылаю.
а иногда вообще молчек, ничего не отправляется и не посылается, выдает ошибку записи в порт (ну не ошибку, а ничего не пишет).
В чем секрет? Кто работал с этим чудом китайской техники?


