|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
01.06.2010, 00:26 | #1 |
Регистрация: 30.05.2010
Сообщений: 4
|
Прием и передача байт и бит через COM-порт от 16 разрядного МК
Здравствуйте. Как мне правильно организовать получение с МК выборки значений через СОМ порт?
Функции чтения, открытия и записи есть. Тестировал на эмуляторе СОМ порта отсылку и прием бита - работает. А вот как получить с МК, учитывая что он присылает каждый Икс состоящий из 16 бит (2 байта), да еще и в big indian формате и записать все это в массив, что бы потом обработать, я не могу сообразить. Далее функция, которая соединяет ПК с МК. Код:
|
01.06.2010, 23:19 | #2 |
Регистрация: 30.05.2010
Сообщений: 4
|
Ладно, я начну первый.
Значит, я бы хотел получить совет как делать, а не готовый код (хотя конечно код не помешал бы). Я например не знаю что лушче использовать: есть такая штука как DWORD или использовать переменные типа bytе. Или как мне записать в байт 2 байта. И как будет выглядеть массив таких переменных? Также как поменять фирму записи big indean на little indean, используя >> или что? и как? дайте пожалуйста совет. |
10.06.2010, 21:36 | #4 |
Регистрация: 30.05.2010
Сообщений: 4
|
Хорошо, как мне получая массив двух байтных значений записать их в массив инт?
|
10.06.2010, 21:50 | #5 | |
Участник клуба
Регистрация: 12.08.2008
Сообщений: 1,977
|
Цитата:
Код:
mas_byte:= mas_inf[2]; // получим массив (0,120) _byte:= mas_byte[1]; // получим значение байта = 120
И не сомневайся даже ... отдых - кайф, работа - лажа!
Последний раз редактировалось DeKot; 10.06.2010 в 21:55. |
|
10.06.2010, 22:41 | #6 |
Регистрация: 30.05.2010
Сообщений: 4
|
может я сейчас покажусь совсем глупым, но DeKot я не понял что ты написал.
мне надо двух байтные значения записать в одно значение инт. Помогите мне разобраться в том как записать выборку из 1000 2х байтных значений в массив для последующего построения графика. |
11.06.2010, 00:42 | #7 | |
Участник клуба
Регистрация: 12.08.2008
Сообщений: 1,977
|
Попробуем объяснить. Я объявляю новый тип переменной TInf, как двух-элементный массив (имеет два элемента с индексами 0 и 1) типа byte.
Т.е. в переменную типа TInf можно занести два значения в пределах байта (0..255). Теперь если я объявлю массив - mas_1: array[0..1] of TInf; то элементы массива должны быть в пределах байта (0..255). Далее я объявляю новую переменную mas_inf: array[0..3] of TInf; Это массив массивов, т.е. массив mas_inf cостоит из четырех (в данном случае, т. к. указано [0..3]) массивов по два байта. Получаем массив двухбайтных значений. Вам не это надо? Или что значит вырахение Цитата:
И не сомневайся даже ... отдых - кайф, работа - лажа!
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Управление ШД через LPT - порт | remz | Общие вопросы Delphi | 17 | 06.10.2010 22:39 |
Передача информации с порта на порт | Nice42ru | Помощь студентам | 5 | 10.02.2010 12:25 |
TServerSocket и TClientSocket передача и прием файла | Vovandows | Работа с сетью в Delphi | 2 | 24.09.2008 09:23 |
1 байт 9 бит ?! | Иллидан | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 4 | 13.04.2008 12:47 |