Конверторы. Операции с битами.

Практически любое цифровое устройство (устройство измерения, контроля, управления) хранит, обрабатывает и передает информацию в двоичном коде.
Общая формула записи числа
n
N = S aihi - 1,
i = 1

где ai - множитель, который определяет состояние в i-ом разряде и может принимать любые целочисленные значения в пределах 0 ?ai ? h-1, h - oснование системы, i - номера разрядов от младшего до старшего (n-го), hi-1 - весовые коэффициенты разрядов.
Для двоичного кода h = 2, a = 0 или 1. Двоичная система счисления имеет очень простую техническую реализацию и небольшое (по сравнению с другими системами счисления) количество правил выполнения арифметических действий. Существуют различные варианты реализации двоичной системы счисления. Например, в двоично-десятичной системе (BCD-код) по двоичной системе кодируется не все число N, а каждый отдельно взятый десятичный разряд этого числа, например, число 295 в двоично-десятичной системе имеет вид:
0010 1001 0101
сотни десятки единицы
Этот код и аналогичные ему носят название тетрадных: в каждом десятичном разряде существует тетрада с набором каких-либо весовых коэффициентов.
Система счисления по основанию 16 (h = 16) удобна для записи в том случае, когда исходным является двоичный код.
При работе ЭВМ с внешним устройством необходимо различать два типа цифровой информации:

  • информация, с которой работает машина;
  • информация, с которой работает внешнее устройство.

И в том, и в другом случае эта информация представлена в двоичном коде. Единица информации в этом коде - бит (0/1). Для удобства обработки информации биты объединяются в группы. Размер и структура группы битов полностью определяются архитектурой вычислительной машины или внешнего устройства. Для малых машин типа ПК принята следующая структура: 8 бит - байт - минимально адресуемая единица памяти. Для ускорения обработки информации байты объединяются в слова. Размер слова для IBM PC - 2 байта (16 бит).
Внешнее устройство обменивается с ЭВМ информацией, разделенной на блоки (группы бит, которые могут не совпадать с машинными словами по структуре и размеру). Драйвер внешнего устройства организует адекватное отображение блоков обмена информацией в машинные слова и машинных слов в блоки. Прикладная программа обработки (в нашем случае пакет LabVIEW) осуществляет интерпретацию и использование полученных от внешнего устройства данных.
С помощью системы LabVIEW можно смоделировать перекодировку чисел из одной системы счисления в другую, преобразование аналогового сигнала в двоичный код и обратно, в аналоговый сигнал, переход от формата внешнего устройства к машинному, формирование команды в формате внешнего устройства.
Переход от одной системы счисления к другой осуществляется с помощью пунктов меню OperationsConvertions:



  • переход от двоичной к десятичной системе счисления,
  • переход от десятичной к двоичной системе счисления,
  • формат двоичного числа - 8 разрядов (7 цифровых, 1 знаковый),
  • формат двоичного числа - 8 разрядов (все разряды цифровые).

Задание:
Перевод числа из двоичной системы счисления (16 разрядов) в десятеричную и обратно. Число в двоичной системе счисления представить в виде 16-битного слова, где один бит содержит информацию о знаке числа.

Ход работы:

1. Запускаем LabVIEW соответствующей иконкой в среде Windows.

2. Работаем в окне лицевой панели в режиме редактирования графических объектов(FrontPanel).

3. Устанавливаем поле для ввода цифровой информации, которые будут предназначены для ввода числа в десятичной системе счисления Controls ->Modern->Numeric->NumericControl

4. Устанавливаем поле для вывода цифровой информации, которые будут предназначены для вывода числа в десятичной системе счисления Controls ->Modern->Numeric->NumericIndicator

5. Устанавливаем булевы элементы, которые будут обозначать число в двоичной системе счисления(все 16 элементов)

6. Помещаем данные элементы в кластер Controls->Modern->Array,Matrix&Cluster->Cluster

Конверторы. Операции с битами. - student2.ru

7. Переходим в режим установления связи.

8. Один из кластеров необходимо перевести в режим вывода, для этого в панели BlockDiagram необходимо нажать на элемент правой клавишей мыши и нажать на пункт «ChangetoControl»

9. Добавляем элемент конвертации кластера в массив Functions->Programming->Array->ClustertoArray

10. Добавляем элемент конвертации булевого массива в число Functions->Programming->Boolean->BooleanArraytoNumber

11. Добавляем элемент конвертации числа в булев массив Functions->Programming->Boolean->NumtoArray

12. Добавляем элемент конвертации числа в булев массив Functions->Programming->Array->ArraytoCluster.

13. Устанавливаем связи как показано на рисунке

Конверторы. Операции с битами. - student2.ru

14. Возвращаемся в окно лицевой панели, переходим в режим счета и запускаем счет в цикле(RunContinuously). При введении числа в двоичной системе счисления, в поле вывода будет отображаться данное число в десятичной системе счисления. При введении числа в десятичной системе счисления, в поле вывода будет отображаться данное число в двоичной системе счисления.

Лабораторная работа 12

Генерация и преобразование сигнала

Предположим, что вам необходимо произвести какое-либо измерение. Чтобы преобразовать сигнал аппаратурой преобразования или измерить сигнал с помощью платы ввода/вывода, нужно вначале преобразовать сигнал в электрический - напряжение или ток. Такую задачу выполняют преобразователи (датчики). Например, если вы хотите измерить температуру, вы должны каким-то образом представить ее как напряжение, которое может считываться платой ввода/вывода. Существует большое разнообразие преобразователей температуры, использующих некоторые принципы термодинамики и физические свойства материалов для преобразования температуры в электрический сигнал.
Как только физическая величина представлена в форме электрического сигнала, вы можете измерять ее для получения полезной информации, передаваемой через один или более параметров: состояние, величину, скорость, форму и частотный
спектр. Строго говоря, все сигналы аналоговые и изменяются во времени. Однако для обсуждения методов измерения вы должны классифицировать данный сигнал. Классификацию принято производить по способу передачи информации. Существует пять видов сигналов. Прежде всего, сигналы могут быть аналоговыми или цифровыми. Цифровой (или двоичный) сигнал имеет лишь два возможных дискретных
уровня - высокий и низкий. Аналоговый сигнал, наоборот, содержит информацию в непрерывно изменяюшейся во времени амплитуде.

Конверторы. Операции с битами. - student2.ru
Специалисты часто сводят классификацию цифровых сигналов к двум видам, а аналоговых - к трем. Два вида цифровых сигналов - это сигнал перехода от высокого (on) к низкому (off) уровню (или наоборот) и сигнал в виде серии импульсов.
Три вида аналоговых сигналов представлены постоянным сигналом, переменным сигналом во временной области (timedomain) и переменным сигналом в частотной области (frequencydomain) - рис. 10.3. Все эти виды сигналов по-своему уникальны в плане передачи информации. Пять видов сигнала соответствуют пяти основным видам информации, переносимой ими: состояние, скорость, уровень, форма и частотный спектр.

Конверторы. Операции с битами. - student2.ru

Задание:
Создать виртуальный прибор, который осуществляет генерацию пилообразного сигнала, линейно преобразует значение его амплитуды и выводит полученный сигнал на графический индикатор

Ход работы:

1. Запускаем LabVIEW соответствующей иконкой в среде Windows.

2. Работаем в окне лицевой панели в режиме редактирования графических объектов(FrontPanel).

3. Добавляем элемент управления Knob, Controls-> Express-> Numeric Controls->Knob

4. Отобразите цифровой дисплей элемента управления Knob из контекстного меню VisibleItems->DigitalDisplay.

5. Добавляем график, на котором будет отображаться исходный и преобразованный сигналы Controls->Modern->Graph->WaveFormGraph

6. С помощью курсора растяните PlotLegend, пока он не отобразит две кривые. Каждой кривой присвойте имена Масштабированный Пилообразный сигнал и Пилообразный сигнал. В контекстном меню графика выберите VisibleItems->ScaleLegend и отмените привязку к оси Y.

7. Добавляемкнопку «Stop», Controls->Modern->Boolean->Stop Button

Конверторы. Операции с битами. - student2.ru

8. Переходим в режим установления связи.

9. Добавляем цикл While, Functions-> Programming->Structures->While Loop

10. Добавляем внутрь цикла экспресс виртуальный прибор Simulate Signal, Functions->Express->Input->Simulate Signal

11. При помещении экспресс - ВП SimulateSignal на блок-диаграмму появляется диалоговое окно. В разделе Signal выберите тип сигнала Sawtooth. В разделе Timing выберите Simulateacquisitiontiming.

12. Добавляем элемент Scaling &Mapping, Functions->Signal Processing->Signal Operation

13. При помещении экспресс - ВП SimulateSignal на блок-диаграмму появляется диалоговое окно. Задайте коэффициент m = 10.

14. Устанавливаем связи как показано на рисунке.

Конверторы. Операции с битами. - student2.ru

15. Возвращаемся в окно лицевой панели, переходим в режим счета и запускаем программу. При изменении показания элемента управления, происходят изменения исходного и преобразованного сигнала в поле графика.

Лабораторная работа 13

Наши рекомендации