на первый
заказ
Решение задач на тему: Анализ задачи. Функциональная спецификация системы. Список функций, выполняемых системой
Купить за 100 руб.Введение
Современный этап развития научно-технического прогресса характеризуется широким применением электроники и микроэлектроники во всех сферах жизни и деятельности человека. Важную роль при этом сыграло появление и быстрое совершенствование интегральных микросхем - основной элементной базы современной электроники. Интегральные микросхемы применяются в вычислительных машинах и комплексах, в электронных устройствах автоматики, цифровых измерительных приборах, аппаратуре связи и передачи данных, медицинской и бытовой аппаратуре, в приборах и оборудовании для научных исследований и т.д.Микрокомпьютер, в отличие от других компонентов, не обладает фиксированным набором функциональных характеристик. Его характеристики определяются в процессе проектирования системы с помощью программирования. Практически неограниченный диапазон программируемых функциональных возможностей микрокомпьютера придает этому компоненту особое значение.
В данном курсовом проекте необходимо разработать цифровой тахометр на базе микропроцессора 8086. Цифровой тахометр должен выполнять следующие действия:
1) Обеспечить измерение частоты вращения ротора двигателя, которая может изменятся от 100 до 5000 об/мин.;
2) Допустимая погрешность измерения в заданном диапазоне не более 2%;
3) Импульсный датчик выбрасывает 10 импульсов на каждый оборот.
4) Быстродействие системы должно быть таково, чтобы время измерения не превышало двух оборотов.
5) Измеренное число оборотов выводится на индикатор.
Эти требования должны лечь в основу проектируемого устройства.
Оглавление
- Введение- Анализ задачи
- Функциональная спецификация системы
- Список функций, выполняемых системой
- Описание интерфейса между системой и пользователем
- Предварительное проектирование системы
- Разбиение системы на модули
- Выбор соотношения между аппаратными и программными средствами
- Проектирование аппаратных средств системы
- Разработка принципиальной схемы системы
- Описание работы тахометра
- Проектирование программного обеспечения
- Разработка схемы алгоритма работы системы и программы
- Описание алгоритма работы системы и программы Заключение
- Литература
- Приложение А - Листинг управляющей программы
Список литературы
1. Абрайтис В. -Б. Б., Аверьянов Н. Н., Белоус А. И. и др. Под ред. Шахнова В. А. Микропроцессоры и микропроцессорные комплекты интегральных микросхем: справочник. В 2 т. - М.: Радио и связь, 1988.2. Богданович М. И., Грель И. Н., Прохоренко В. А., Шалимо В. В. Цифровые интегральные микросхемы: справочник. - Мн.: Беларусь, 1991.
3. Каган Б. М., Сташин В. В. Основы проектирования микропроцессорных устройств автоматики. - М.: Энергоатомиздат, 1987.
4. Тарабрин Б. В., Лунин Л. Ф., Смирнов Ю. Н и др. Под ред. Тарабрина Б. В. Интегральные микросхемы: справочник. - М.: Радио и связь, 1984.
5. Фридмен М., Ивенс Л. Проектирование систем с микрокомпьютерами: пер. с англ. - М.: Мир, 1986.
Приложение А
Листинг управляющей программы
;******Стандартная шапка******************
list р=16f84, f=inhx8m; *
;-------буфер индикатора-----------
INR EQU Н'0С' ; номер текущего разряда
IKANB EQU Н'0D' ; косвен. адрес начала буфера
IR0 EQU Н'0D' ; разряд 0
IR1 EQU Н'0Е' ; разряд 1
IR2 EQU Н'0F' ; разряд 2
IR3 EQU Н'10' ; разряд 3
;--------таймер---------------------------------
TIM0 EQU Н'11' ; младший байт
TIM1 EQU Н'12' ; старший байт
TIMF EQU Н'00' ; флаг переполнения таймера
;-счетчик входных импульсов - работа по прерыванию---
OB0 EQU Н'13' ;
OB1 EQU Н'14' ;
DOB EQU Н'15' ; приращение счетчика импусов
;----------------подпрограммы------------------------
;-перекодировка двоично-десятичного числа
; в семисегментный код
; перед вызовом программы в W загрузить преобразуемое число
; результат после выполнения программы - в W
retlw Н'7F' ; 0
retlw Н'0D' ; 1
retlw Н'В7' ; 2
retlw Н'9F' ; 3
retlw Н'СD' ; 4
retlw Н'DВ' ; 5
retlw Н'FВ' ; 6
retlw Н'0F' ; 7
retlw Н'FF' ; 8
retlw Н'DF' ; 9
retlw Н'01' ; пусто
;-сканирование разряда индикатора
; перед вызовом программы в W загрузить текущий номер раз-да
; результат после выполнения программы - в W
retlw Н'0Е' ; 0
retlw Н'0D' ; 1
retlw Н'0В' ; 2
retlw Н'07' ; 3
;-обслуживание индикатора------
; коррекция TMR0
; при обращении преобразует число текущего разряда
; в семисегментный код, и производит его подсветку
; затем производит смещение указателя
; текущего разряда на 1 в пределах 0...3
movwf TMR0 ; коррекция TMR0
bcf STATUS,RP0 ; банк 0
movlw 0xFF ; погасить индикатор
addwf INR,0 ; вычисление косвенного адреса разряда
movf INDF,0 ; код числа разряда - в W
movwf PORTB ; семисегментный код - на индикатор
movwf PORTA ; подсветка разряда
btfsc INR,Н'02' ;
;-производит счет входных импульсов + нормировку для
; обеспечения показаний в оборотах/мин.
; счет ведется в двоично-десятичном коде
; обнуление счетчика при включении и по таймеру после
; считывания результата
bcf STATUS,RP0 ; банк 0
; задание приращения счетчика импульсов
movlw 0x1 ; *!!! в десятичном виде !!!!!!
addwf OB0,1 ; добавить младшую тетраду приращения
btfss STATUS,DС ;
addwf OB0,1 ; коррекция при переносе из 3 в 4
Metka2 movlw 0x06 ; проверка и коррекция
addwf OB0,0 ; недопустимой комбинации
btfss STATUS,DС ; первой тетрады
goto Metka4 ; выход в конец процедуры !!!!!!!
Metka3 ;проверка и коррекция недопустимой комбинации II тетр.
btfss STATUS,С ;
; проверка и коррекция I тетрады II байта
btfss STATUS,DС
; проверка II тетрады
btfss STATUS,С
Metka4 ; Добавить старшую тетраду приращения
btfss STATUS,С
btfss STATUS,С
btfss STATUS,DС
btfss STATUS,С
bcf INTCON,INTF ; сброс флага прерывания
; вызывает программу Indic
;-увеличивает содержимое таймера на 1
; следит за реальным временем:
; и вызывает программу Result
bcf STATUS,RP0 ; банк 0
bcf INTCON,T0IF ; сброс флага прерывания
;-снимает показания счетчика оборотов,
; записывает результат в буфер индикации
bcf STATUS,RP0 ; банк 0
movlw Н'0F'
movlw Н'0F'
; гасит незначащие нули на индикаторе
; обнуляет счетчик оборотов и таймер 1 секунда
;-начало подпрограммы обработки прерываний-----
;-прерывания возможны от таймера и от входа INT0
;-задача - определить причину прерывания и вызвать
;-соответствующую подпрограмму - Taim или Sum
или зарегистрироваться
в сервисе
удобным
способом
вы получите ссылку
на скачивание
к нам за прошлый год