Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Хитрый конверт / 3 сообщений из 3, страница 1 из 1
26.11.2003, 10:09
    #32334936
Flex2
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Хитрый конверт
Приветствую.
Как мне сформировать такую структуру данных:
По описанию протокола:
[95] L Va Vb

95 - Это код команды. с ним понятно CHR(0X95)
L - номер линии, с ней тож все понятно , допустим CHR(1)
а вот с Va Vb не понятно.
В документации написано так:
Шесть младших бит Va и восемь бит Vb определяют длительность импульса [1,15000]
Старший бит Va определяет полярность: 0- "+", 1-"-".

Трудность в составлении функции которая бы мне формировала строку в которой лежит , допустим полярность плюс длительность 300 и занимала ровно 2 байта.
Помогите плииз. Заранее благодарен.
...
Рейтинг: 0 / 0
26.11.2003, 10:35
    #32334974
Flex2
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Хитрый конверт
Может вопрос так понятней будет:

local lnPolus, lncmd
lnPolus = 1500
lncmd = BITSET(lnPolus,15)
lcWORD = IntToWORD(lncmd)

Procedure IntToWORD
Lparameter tncmd
Local cRetWord
?
?
?
return cRetWord
EndPRoc

Фактически интерсует функция преобразования. Что-то не догоню как это дело можно предствить в формате слова в памяти. На фоксе ясное дело.
...
Рейтинг: 0 / 0
26.11.2003, 15:44
    #32335633
Гость_777
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Хитрый конверт
Примерно так получается, если я не ошибаюсь.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
local lnPolus, lncmd, lcCmd
lnPolus =  300 
lncmd = BITSET(lnPolus, 15 ) 
lcCmd =  CHR(0X09)+CHR( 1 )+IntToWORD(lncmd) 


Procedure IntToWORD 
Lparameter nInt 
RETURN CHR(FLOOR(nInt/ 256 % 256 ))+CHR(FLOOR(nInt% 256 ))   
EndPRoc 
...
Рейтинг: 0 / 0
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Хитрый конверт / 3 сообщений из 3, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]