Сегда устанавливаем частоту кварцевого резонатора равную 8МГц.
AT90S8515 подключены две кнопки, замыкающие выводы МК на общий провод: одна подключена к PD2, другая к PD3. К выводам РВ0, РВ1 подключены светодиоды. Написать программу, в соответствии с которой при нажатии первой кнопки загорается (на время удержания в нажатом состоянии) первый светодиод, при нажатии второй – второй светодиод. Программу организовать без использования прерываний.
$00 ->DDRD – настройка порта Dна ввод
$FF->DDRB – настройка порта B на вывод
1->PORTD.2 - подключение подтягивающего резистора к выводу D.2
1->PORTD.3 - подключение подтягивающего резистора к выводу D.3
AT90S8515 подключена кнопка, замыкающая вывод PD2 МК на общий провод. К выводу РВ0 подключен светодиод. Написать программу, в соответствии с которой при первом нажатии кнопки светодиод загорается, а при повторном нажатии гаснет. Программу организовать без использования прерываний.
$00 ->DDRD.3 – настройка контакта порта Dна ввод
$FF->DDRC.0 – настройка контакта порта С на вывод
1->PORTD.3 - подключение подтягивающего резистора к выводу D.3
DIR – флаг нажатия кнопки(=1 – диод зажжен и при последующем нажатии кнопки будет погашен, =0 – диод погашен)
1. К МК AT90S8515 подключена кнопка, замыкающая вывод PD2 МК на общий провод. К выводу РВ0 подключен светодиод. Написать программу, в соответствии с которой при первом нажатии/отпускании кнопки светодиод загорается, а при повторном нажатии/отпускании гаснет. Программу организовать без использования прерываний.
$00 ->DDRD.3 – настройка контакта порта Dна ввод
$FF->DDRC.0 – настройка контакта порта С на вывод
1->PORTD.3 - подключение подтягивающего резистора к выводу D.3
ro – флаг нажатия кнопки (=0 – диод погашен и при последующем нажатии/отпускании кнопки будет зажжен; 1 – диод зажжен)
AT90S8515 подключена кнопка, замыкающая вывод PD2 МК на общий провод. К выводу РВ0 подключен светодиод. Написать программу, в соответствии с которой при нажатии кнопки светодиод загорается и мигает с частотой 1 Гц (на время удержания кнопки в нажатом состоянии). Программу организовать без использования прерываний.
$00 ->DDRD – настройка порта Dна ввод
$FF->DDRC – настройка порта С на вывод
1->PORTD.3 - подключение подтягивающего резистора к выводу D.3
$FF->PortC – при включении контроллера тушим светодиоды
r1, r2, r3 – регистры-счетчики, в которые заносятся значения для формирования паузы
AT90S8515 подключена кнопка, замыкающая вывод PD2 МК на общий провод. К порту РВ подключена линейка светодиодов. Написать программу, в соответствии с которой при нажатии кнопки формируется «бегущая точка» в одном направлении, а при ее отпускании – направление меняется на противоположное. Время «горения» точки – произвольное. Программу организовать без использования прерываний.
SP – инициализация стека
$00 ->DDRD – настройка порта Dна ввод
$FF->DDRC – настройка порта С на вывод
1->PORTD.3 - подключение подтягивающего резистора к выводу D.3
r2, r3, r4 – регистры-счетчики, в которые заносятся значения для формирования паузы
r1 – регистр точки
2. К МК AT90S8515 подключена кнопка, замыкающая вывод PD2 МК на общий провод. К порту РВ подключена линейка светодиодов. Написать программу, в соответствии с которой при нажатии кнопки формируется «бегущая точка» в одном направлении, а при ее отпускании – направление меняется на противоположное. Время «горения» точки – 0.5 сек. Программу организовать без использования прерываний.
SP – инициализация стека
$00 ->DDRD – настройка порта Dна ввод
$FF->DDRC – настройка порта С на вывод
1->PORTD.3 - подключение подтягивающего резистора к выводу D.3
r2, r3, r4 – регистры-счетчики, в которые заносятся значения для формирования паузы
r1 – регистр точки
AT90S8515 подключена кнопка, замыкающая вывод PD2 МК на общий провод. К порту РВ подключена линейка светодиодов. Написать программу, в соответствии с которой при первом нажатии кнопки формируется «бегущая точка» в одном направлении, а при ее повторном нажатии – направление меняется на противоположное. Время «горения» точки – произвольное. Программу организовать без использования прерываний.
SP – инициализация стека
0 ->DDRD.3 – настройка D.3на ввод
$FF->DDRC – настройка порта С на вывод
1->PORTD.3 - подключение подтягивающего резистора к выводу D.3
NAPR – флаг направления движения точки(1 – движется влево, 0 – вправо)
KN – флаг нажатия кнопки
s1, s2, s3 – регистры-счетчики, в которые заносятся значения для формирования паузы
R0 – регистр точки
AT90S8515 подключена кнопка, замыкающая вывод PD2 МК на общий провод. К порту РВ подключена линейка светодиодов. Написать программу, в соответствии с которой при первом нажатии/отпускании кнопки формируется «бегущая точка» в одном направлении, а при ее повторном нажатии/отпускании – направление меняется на противоположное. Время «горения» точки – произвольное. Программу организовать без использования прерываний.
SP – инициализация стека
0 ->DDRD.3 – настройка D.3на ввод
$FF->DDRC – настройка порта С на вывод
1->PORTD.3 - подключение подтягивающего резистора к выводу D.3
R1 – флаг направления движения точки(1 – движется влево, 0 – вправо)
R2 – флаг нажатия кнопки
R3, R4, R5 – регистры-счетчики, в которые заносятся значения для формирования паузы
R0 – регистр точки
AT90S8515 подключена кнопка, замыкающая вывод PD2 МК на общий провод. К порту РВ подключена линейка светодиодов. Написать программу, в соответствии с которой при первом нажатии кнопки формируется «бегущая точка» в одном направлении, а при ее повторном нажатии – направление меняется на противоположное. Время «горения» точки – 0.5 сек. Программу организовать без использования прерываний.
SP – инициализация стека
0 ->DDRD.3 – настройка D.3на ввод
$FF->DDRC – настройка порта С на вывод
1->PORTD.3 - подключение подтягивающего резистора к выводу D.3
NAPR – флаг направления движения точки(1 – движется влево, 0 – вправо)
KN – флаг нажатия кнопки
s1, s2, s3 – регистры-счетчики, в которые заносятся значения для формирования паузы
R0 – регистр точки
AT90S8515 подключена кнопка, замыкающая вывод PD2 МК на общий провод. К порту РВ подключена линейка светодиодов. Написать программу, в соответствии с которой при первом нажатии/отпускании кнопки формируется «бегущая точка» в одном направлении, а при ее повторном нажатии/отпускании – направление меняется на противоположное. Время «горения» точки – 0.5 сек. Программу организовать без использования прерываний.
SP – инициализация стека
0 ->DDRD.3 – настройка D.3на ввод
$FF->DDRC – настройка порта С на вывод
1->PORTD.3 - подключение подтягивающего резистора к выводу D.3
R1 – флаг направления движения точки(1 – движется влево, 0 – вправо)
R2 – флаг нажатия кнопки
R3, R4, R5 – регистры-счетчики, в которые заносятся значения для формирования паузы
R0 – регистр точки
AT90S8515 подключены три кнопки, замыкающие выводы МК на общий провод: одна подключена к PD1, вторая – к PD2 и третья - к PD3. К выводам РВ0, РВ1, РВ3 подключены светодиоды. Написать программу, в соответствии с которой при нажатии первой кнопки загорается (на время удержания в нажатом состоянии) первый светодиод, при нажатии второй – второй светодиод, при нажатии третьей – третий светодиод. Программу организовать без использования прерываний.
$00 ->DDRD – настройка порта Dна ввод
$FF->DDRС – настройка порта С на вывод
1->PORTD.2 - подключение подтягивающего резистора к выводу D.2
1->PORTD.3 - подключение подтягивающего резистора к выводу D.3
1->PORTD.4 - подключение подтягивающего резистора к выводу D.4
AT90S8515 подключены две кнопки, замыкающие выводы МК на общий провод: одна подключена к PD2, другая к PD3. К выводам РВ0, РВ1 подключены светодиоды. Написать программу, в соответствии с которой при нажатии первой кнопки загорается (на время удержания в нажатом состоянии) первый светодиод, при нажатии второй – второй светодиод. Программу организовать с использованием прерываний.
0 ->DDRD.2 – настройка контакта порта Dна ввод
0 ->DDRD.3 – настройка контакта порта Dна ввод
1->DDRB.0– настройка контакта порта В на вывод
1->DDRB.1– настройка контакта порта В на вывод
1->PORTD.2 - подключение подтягивающего резистора к выводу D.2
1->PORTD.3 - подключение подтягивающего резистора к выводу D.3
1->I – глобальное разрешение обработки прерываний
$025F->SP – инициализация стека
К МК AT90S8515 подключена кнопка, замыкающая вывод PD2 МК на общий провод. К выводу РВ0 подключен светодиод. Написать программу, в соответствии с которой при первом нажатии кнопки светодиод загорается, а при повторном нажатии гаснет. Программу организовать с использованием прерываний.
0 ->DDRD.3 – настройка контакта порта Dна ввод
1->DDRB.0– настройка контакта порта В на вывод
1->PORTD.3 - подключение подтягивающего резистора к выводу D.3
1->I – глобальное разрешение обработки прерываний
SP – инициализация стека
AT90S8515 подключена кнопка, замыкающая вывод PD2 МК на общий провод. К выводу РВ0 подключен светодиод. Написать программу, в соответствии с которой при первом нажатии/отпускании кнопки светодиод загорается, а при повторном нажатии/отпускании гаснет. Программу организовать с использованием прерываний.
0 ->DDRD.3 – настройка контакта порта Dна ввод
1->DDRС.0– настройка контакта порта С на вывод
1->PORTD.3 - подключение подтягивающего резистора к выводу D.3
1->I – глобальное разрешение обработки прерываний
SP – инициализация стека
AT90S8515 подключена кнопка, замыкающая вывод PD2 МК на общий провод. К выводу РВ0 подключен светодиод. Написать программу, в соответствии с которой при нажатии кнопки светодиод загорается и мигает с частотой 1 Гц (на время удержания кнопки в нажатом состоянии). Программу организовать с использованием прерывания по переполнению таймера.
0 ->DDRD.3 – настройка контакта порта Dна ввод
1->DDRС.0– настройка контакта порта С на вывод
1->PORTD.3 - подключение подтягивающего резистора к выводу D.3
1->I – глобальное разрешение обработки прерываний
SP – инициализация стека
r0 – флаг состояния диода(=0 – диод зажжен , 1 – диод потушен)
AT90S8515 подключена кнопка, замыкающая вывод PD2 МК на общий провод. К порту РВ подключена линейка светодиодов. Написать программу, в соответствии с которой при нажатии кнопки формируется «бегущая точка» в одном направлении, а при ее отпускании – направление меняется на противоположное. Время «горения» точки – произвольное. Программу организовать с использованием внешнего прерывания.
0 ->DDRD.3 – настройка контакта порта Dна ввод
1->DDRС– настройка порта С на вывод
1->PORTD.3 - подключение подтягивающего резистора к выводу D.3
1->I – глобальное разрешение обработки прерываний
SP – инициализация стека
r0 – регистр точки
s1, s2, s3 – регистры-счетчики, в которые заносятся значения для формирования паузы
AT90S8515 подключена кнопка, замыкающая вывод PD2 МК на общий провод. К порту РВ подключена линейка светодиодов. Написать программу, в соответствии с которой при нажатии кнопки формируется «бегущая точка» в одном направлении, а при ее отпускании – направление меняется на противоположное. Время «горения» точки – 0.5 сек. Программу организовать с использованием прерывания по переполнению таймера.
0 ->DDRD.3 – настройка контакта порта Dна ввод
1->DDRС– настройка порта С на вывод
1->PORTD.3 - подключение подтягивающего резистора к выводу D.3
$FF->PORTC – диоды потушены сразу после включения МК
1->I – глобальное разрешение обработки прерываний
SP – инициализация стека
r0 – регистр точки
r1 – направление движения точки (1 – влево, 0 - вправо)
AT90S8515 подключена кнопка, замыкающая вывод PD2 МК на общий провод. К порту РВ подключена линейка светодиодов. Написать программу, в соответствии с которой при первом нажатии кнопки формируется «бегущая точка» в одном направлении, а при ее повторном нажатии – направление меняется на противоположное. Время «горения» точки – произвольное. Программу организовать с использованием внешнего прерывания.
0 ->DDRD.3 – настройка контакта порта Dна ввод
1->DDRС– настройка порта С на вывод
1->PORTD.3 - подключение подтягивающего резистора к выводу D.3
$FF->PORTC – диоды потушены сразу после включения МК
1->I – глобальное разрешение обработки прерываний
SP – инициализация стека
r0 – регистр точки
r1 – направление движения точки (1 – влево, 0 - вправо)
AT90S8515 подключена кнопка, замыкающая вывод PD2 МК на общий провод. К порту РВ подключена линейка светодиодов. Написать программу, в соответствии с которой при первом нажатии/отпускании кнопки формируется «бегущая точка» в одном направлении, а при ее повторном нажатии/отпускании – направление меняется на противоположное. Время «горения» точки – произвольное. Программу организовать с использованием внешнего прерывания.
0 ->DDRD.3 – настройка контакта порта Dна ввод
1->DDRС– настройка порта С на вывод
1->PORTD.3 - подключение подтягивающего резистора к выводу D.3
$FF->PORTC – диоды потушены сразу после включения МК
1->I – глобальное разрешение обработки прерываний
SP – инициализация стека
r0 – регистр точки
r1 – направление движения точки (1 – влево, 0 - вправо)
AT90S8515 подключена кнопка, замыкающая вывод PD2 МК на общий провод. К порту РВ подключена линейка светодиодов. Написать программу, в соответствии с которой при первом нажатии кнопки формируется «бегущая точка» в одном направлении, а при ее повторном нажатии – направление меняется на противоположное. Время «горения» точки – 0.5 сек. Программу организовать с использованием прерывания по переполнению таймера.
0 ->DDRD.3 – настройка контакта порта Dна ввод
1->DDRС– настройка порта С на вывод
1->PORTD.3 - подключение подтягивающего резистора к выводу D.3
$FF->PORTC – диоды потушены сразу после включения МК
1->I – глобальное разрешение обработки прерываний
SP – инициализация стека
POINT – регистр точки
DIRECT – флаг направления движения точки (1 – влево, 0 - вправо)
AT90S8515 подключена кнопка, замыкающая вывод PD2 МК на общий провод. К порту РВ подключена линейка светодиодов. Написать программу, в соответствии с которой при первом нажатии/отпускании кнопки формируется «бегущая точка» в одном направлении, а при ее повторном нажатии/отпускании – направление меняется на противоположное. Время «горения» точки – 0.5 сек. Программу организовать с использованием прерывания по переполнению таймера.
0 ->DDRD.3 – настройка контакта порта Dна ввод
1->DDRС– настройка порта С на вывод
1->PORTD.3 - подключение подтягивающего резистора к выводу D.3
$FF->PORTC – диоды потушены сразу после включения МК
1->I – глобальное разрешение обработки прерываний
SP – инициализация стека
POINT – регистр точки
DIRECT – флаг направления движения точки (1 – влево, 0 - вправо)
AT90S8515 подключены две кнопки, замыкающие выводы МК на общий провод: одна подключена к PD2, другая к PD3. К выводам РВ0, РВ1 подключены светодиоды. Написать программу, в соответствии с которой при нажатии первой кнопки загорается и мигает с произвольной частотой (на время удержания в нажатом состоянии) первый светодиод, при нажатии второй – второй светодиод. Программу организовать без использования прерываний.
$00 ->DDRD – настройка порта Dна ввод
$FF->DDRB – настройка порта B на вывод
1->PORTD.2 - подключение подтягивающего резистора к выводу D.2
1->PORTD.3 - подключение подтягивающего резистора к выводу D.3
сегда устанавливаем частоту кварцевого резонатора равную 8МГц.
БЕЗ ПРЕРЫВАНИЙ
· чтоб установить время горения точки =0,5с, нужно в регистры для формирования времени паузы занести значения 62(в спервый), 255(во второй), 255(в третий)
· чтоб установить мигание диода с частотой 1Гц, нужно в регистры для формирования времени паузы занести значения 123(в первый), 255(во второй), 255(в третий).
С ПРЕРЫВАНИЯМИ
· EXT INT - внешнее прерывание. При настройке Еxternal_1 устанавливаем флаги в полях Enable и Clear Flags напротив INT1. Если нужно, чтоб срабатывание произошло по нажатию кнопки, то в поле Sence Control выбираем faling edge , по отжатию – rising edge.
· Прерывание по переполнению таймера.
В блоке TIMSK в поле TIMER1 ставим галочку напротив надписи Overflow, для того, чтоб таймер срабатывал по переполнению.
В блоке TIMER1 настраивается время переполнения таймера. Чтоб установить время горения точки =0,5с, необходимо в поле Clock Select выбрать частоту СК/64.