Создание модели и моделирование элементов дискретного устройства

Курсовой проект - Компьютеры, программирование

Другие курсовые по предмету Компьютеры, программирование

емы и выходом z можно записать соотношением Z = , где х читается как не х или инверсия. Если на входе схемы 0, то на выходе 1. Когда на входе 1 на выходе 0. [3]

 

.5 Функциональная схема разрабатываемого модуля

 

Рисунок 1. Функциональная схема

1 - имя файла

- массив сигналов, содержащий переданные модулем моделирование значения

- ошибок не найдено, создание модели элемента в ОП

- тип моделируемого элемента

- если моделирование возможно возвращаем получаемое значение на выходе, иначе возвращаем х

 

 

3. Описание структур данных

 

.1 Используемые переменные и типы

 

Еlement2: string[] Mod2: int[] Vix:int[] Zader: int[] Еlement: string[]массив содержащий типы элементов считанные из библиотеки элементов так как данные о типе представлены в текстовой форме - тип массива string массив содержащий количество входных контактов элемента массив содержащий количество выходных контактов элемента массив содержащий значение задержки элемента массив содержащий информацию о типе элементов считанную из jTextField1mod: intмассив содержащий количество входных контактов элемента считанных из jTextField2fbib:File vsign:intхранит путь у файлу с библиотекой элементов, выбранному с использованием filechooser переменная содержащая значение выходного контакта элементаBib: stringхранит путь к файлу библиотеки элементов.Priznak: intпеременная содержащая признак ошибки/выполнения создание элемента ДУLBib: string Lin: int Result: Boolean Vrem: string[] Vrem2: string[] Vsignal: string Sig: string Signal: int[]для хранения строки считанной из файла с библиотекой элементов переменная используемая для подсчета повторения операции считывания из файла содержащего библиотеку элементов переменная используемая в filechooser, возвращает значение true если файл выбран массив используется для временного хранения значения количества входных контактов элемента, для последующего разделения по символу ; массив используется для временного хранения значения количества выходных контактов элемента, для последующего разделения по символу ; переменная содержащая значение выходного контакта моделируемого элемента. Предназначенная для вывода в jTextField4 переменная содержащая информацию о значении сигналах моделируемого элемента считанную из jTextField3 массив содержащий значения сигналов моделируемого элемента

.2 Используемые методы, процедуры и функции

 

Метод otkr() Метод nalichie()Производит считывание данных из файла библиотеки элементов. Создает модель элементов ДУ.readLine() BufferedReader (new FileReader ()) getText() length() endsWith() setFileFilter()Считывает построчно файл. Загружает заданный файл во входной поток данных. Считывает текст из указанного текстового поля. Возвращает значение длины заданного массива. функция которую использует filechooser для проверки типа файла выбранного пользователем Метод который использует filechooser для фильтрации типов файлов Функция преобразует тип int в string

Для удобства взаимодействия пользователя с разрабатываемым модулем предусмотрены следующие компоненты типа JButton:

jButton1(кнопка моделирование) - предназначена для моделирование элемента с заданными характеристиками.

Также предусмотрены следующие компоненты типа jTextField:

jTextField1 - тeксовое поле содержащее одну строку, предназначено для ввода пользователем типа элемента.

jTextField2 - текстовое поле содержащее одну строку, предназначено для ввода пользователем количества контактов.

jTextField3 - текстовое поле содержащее одну строку, предназначено для ввода пользователем значений на входах элемента.

jTextField4 - текстовое поле содержащее одну строку, предназначено для вывода выходного значения полученного после моделирования.

 

4. Описание алгоритма

 

.1 Алгоритм загрузки логического элемента из файла

 

1.Открыть файл с описанием элементов.

2.Считываем очередную строку.

.Если конец файл - к п9.

.Считываем название элемента.

5.Считываем количество возможных входных контактов.

6.Считываем задержку элемента.

.Если ошибок не обнаружено п8, иначе выдать сообщение об ошибке.

.Закрыть файл.

.Конец.

Процесс поиска ошибок состоит из следующих этапов:

1.Считываем очередную строку.

В массив содержащий типы элементов записываем второй элемент строки.

Четвертый элемент строки разбиваем на символы разделённые знаком ;, если полученные символы не численные, выводим сообщение об ошибке - количество входов задано некорректно. Иначе полученные значения записываем в массив содержащий количество входных контактов элемента.

Шестой элемент строки разбиваем на символы разделённые знаком ;, если полученные символы не численные, выводим сообщение об ошибке - количество выходов задано некорректно. Иначе полученные значения записываем в массив содержащий количество выходных контактов элемента.

Если значение восьмого элемента строки не численное, выводим сообщение об ошибке - задержка задана некорректно. Иначе полученное значение записываем в массив содержащий задержки элемента.

2.Если какой либо из необходимых по структуре элемент строки отсутствует, выдаем сообщение об ошибке - введены некорректные данные.

 

4.2 Алгоритм процедуры моделирования

 

Модуль моделирование передает значение сигналов только в том случае если хотя бы одно из них не равно х.

Элемент И

. Проверить значение всех сигналов. Если хоть один не соответствует трехзначной модели сигнала - выдать сообщение об ошибке.