Микропроцессорные средства и системы / Ответ на билет по Микроконтроллеру
.docxБИЛЕТ №8
1. Этапы обработки прерывания в МК.
Возникновение прерывания
Сброс флага I регситра SREG
Сохранение PC в стеке
Загрузка в PС адреса вектора
Передача управления ФОП
Выполнение ФОП
Выгрузка в PС адреса из стека
Установка флага I регситра SREG
Передача управления ПП
Возврат из прерывания
2. Семисегментный индикатор. Особенности управления.
Устройство отображения цифровой информации. Это — наиболее простая реализация индикатора, который может отображать арабские цифры.
Любой семисегментный индикатор обязательно состоит из семи сегментов. Каждый сегмент – это обычный отдельный светодиод.
Для того чтобы засветить один из светодиодов семисегментного индикатора с общим анодом следует на общий вывод (анод) подать «+», а на соответствующий отдельный вывод – «-» источника питания.
ЗАДАЧА
Код программы
#define F_CPU 8000000L
#include <avr/io.h>
#include <util/delay.h>
#include <avr/io.h>
int main(void)
{
DDRB=0xFF;
DDRC=0xFF;
PORTC=0b00000001;
{
if(!(PINB&0b00000001)) {
PORTB=0b00001000;
_delay_ms(100);
PORTB=0b00000001;
_delay_ms(100);
PORTB=0b00000100;
_delay_ms(100);
PORTB=0b00000010;
_delay_ms(100);
PORTB=0b00010000;
_delay_ms(100);
PORTB=0b00001000;
_delay_ms(100);
PORTB=0b00100000;
_delay_ms(100);
PORTB=0b10000000;
_delay_ms(100);
}
}
}
Результат: