p align="left"> Блок обработки прерываний состоит из регистра прерываний - КР1533ИР37, буферного элемента - КР1533АП5, элемента 7ИЛИ-НЕ собранного на КР1533ЛЕ4 и КР1533ЛН1. С каждого внешнего устройства сигнал INT поступает на вход регистра, синхронизирующий вход которого подключен к сигналу SYSCLK системной шины, что обеспечивает помехозащищенность, то есть регистрация прерываний происходит по положительному фронту сигнала SYSCLK, так как нарастание уровня происходит довольно быстро, то вероятность ложного срабатывания мала. Рис. 3.2 - Схема блока приема данных Так как выходы регистра соединены логическим элементом 7ИЛИ-НЕ, поэтому, если пришло хотя бы одно прерывание на выходе этого элемента появляется низкий уровень, который с помощью элементов НЕ и И-НЕ преобразуется в сигнал IRQ. Чтение пришедших прерываний происходит при низком уровне сигнала -STRR7. Сброс прерывания осуществляется установкой в управляющем слове старшего бита в "1". Схема блоки обработки прерываний приведена на рисунке 3.3. 3.4 Блок сопроводительных стробов Для регистрации данных во внешних устройствах служит блок ФСС. Сигналы с блока БВУС -STRW0...-STRW6 поступают на блок ФСС. С помощью элементов 2И-НЕ (КР1533ЛА3) эти сигналы инвертируются и задерживаются на 11нс. С элементов 2И-НЕ инвертированные и задержанные сигналы через буферный элемент КР1533АП5 выводятся на внешние устройства. Таким образом положительный фронт полученных сигналов (WR0...WR6) служит для регистрации данных во внешнем устройстве, так как данные будут опережать сигналы WR0...WR6 на величину задержки элементов 2И-НЕ. Рис. 3.3 - Блок обработки прерываний Схема блока формирования сопровождающих стробов приведена на рисунке 3.4. Рис. 3.4 - Схема блока сопровождающих стробов 4 РАСЧЕТ ОСНОВНЫХ ПАРАМЕТРОВ И ХАРАКТЕРИСТИК 4.1 Расчет потребляемых токов Расчет потребляемых токов сводится к тому, что необходимо определить суммарное потребление тока всеми микросхемами, то есть: (4.1) где Iобщ - общий ток, потребляемый устройством, Ik - ток, потребляемый k-той микросхемой, m - общее число микросхем, n - число микросхем данного типа. Токи, потребляемые каждой микросхемой, показаны в таблице 5.1. Потребление токов микросхемами Таблица 5.1 |
№ п/п | Тип микросхемы | Количество | Ток одной микросхемы, mA | Общий ток,mA | | 1 | КР1533АП5 | 9 | 27 | 243 | | 2 | КР1533ИР37 | 8 | 24 | 192 | | 3 | КР1533ЛА2 | 1 | 5 | 5 | | 4 | КР1533ЛА3 | 2 | 3 | 6 | | 5 | КР1533ЛЕ4 | 1 | 4 | 4 | | 6 | КР1533ЛН1 | 2 | 3.8 | 7.6 | | 7 | КР1533ЛП5 | 1 | 7 | 7 | | 8 | PIC16C64 | 1 | 2 | 2 | | ВСЕГО | 466,6 | | |
Получаем общий ток потребления: Полученные данные удовлетворяют требованиям системной магистрали ISA (п.1.2). 4.2 Расчет потребляемой мощности Расчет потребляемой мощности сводится к тому, что необходимо определить мощность потребляемую устройством, то есть: (4.2) где Робщ - общая потребляемая мощность, Uпит - напряжение питания, Iобщ - общий ток потребления. 4.3 Расчет надежности Интенсивность отказов характеризуется отношением числа изделий в единицу времени к числу изделий, продолжающих оставаться исправными к началу рассматриваемого промежутка времени: (4.3) где m - число изделий, отказавших за время t, N - число исправно работающих изделий к началу промежутка времени. Если предположить, что отказы различных элементов взаимно независимы и каждый отказ носит катастрофический характер, то есть полностью нарушают работоспособность, то интенсивность отказов устройства равна сумме интенсивностей отказов элементов, составляющих устройство: (4.4) где i - интенсивность отказов элементов i-го типа, ni - количество элементов i-го типа входящего в устройство. Наработка на отказ равна: (4.5) Интенсивность отказов элементов следующая: микросхемы - 0.8510-6 (ч-1), резисторы - 0.910-6 (ч-1), конденсаторы - 1.410-6 (ч-1). Тогда, (ч-1) 5 РАЗРАБОТКА И ОТЛАДКА РАБОЧЕЙ ПРОГРАММЫ МКУ5.1 Блок - схема алгоритма и его описание Начало Опрос RESET да нет Выдать SS= "1111111" Опрос Ок! нет да Опрос IOW, IOR IOR IOW Чтение Чтение SA0…SA2 SA0…SA2 да ="111" Преобразов. нет 2поз. Чтение Преобразов. D0…D2 2поз. Выдать STRR0…6 Преобразов. Выдать 2поз. STRW0…6 Сбросить STRR0…6 Выдать Сбросить SS0…SS6 STRW0…6 да Питание вкл? нет Конец Рис. 5.1 - Схема алгоритма работы микроконтроллера5.2 Структура программыМикроконтроллер выполняет следующие функции:прием управляющих сигналов с системной магистрали ISA;преобразование двоичного кода в позиционный (для управления блоком регистров и блоком приема данных);формирование управляющих стробов.Программа содержит следующие участки программы: RESET - производит перевод всех портов устройства в исходное состояние на ввод данных; OKEY - осуществляет передачу управления подпрограммам IOW или IOR, в зависимости от состояний опрашиваемых битов; IOW - формирование и выдача сигналов STRW0…6 и SS0…6; IOR - формирование и выдача сигналов STRR0…6 и STRR7; PR2INPOS - преобразование двоичного кода в позиционный. 5.3 Распределение памяти данных Прием управляющих сигналов с ISA PORTА - 05H РORTЕ - 09H Выдача стробов STRW0…6 PORTC - 07H Выдача стробов SS0…6 PORTD - 08H Выдача стробов STRR0…7 PORTB - 06H Программирование TRISA - 85H TRISB - 86H TRISC - 87H TRISD - 88H TRISE - 89H Запрет прерываний портов INTCON-0BH Регистр для хранения SA0…2 ADR - 26H Регистр для хранения D0…2 DATA - 27H Вспомогательный регистр RADR - 28H 5.4 Текст программы LIST P=PIC16C64 ;Секция заголовка ;Описание специальных регистров PORTA EQU 05H ;Регистр порта A PORTB EQU 06H ;Регистр порта B PORTC EQU 07H ;Регистр порта C PORTD EQU 08H ;Регистр порта D PORTE EQU 09H ;Регистр порта E TRISA EQU 85H ;Регистр конфигурации порта A TRISB EQU 86H ;Регистр конфигурации порта B TRISC EQU 87H ;Регистр конфигурации порта C TRISD EQU 88H ;Регистр конфигурации порта D TRISE EQU 89H ;Регистр конфигурации порта E INTCON EQU 0BH ;Регистр управлениями ;прерываниями PCL EQU 02H ;Регистр программного счетчика ;Описание регистров памяти переменных ADR EQU 26H ;Регистр для хранение сигналов ;SA0…2 RADR EQU 27H ;Вспомогательный регистр DATA EQU 28H ;Регистр для хранения D0…2 ;Рабочая секция ;Начало исполняемого кода ORG 0 GOTO BEGIN ORG 100 BEGIN MOVLW B'00000000' ;Конфигурация портов MOVWF TRISB MOVWF TRISC MOVWF TRISD MOVLW FFH MOVWF TRISA MOVWF TRISE MOVLW B'01110000' MOVWF DATA START BTFSC PORTA, 1 ;Проверка 1-го бита порта А GOTO RESET ;Переход на метку RESET BTFSS PORTA, 0 ; Проверка 0-го бита порта А GOTO OKEY ;Переход на метку OKEY GOTO START ;Переход на метку START RESET MOVLW B'11111111' ;Запись в регистр W константы MOVWF PORTD ;Установка портов устройства в ;исходное состояние GOTO BEGIN ;Переход на метку BEGIN OKEY BTFSS PORTA, 2 ;Проверка 2-го бита порта А GOTO IOW ;Переход на метку IOW BTFSS PORTA, 3 ;Проверка 3-го бита порта А GOTO IOR ;Переход на метку IOR GOTO START ;Переход на метку START IOW MOVF PORTE ;Запись в регистр W данных ;из порта Е MOVWF ADR ;Запись в регистр ADR данных ;из W MOVF PORTA ;Запись в регистр W данных ;из порта A ANDWF DATA, 1 ;Выделение сигналов D0…2 ;и сохранение в регистре DATA RLF DATA, 1 ;Сдвиг регистра влево RLF DATA, 1 ;Сдвиг регистра влево RLF DATA, 1 ;Сдвиг регистра влево RLF DATA, 1 ;Сдвиг регистра влево MOVF ADR ;Запись в регистр W данных ;из регистра ADR MOVWF RADR ;Запись в регистр RADR данных ;из W INCF RADR, 1 ;Инкремент регистра RADR ;с сохранением данных в RADR BTFSS RADR, 3 ;Проверка 3-го бита регистра RADR GOTO STRW ;Переход на метку STRW MOVF DATA ;Запись в регистр W данных ;из регистра DATA CALL PR2INPOS ;Вызов процедуры MOVWF PORTD ;Запись в регистр PORTD данных ;из регистра W GOTO START ;Переход на метку START IOR MOVF PORTE ;Запись данных из регистра Е ; в W CALL PR2INPOS ;Вызов процедуры MOVWF PORTB ;Запись в регистр PORTB данных ;из регистра W MOVLW FFH ;Запись константы в W MOVWF PORTB ;Запись в регистр PORTB данных ;из регистра W GOTO START ;Переход на метку START STRW MOVF ADR ;Запись данных из регистра ADR ; в W CALL PR2INPOS ;Вызов процедуры MOVWF PORTC ;Запись в регистр PORTC данных ;из регистра W MOVLW FFH ;Запись константы в W MOVWF PORTB ;Запись в регистр PORTC данных ;из регистра W GOTO START ;Переход на метку START PR2INPOS ADDWF, 1 PCL ;Сложение W и PCL RETLW FEH ;Возврат и загрузка W RETLW FDH ;Возврат и загрузка W RETLW FBH ;Возврат и загрузка W RETLW F7H ;Возврат и загрузка W RETLW EFH ;Возврат и загрузка W RETLW DFH ;Возврат и загрузка W RETLW BFH ;Возврат и загрузка W RETLW 7FH ;Возврат и загрузка W END ;Конец программы ЗАКЛЮЧЕНИЕВ данном проекте был разработан универсальный адаптер параллельного обмена. Это устройство предназначено для обмена информацией между компьютером и внешними устройствами (нестандартными).Устройство реализовано на однокристальном микроконтроллере типа PIC16C64.Применение в устройстве данного однокристального микроконтроллера привело к уменьшению быстродействия, но улучшились весогабаритные параметры.Для увеличения быстродействия необходимо использовать микроконтроллер другого типа, например SX.СПИСОК ИСПОЛЬЗУЕМОЙ ЛИТЕРАТУРЫЮ.В.Новиков, О.А.Калашников "Разработка устройств сопряжения". Издательство "ЭКОМ", Москва, 1998г.В.В.Скороделов "Проектирование устройств на однокристальных микроконтроллерах с RISC-архитектурой". Ч1,Ч2, Учебное пособие.
Страницы: 1, 2, 3
|