Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / FoxPro, Visual FoxPro Новый топик    Ответить
 Чтение COM портов в VFP  [new]
Valerii
Member

Откуда:
Сообщений: 749
Народ,
Кто читал COM порты в VFP? Пожскажите
Спасибо
10 янв 05, 16:29    [1233437]     Ответить | Цитировать Сообщить модератору
 Re: Чтение COM портов в VFP  [new]
Hel!Riser
Member

Откуда: Нижний Новгород
Сообщений: 972
их точна читали на FoxClub'e Воспользуйся Поиском по форуму http://forum.foxclub.ru/list.php?f=5
10 янв 05, 16:32    [1233441]     Ответить | Цитировать Сообщить модератору
 Re: Чтение COM портов в VFP  [new]
Valerii
Member

Откуда:
Сообщений: 749
нет там ничего...
10 янв 05, 16:52    [1233494]     Ответить | Цитировать Сообщить модератору
 Re: Чтение COM портов в VFP  [new]
leaf
Member [заблокирован]

Откуда: Ростов-на-Дону --> Москва
Сообщений: 2661
о такой штуке как microsoft communications control не слышали ?
10 янв 05, 17:12    [1233557]     Ответить | Цитировать Сообщить модератору
 Re: Чтение COM портов в VFP  [new]
Valerii
Member

Откуда:
Сообщений: 749
Слышал, и даже пробую, но примеров ее использования не очень много, а документирована как обычно - это для этого , это ждя того...
10 янв 05, 19:54    [1233840]     Ответить | Цитировать Сообщить модератору
 Re: Чтение COM портов в VFP  [new]
Valerii
Member

Откуда:
Сообщений: 749
Раскажи, как прочесть тупо из порта значения в ASCII формате..
10 янв 05, 19:58    [1233843]     Ответить | Цитировать Сообщить модератору
 Re: Чтение COM портов в VFP  [new]
luser
Member [заблокирован]

Откуда: Пердыщево
Сообщений: 1246
Если тупо прочесть и асинхронности операций не нужно обеспечивать то делай просто:

hComPort =  FOPEN("\\.\\COM1")  && Это для NT,ХР, 2000, 2003
 hComPort =  FOPEN("COM1")  && для Win 95,98 до потра 9
 && с 10 порта так же как и для NT, ХР, 2000, 2003
 А дальше работаешь с ним как с обыкновенным файлом:

 if hComPort <0 
? "  Порт не существует или занят(уже открыт)"
endif

 Порт открыт, теперь как его юзать :

Пишем:
string_write   = "тут то, что хочешь в него записать"
n_len_w =  LEN(string_write)  && А тут длинна , т.е. сколько "весит строка"
? FWRITE( hComPort,string_write,n_len_w) && тут записал, тебе вернется количество реальных байт ушедших в порт (не факт что в устройство на нем)
Читаем:
 str_read =  FREAD( hComPort,Count_Read_Byte)
где Count_Read_Byte количество байт которые тебе необходимо прочитать из порта.
 str_read <-- тут ,то что прочитал

 Закрыть порт:
=FCLOSE( hComPort) 
Так пойдет ?
10 янв 05, 20:41    [1233886]     Ответить | Цитировать Сообщить модератору
 Re: Чтение COM портов в VFP  [new]
Hel!Riser
Member

Откуда: Нижний Новгород
Сообщений: 972
Valerii
нет там ничего...

если руки кривые, то фсяка нич:Е и нигде
http://forum.foxclub.ru/read.php?f=5&i=89671&t=89671
http://forum.foxclub.ru/read.php?f=5&i=58365&t=58365
http://forum.foxclub.ru/read.php?f=5&i=33006&t=33006
ну и прочего тама немеряно
11 янв 05, 08:31    [1234198]     Ответить | Цитировать Сообщить модератору
 Re: Чтение COM портов в VFP  [new]
Valerii
Member

Откуда:
Сообщений: 749
Hel!Riser
Valerii
нет там ничего...

если руки кривые, то фсяка нич:Е и нигде
http://forum.foxclub.ru/read.php?f=5&i=89671&t=89671
http://forum.foxclub.ru/read.php?f=5&i=58365&t=58365
http://forum.foxclub.ru/read.php?f=5&i=33006&t=33006
ну и прочего тама немеряно

Да видел я это...
Тем не менее спасибо..
11 янв 05, 13:13    [1235181]     Ответить | Цитировать Сообщить модератору
 Re: Чтение COM портов в VFP  [new]
Valerii
Member

Откуда:
Сообщений: 749
Тема такая - у меня сканер штрих кода который подсоеденяется в ком порт...
Тепрь, как он работает?... Я кликаю по штрих коду и у меня по логике в COM порту лежит текстовое поле из 13 чисел (EAN13) ???... Чтоб его считать, мне нужно узнать - а был ли сканирован штрих код? Если это делать таймером - не красиво... Есть возможность сгенерить Event когда буфер порта получил какую-то строку информаци?
Вообще, как это делается правильно???
Всем спасибо..
11 янв 05, 13:41    [1235376]     Ответить | Цитировать Сообщить модератору
 Re: Чтение COM портов в VFP  [new]
Igor Korolyov
Member

Откуда: Гомель, Беларусь
Сообщений: 2512

Hi Valerii!

У тебя нету хелпа к MSCOMM?

Я помнится пример и с Event-ами рисовал и с опросом в цикле...

RThreshold управляет тем как будет генерироваться событие при поступлении
данных в порт (после приёма сколько байт).
Можно накапливать принимаемую инфу в своём буфере - думаю что девайс после
циферок может и перевод строки посылать - тогда по приходу этого символа
можно понять считался код или нет... В общем читай мануал к девайсу, читай
хелп к MSCOMM и никаких проблем :)

Posted via ActualForum NNTP Server 1.1

12 янв 05, 03:14    [1237240]     Ответить | Цитировать Сообщить модератору
 Re: Чтение COM портов в VFP  [new]
-ноль-
Guest
А у меня есть без циклов. FLL в свое время написал которая ловит событие прихода символов в порт и передет их в OLE Server написанные на VFP. А класс сервера связан с моим классом в Приложение через Implements. И все чики - пики работает. Если нужно, могу документировать и выложить.
12 янв 05, 10:04    [1237557]     Ответить | Цитировать Сообщить модератору
 Re: Чтение COM портов в VFP  [new]
-ноль-
Guest
Да, забыл сказать что работает асинхронно. Фокс может заниматься своими делами, это никак не влияет на его работу.
12 янв 05, 10:08    [1237570]     Ответить | Цитировать Сообщить модератору
 Re: Чтение COM портов в VFP  [new]
Valerii
Member

Откуда:
Сообщений: 749
Выложи и плз. документация..
А а пример бАльшое Спасибо...
12 янв 05, 13:02    [1238496]     Ответить | Цитировать Сообщить модератору
 Re: Чтение COM портов в VFP  [new]
Igor Korolyov
Member

Откуда: Гомель, Беларусь
Сообщений: 2512

Hi -ноль-!

А какие отличия от MSCOMM при установленном в нём RThreshold = 1? Тот тоже
"асинхронно" работает - т.е. можно исполнять какой-то код а по приходу
данных сработает Event.

Posted via ActualForum NNTP Server 1.1

13 янв 05, 03:41    [1240562]     Ответить | Цитировать Сообщить модератору
 Re: Чтение COM портов в VFP  [new]
-ноль-
Guest
Ну -ну :) Попрбуй, обслужи с помощью этого контрола 20 портов, тогда и поймешь в чем отличие.
13 янв 05, 10:21    [1240921]     Ответить | Цитировать Сообщить модератору
 Re: Чтение COM портов в VFP  [new]
Igor Korolyov
Member

Откуда: Гомель, Беларусь
Сообщений: 2512

Hi -ноль-!

У меня нету ни 20 портов, ни тем более столько устройств на них, хотя я
охотно верю что MSCOMM при таком раскладе не будет "выбором редакции". Ну да
и фокс тут тоже не силён - так что лучше (если конечно возможно) большую
часть обработки унести в этот fll/ActiveX...

Posted via ActualForum NNTP Server 1.1

15 янв 05, 05:20    [1247251]     Ответить | Цитировать Сообщить модератору
 Re: Чтение COM портов в VFP  [new]
- ноль -
Guest
Скоро выложу. Потом можете поругать. Времени маловато, да доступ к нету ограничен. Так что не обессудьте.
15 янв 05, 10:48    [1247337]     Ответить | Цитировать Сообщить модератору
Все форумы / FoxPro, Visual FoxPro Ответить