Передача в ком порт данных

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Rouslan
Начинающий
Начинающий
 
Сообщения: 3
Зарегистрирован: 15.11.2005 (Вт) 14:42

Передача в ком порт данных

Сообщение Rouslan » 15.11.2005 (Вт) 14:45

Здравствуйте.
Столкнулся с задачей в которой нужно открыть ком порт, установить модем в голосовой режим а после отправить в порт *.wav (ADPCM, 22050 Hz, 4 bits, mono).
Все понятно кроме передачи данных в порт.
Не могли бы помочь, перерыл весь инет, ничего дельного не нашел, только готовые ocx-ы которые не пашут или глючат.

MSComm1.CommPort = 1
MSComm1.Output = "at+fclass=8" & vbCr
MSComm1.Output = "at+vsm=130,8000,0,0" & vbCr
MSComm1.Output = "at+vsd=128,50" & vbCr
MSComm1.Output = "at+vls=5" & vbCr
MSComm1.Output = "atdt777" & vbCr ' набираемый номер телефона
MSComm1.Output = "at+vtx" & vbCr

а дальше нужно передать в порт данные (*.wav), но КАКИМ ОБРАЗОМ ?

кстати когда посылаю MSComm1.Output = "at+vtx" & vbCr модем отключается от линии.
Люди, помогите, месяц бьюсь ничего не могу сделать.

Antonariy
Повелитель Internet Explorer
Повелитель Internet Explorer
Аватара пользователя
 
Сообщения: 4824
Зарегистрирован: 28.04.2005 (Чт) 14:33
Откуда: Мимо проходил

Сообщение Antonariy » 15.11.2005 (Вт) 15:34

Знаю, как послать звук, соединив проводком lineout звуковой карты и микрофон модема. Такой вариант подходит?
Лучший способ понять что-то самому — объяснить это другому.

Rouslan
Начинающий
Начинающий
 
Сообщения: 3
Зарегистрирован: 15.11.2005 (Вт) 14:42

Сообщение Rouslan » 15.11.2005 (Вт) 15:54

В принципе пишу автоответчик, проводок это конечно хорошо но хотелось бы чтоб работала прога без лишних хлопот для пользователя. А за идею спасибо. Если ответов будет 0, то наверно так и сделаю :)

Antonariy
Повелитель Internet Explorer
Повелитель Internet Explorer
Аватара пользователя
 
Сообщения: 4824
Зарегистрирован: 28.04.2005 (Чт) 14:33
Откуда: Мимо проходил

Сообщение Antonariy » 15.11.2005 (Вт) 16:10

Без проводка ищи хелп по waveOutWrite Lib "winmm.dll". Нужно перебрать доступные звуковые линии, определить модемную и применить к ней эту функцию. Больше ничего по сабжу не знаю.
Лучший способ понять что-то самому — объяснить это другому.

Zer
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 460
Зарегистрирован: 26.09.2003 (Пт) 13:08
Откуда: Нижний Новгород

Сообщение Zer » 15.11.2005 (Вт) 23:43

Раз уж заговорили... Хотелось-бы знать, на какой скорости ты работаешь с портом, т.к. у меня на скорости больше 9600 он вообще не откликается...
Microsoft DirectX - Маломягкий Прямой Х...
Не откладывай на завтра то, что можно выпить сегодня...

Rouslan
Начинающий
Начинающий
 
Сообщения: 3
Зарегистрирован: 15.11.2005 (Вт) 14:42

Сообщение Rouslan » 16.11.2005 (Ср) 11:32

На скорости 115200, но если использовать листинг написанный выше то ничего вообще не происходит, кроме выполнения "at+fclass=8". Делаю я это через паузу примерно 0.5 сек(в форуме не указал как, т.к. не в этом у меня вопрос). Это либо особенности моего модема либо вообще всех, на других модемах не проверял. Наверно модем не успевает очухаться от первой команды когда на него идут последующие, которые он не успевает воспринять.

>т.к. у меня на скорости больше 9600 он вообще не откликается...

В принципе вопрос я не очень понял. Если просто выбрать порт и открыть его, то на модеме как миниму загорится лампочка "DTR"
MSComm1.CommPort = 1
MSComm1.PortOpen=True

Или порт открывается, но не проходят команды?

Zer
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 460
Зарегистрирован: 26.09.2003 (Пт) 13:08
Откуда: Нижний Новгород

Сообщение Zer » 24.11.2005 (Чт) 21:20

Команды проходят только на скорости 9600. Больше ставлю - хрен!
Microsoft DirectX - Маломягкий Прямой Х...
Не откладывай на завтра то, что можно выпить сегодня...


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: Yandex-бот и гости: 195

    TopList