Юрий Ревич - Занимательная микроэлектроника

Тут можно читать онлайн Юрий Ревич - Занимательная микроэлектроника - бесплатно ознакомительный отрывок. Жанр: sci_radio, издательство БХВ-Петербург, год 2007. Здесь Вы можете читать ознакомительный отрывок из книги онлайн без регистрации и SMS на сайте лучшей интернет библиотеки ЛибКинг или прочесть краткое содержание (суть), предисловие и аннотацию. Так же сможете купить и скачать торрент в электронном формате fb2, найти и слушать аудиокнигу на русском языке или узнать сколько частей в серии и всего страниц в публикации. Читателям доступно смотреть обложку, картинки, описание и отзывы (комментарии) о произведении.
  • Название:
    Занимательная микроэлектроника
  • Автор:
  • Жанр:
  • Издательство:
    БХВ-Петербург
  • Год:
    2007
  • Город:
    Санкт-Петербург
  • ISBN:
    978-5-9775-0080-7
  • Рейтинг:
    3/5. Голосов: 11
  • Избранное:
    Добавить в избранное
  • Отзывы:
  • Ваша оценка:
    • 60
    • 1
    • 2
    • 3
    • 4
    • 5

Юрий Ревич - Занимательная микроэлектроника краткое содержание

Занимательная микроэлектроника - описание и краткое содержание, автор Юрий Ревич, читайте бесплатно онлайн на сайте электронной библиотеки LibKing.Ru
Книга на практических примерах рассказывает о том как проектировать, отлаживать и изготавливать современные электронные устройства в домашних условиях. Теоретические основы, физические принципы работы электронных схем и различных типов радиоэлектронных компонентов иллюстрируются практическими примерами в виде законченных радиолюбительских конструкций и дополняются советами по технологии изготовления любительской аппаратуры. На доступном уровне излагаются теоретические основы цифровой техники — математическая логика и различные системы счисления. Вторая часть книги полностью посвящена программированию микроконтроллеров, как основы современной электроники. Особое внимание уделяется обмену данными микроэлектронных устройств с персональным компьютером, приводятся примеры программ на Delphi.
Для широкого круга радиолюбителей

Занимательная микроэлектроника - читать онлайн бесплатно ознакомительный отрывок

Занимательная микроэлектроника - читать книгу онлайн бесплатно (ознакомительный отрывок), автор Юрий Ревич
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

brne mm3 ;иначе на следующий

sbis PinB,0 ; если Кн2 нажата

inc ehh ;увеличиваем число единиц часов на 1

cpi ehh,4 ;если число единиц часов еще меньше 4

brio END_TIM1 ;то на выход из процедуры

cpi dhh,2 ;если число десятков часов не равно 2

brne mm21 ;то на метку mm21

clr ehh ;иначе обнуляем число единиц часов

rjmp END_TIM1 ;на выход из процедуры

mm21: cpi ehh, 10 ;если число единиц часов не равно 10

brne END_TIM1 ;то на выход

clr ehh ;иначе обнуляем число единиц часов

rjmp END_TIM1 ;на выход

mm3: sbis PinB,0 ;четвертый разряд

inc dhh ;увеличиваем число десятков часов на 1

cpi dhh,3 ;если оно еще не равно 3

brne END_TIM1 ;то на выход

clr dhh ;иначе обнуляем

rjmp END_TIM1 ;на выход

;счет времени

mtime: inc sek ;увеличиваем число секунд на 1

cpi sek,60 ;если оно не равно 60

brne END_TIM1 ;то на выход

clr sek ;иначе обнуляем секунды

inc emin ;и увеличиваем единиц минут

cpi emin,10 ;если число единиц минут не равно 10

brne END_TIM1 ;то на выход

clr emin ;иначе обнуляем единиц минут

inc dmin ;и увеличиваем число десятков минут

cpi dmin,6 ;если оно не равно 6

brne END_TIM1 ;то на выход

clr dmin ;иначе обнуляем число десятков минут

inc ehh ;и увеличиваем число единиц часов

cpi ehh,4 ;если число единиц часов не равно 4

brio END_TIM1 ;то однозначно на выход

cpi dhh,2 ;если число десятков часов при этом не равно 2

brne mhh ;то на метку mhh

clr ehh ;иначе обнуляем число единиц часов

clr dhh ;и сразу число десятков часов тоже (это полночь)

rjmp END_TIM1 ;на выход

mhh:

cpi ehh,10 ;если число единиц часов не равно 10

brne END_TIM1 ;на выход

clr ehh ;иначе обнуляем единиц часов

inc dhh ;увеличиваем число десятков часов

END_TIM1:

reti ;выход из прерывания Timer1

;==== прерывание Timer0 управление разрядами ====

TIM0:

sbrc Flag,1 ;если бит1=1 напряжения нет

rjmp END_TIM0 ;тогда сразу на выход

clr temp ;все очищаем

out PortD,temp

out РогtB,temp

andi POS,3 ;счет разрядов от 0 до 3

sbis PinB,0 ;пока нажата кнопка Кн2

clr count ;разряд при установке не мигает

cpi P0s,0 ;если счетчик разрядов не 0

brne m0 ;то на метку m0 — следующий разряд

cpi set_up,1 ;если set_up=1, мигает этот разряд

brne sm_1 ;иначе на включение разряда

sbrs count,0 ;если бит 0 в count=0

sm_1: sbi PortD,em ;то уст. PDO в 1, разряд единиц мин. светится

;иначе он останется темным, т. е. мигает с частотой count

mov temp,emin ;в temp — число единиц минут

rcall SEG_SET ;устанавливаем сегменты

rjmp END_0 ;на выход

m0: cpi POS,1 ; если счетчик разрядов не 1

brne m1 ;то на сл. разряд

cpi set_up,2 ;если set_up=2, то мигает этот разряд

brne sm_2 ;иначе на включение разряда

sbrs count,0 ;если бит 0 в count=0

sm_2: sbi PortD,dm ;то уст. PD1 в 1, разряд десятков мин. светится

mov temp,dmin ;в temp — число десятков минут

rcall SEG_SET ;устанавливаем сегменты

rjmp END_0 ;на выход

m1: cpi POS,2 ;если счетчик разрядов не 2

brne m2 ;то на сл. разряд

cpi set_up,3 ;если set_up=3, то мигает этот разряд

brne sm_3 ;иначе на включение разряда

sbrs count,0 ;если бит 0 в count=0

sm_3: sbi PortD,eh ;то уст. PD2 в 1, разряд единиц часов светится

mov temp, ehh ;в temp — число единиц часов

rcall SEG_SET ;устанавливаем сегменты

rjmp END_0 ;на выход

m2: ;обработка 4 разряда десятков часов

cpi set_up,4 ;если set_up=4, то мигает этот разряд

brne sm_4 ;иначе на включение разряда

sbrs count,0 ;если бит 0 в count=0

sm_4: sbi PortD,dh ;то уст. PD4 в 1, разряд десятков часов светится

mov temp,dhh ;в temp — число десятков часов

rcall SEG_SET ;устанавливаем сегменты

END_0:

inc POS

END_TIM0:

reti ;выход из прерывания Timer0

;===== компаратор — батарейка =====

ACOMPI:

sbis ACSR,АСО ;если бит АСО =1, то продолжим

rjmp СОМР_1 ;иначе на установку мигания ldi temp,0b11000000

ut TCCR1A,temp ;двоеточие включено постоянно

rjmp END_comp ;на выход

СОМР_1:

ldi temp,0b01000000

out TCCR1A,temp ;двоеточие мигает

END_comp:

reti ;выход из процедуры компаратора

;===== процедура Reset ====

RESET:

cli ;запрещаем прерывания на время установки

ldi temp,low(RAMEND) ;загрузка указателя стека

out SPL,temp

ldi temp,0b01110111 ;порт D разряды 0,1,2,4,5,6 на выход

out DDRD,temp

ldi temp, 0b11111100 ;порт В все на выход, кроме 0,1 (компаратор)

out DDRB,temp

;- таймеры —

ldi temp,0Ь00000010 ;запуск Timer0 входная частота 1:8

out TCCR0,temp ;управление разрядами по переполнению,

;частота около 2 кГц (4/8=0,5 МГц/256)

ldi temp,high(62 500);старший байт

out OCR1AH,temp ;вых. частота 1 Гц при вх. частоте 1:64

ldi temp,low(62500) ;младший байт out

OCR1AL,temp

ldi temp,0b01000000

out TCCR1A,temp ;включаем переключающую моду для вывода ОС1 (15)

ldi temp,0b01001011 ;запуск 1/64 timer1 с обнулением при сравнении

out TCCR1B,temp;

;- прерывания —

ldi temp,1< ;разрешаем прерывание INT1

out GIMSK,temp

ldi temp,(1<<<0CIE1A) ;разр. прерываний Tim0 и Tim1

out TIMSK,temp

ldi temp,(1< ;разр. прерывания компаратора при переключении

out ACSR,temp

sei ;разрешаем прерывания

;======= основной цикл ========

G_cycle: ;все время будем отслеживать пропадание внешнего питания

sbrs Flag,0 ;если бит0=1 идет установка

rjmp G_cycle ;если так, то ничего не делаем

sbic PinB,0 ;если напряжение есть

rcall Restore ;вызываем процедуру восстановления выходов

sbis PinB,0 ;если напряжения нет

rcall Disable ;вызываем процедуру отключения выходов

rjmp G_cycle ;зацикливаем программу

;======= конец основного цикла ========

Disable: ;процедура отключения

sbrc Flag,2 ;если бит1=1, то уже все сделали

rjmp END_dis ;выход из процедуры

cli ;запрещаем прерывания на время установок

sbr Flag,2 ;устанавливаем бит1 Flag

;обрываем внешние соединения и обнуляем все порты:

clr temp

out PortD,temp

out PortB,temp

out DDRD,temp

out DDRD,temp

sei ;разрешаем прерывания

END_dis:

ret ;конец процедуры отключения выходов

Restore: ;процедура восстановления

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать


Юрий Ревич читать все книги автора по порядку

Юрий Ревич - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки LibKing.




Занимательная микроэлектроника отзывы


Отзывы читателей о книге Занимательная микроэлектроника, автор: Юрий Ревич. Читайте комментарии и мнения людей о произведении.


Понравилась книга? Поделитесь впечатлениями - оставьте Ваш отзыв или расскажите друзьям

Напишите свой комментарий
x