Проектирование микропроцессорного модуля автоматизированной информационной системы

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

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

оса матрицы. С выхода матрицы клавиш номер столбца нажатой клавиши поступает на входную шину ПККИ R0-R7. Код нажатой клавишу формируется следующим образом: в разряды D5-D3 помещается номер строки матрицы, в разряды D2-D0 - номер столбца матрицы, в разряд D6 - значение сигнала на входе SHIFT ПККИ, а в разряд D7 - единица, как признак кода КОИ7. Сканирование матрицы клавиш продолжается для того, чтобы определить, является ли нажатая клавиша одиночной. Если других нажатых клавиш не обнаружено, происходит повторная проверка нажатия клавиши через 10,24 мс. Если клавиша замкнута, ее код записывается в ОЗУ ПККИ. Если при сканировании обнаружены другие замкнутые клавиши, схема продолжает сканирование матрицы до тех пор, пока не останется нажатой только 1 клавиша. Ее код и помещается в ОЗУ ПККИ. Как только в ОЗУ ПККИ обнаруживается хотя бы один код нажатой клавиши, формируется запрос на прерывание IRQ. При каждом считывании из ОЗУ ПККИ на выходе IRQ появляется сигнал низкого уровня, а затем, если очередь кодов нажатых клавиш в ОЗУ еще не пуста сигнал IRQ снова становится активным.

Запрос на прерывание IRQ от ПККИ поступает на вход IR(1) ПКП КР580ВН59А. ПКП формирует сигнал запроса на прерывание INT высокого уровня, подаваемый на вход INTR маскируемого запроса на прерывание МП К1810ВМ86. Для подтверждения запросов по этому входу МП требуется два цикла шины аналогичных циклу чтения. Отличием является то, что на выходе INTA появляется сигнал низкого уровня, подобный сигналу RD. По второму сигналу INTA ПКП выдает на шину данных байт-идентификатор устройства, пославшего запрос. Затем процессор производит два цикла чтения из памяти по адресу, полученному от ПКП, и следующему за ним. Считанные слова загружаются в программный счетчик PС и регистр кодового сегмента CS соответственно. Новый адрес является начальным адресом программы обслуживания прерывания.

В ходе обслуживания прерывания осуществляется цикл чтения из внешнего устройства с адресом многорежимного ОЗУ ПККИ. В зависимости от считанного кода нажатой клавиши программа обслуживания прерывания от ПККИ либо инициализирует режим вывода данных на принтер, либо запускает программу обработки данных, либо сохраняет код нажатой клавиши в ОЗУ. В последнем случае осуществляется цикл записи в память.

Вывод данных

Вывод данных в проектируемом МП-модуле осуществляется по запросу на прерывание. Однако выбранное устройство вывода (принтер) не может самостоятельно инициировать режим вывода данных. Переход в этот режим осуществляется программно из подпрограммы обслуживания прерывания от клавиатуры. Процедура вывода начинается с проверки наличия подготовленных данных. Если данных нет, процедура вывода завершается, иначе происходит выдача очередного байта на принтер. В начале необходимо считать и проанализировать слово состояния принтера, произведя цикл чтения из внешнего устройства - порта В ППИ КР580ВВ55. Слово состояния принтера формируется из пяти сигналов от параллельного интерфейса LPT: сигналы низкого активного уровня ACK(подтверждение приема) и ERROR (признак неготовности в связи с ошибкой), а также сигналы высокого активного уровня BUSY (принтер занят, появляется при ошибке, отключении принтера или обработке выводимых данных), PE(закончилась бумага) и SEL (готовность приемника, обычно активен постоянно). Принтер готов при ACK=ERROR=SEL=1, BUSY=PE=0. Анализ слова состояния повторяется до обнаружения состояния готовности принтера к приему данных. Затем необходимо произвести три цикла записи во внешнее устройство, в первом из которых в порт А ППИ сохраняется первый байт выводимой информации, а во втором и третьем - в порт С записываются управляющие слова. Управляющее слово для принтера состоит из значений 4 сигналов: STROBE (строб записи данных), INIT (инициализация /сброс принтера), SELIN (выбор принтера), AUTOFD (перевод каретки на новую строку). Первое у.с. устанавливает сигнал строба (активный - низкий уровень), а второе - снимает. По завершении обработки принтер через параллельный порт LPT выдает сообщение о готовности к приему очередной порции данных в виде сигнала низкого уровня ACK. Этот сигнал подается через инвертор на вход IR(0) ПКП. Обслуживание прерывания происходит по описанной ранее схеме. В результате МП снова переходит к выполнению программы вывода данных.

3. Описание программного обеспечения МП-модуля

 

.1 Обоснование алгоритма программного обеспечения

 

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

МП-модуль, прежде чем перейти к выполнению основных своих функций - обработке программ ввода/вывода информации - должен пройти процедуры самотестирования и инициализации функциональных узлов.

Процедура самотестирования является обычной для любого вычислительного устройства и проводится по универсальным алгоритмам. Так, необходимо проверить работоспособность основных функциональных узлов модуля - его памяти и АЛУ процессора.

Так как при проектировании МП-модуля не стоит задача разносторонней и исчерпывающей проверки правильности функционирования всех его узлов, ограничимся для МП программой тестирования сумматора и сдвигателя его АЛУ.

Организация ПЗУ и ОЗУ в значительной мере различны, поэтому и алгоритмы тестирования для них также отличаются. Так, в случае ПЗУ заранее известно, как и в каких ячейках памяти хранится информация на данной ми?/p>