· Начало · Отвђтить · Статистика · Поиск · FAQ · Правила · Установки · Язык · Выход · WASM.RU · Noir.Ru ·

 WASM Phorum —› WASM.ASSEMBLER —› Про COM-порт. Помогите.

Посл.отвђт Сообщенiе


Дата: Сен 20, 2004 14:15:18

Люди, помогите кто может (есть сэнсеи для начинающего?). Писал прогу для принятия данных через COM. Передает один байт, а затем выдает ошибку передачи. Что может быть?


Дата: Сен 20, 2004 14:45:42

Что может быть?


А хрен его знает ;)

Вот код моей терминалки:



1613082974__Termdrv.c


Дата: Сен 20, 2004 15:42:06

Под че надо? и че делать в целом должно? И с применением какого асма?


Дата: Сен 20, 2004 22:03:46

Ronin
„Писал прогу для принятия“
...
„Передает один байт“
Так передаёт или принимает?


Дата: Сен 22, 2004 14:12:44

Типа терминала. Есть устройство, которое выдает цепочку байт, когда ей посылаешь определенное значение. Один раз это значение передается, а затем ошибка. Писал используя tasm 5. Писал под DOS. Под винду не требовалось.


Дата: Сен 22, 2004 19:52:59


Дата: Сен 23, 2004 14:24:58

Спасибо всем! Очень благодарен за помощь. Буду разбираться. Ведь я только учусь :)


Дата: Сен 23, 2004 15:46:46

„Есть устройство, которое выдает цепочку байт, когда ей посылаешь определенное значение. Один раз это значение передается, а затем ошибка“

И старайся писать попонятнее. Устройство - оно. А кто такая она (ей посылаеь) ?! Должна выдаваться цепочка, а у тебя тут же написано, что передается значение один раз.
Один байт из цепочки или один раз цепочка ?!
Больше всего твоя ситуация похожа на переполнение буфера.
На эти грабли все наступают. COM-порт - это устройство реального времени. Если в него передают со скоростью 9600 бод, то надо читать байты не медленнее чем 960 раз/секунду. Там правда буфер есть на 16 байт, но его включить надо.


Дата: Сен 27, 2004 18:23:26

valterg
Один раз устройству управляющий байт передается, а в последующие попытки нет. Для принимаемой цепочки создаю буфер. Ошибка возникает при посылке 2-го управляющего байта.


Дата: Сен 28, 2004 10:14:41

А что за ошибка ?! Если комп старый, то мог
еще наступить на такие грабли : канал после того как
принял цепочку освобождается после приема
остатка стопового сигнала ( 1.5 стоп), хотя готовность
выдает раньше. Правда такое было только
на COM-портах советского производства на СМ-3
- назывались платы АДС, но может у тебя тоже
один из первых буржуйских чипов - там много глюков
было.


Дата: Сен 29, 2004 17:18:58 · Поправил: Ronin

Машина не советская. После передачи, которая не сотоялась, AH.7 = 1. Байт не передается. А какая именно ошибка не пойму :(. В разных источниках, которые я читал, по разному трактуются ошибки. Может опечатка. Какой источник верный не знаю.


Powered by miniBB 1.6 © 2001-2002
Время загрузки страницы (сек.): 0.092