Заманауи микроконтроллер


№ 4 жұмыс. AVR микробақылаушы таймер-есептеуішін үйрену



Pdf көрінісі
бет33/64
Дата31.12.2021
өлшемі3,85 Mb.
#21593
1   ...   29   30   31   32   33   34   35   36   ...   64
№ 4 жұмыс. AVR микробақылаушы таймер-есептеуішін үйрену 
 
Жұмыстың мақсаты: 
Программалаудың 
дағдылау 
практикасын 
алу, 
Atmega 
8535 
микробақылаушы таймер/ есептеу ішінің міндеттерін үйрену. 
Жұмысты анықтау: 
1. 
Барлық мағлұмат 
ATmega8535  микробақылаушылары  үш  таймер-есептеуішін  иемденеді. 
Олардың екеуі ТО және Т2 сегізразрядты, ал Т1 – 16-разрядты.  
ТО және Т1 таймері барлық 10-разрядты алдын-ала бөлушіні қолданады. 
Олар  уақыт  аралығын  құру  қондырғысы  ретінде  қолданылуы 
мүмкін(таймерлер)  немесе  РВО  (ТО)  және  РВ1  (Т1)  сәйкес  сыртқы 
қорытындының  жағдайы  бойынша  қосылатын  сыртқы  оқиғалардың  есептегіші 
ретінде қолданылуы мүмкін. 
Т2  таймері  өзінің  10-разрядты  алдын-ала  бөлушісін  иемденеді.Бұдан  өзге, 
РС6 (T0SC1) қорытындысы дабылыментәсілденуі мүмкін, бұл сағат ретінде нақты 
уақытты қолдануға мүмкіндік береді. Олай болса, 32768 Гц жиілігімен кварцтық 
резонаторы РС6 (T0SC1) және РС7 (T0SC2) қорытындылары аралығында бірігеді. 
 
Барлық  таймерлер  кең-импульсивті  (ШИМ)  модуляция  тәртібін  жүзеге 
асырады. 
ATmega8535 микробақылаушыларынбасқару үшін таймерді тоқтатуды және 
TIMSK таймер/есептегішімен арнайы регистрлі маскасын тоқтатады. 
 
Кесте 1.  
TIMSK таймерін тоқтатуға арналған регистр маскасы 
 
Бит 








$39($59) 
OCIE2  TOIE2  TICIE1  OCIE1A OCIE1B  TOIE1  OCIE2  TOIE0 
Оқулық/Жазу 
R/W 
R/W 
R/W 
R/W 
R/W 
R/W 
R/W 
R/W 
Бастапқы мәні 








 
Бит 7 - OCIE2: Т2 таймерімен түйісу арқылы үзілуіне рұқсат ету. 
OСIE2 қондыру биті жанындағы және қондыру биті I регистрлі мәртебеге Т2 
түйсіуімен  үзілуіне  рұқсат  ету  мазмұны  регистрін  Т2-нің  салыстыруы  мен 
жағдайын  қарау.Орындалу  ($003  векторымен)  үзілісіне  сәйкес,  егертаймер 
/есептеуші2 жағдайы мен салыстыруы регистр мазмұнын салыстыру жанындағы 
түйісуі болады. Бит 6 - TOIE2: Т2 асыра толтыруымен рұқсатын үзу. Т2 түйісу 
жалауы орнатыла TIFROCF2 регистр жалауы үзіледі.  
TOIE2 қондыру биті жанындағы және қондыру биті I регистрлі мәртебеге Т2 
асыра толтыруымен  үзілуіне рұқсат ету.  Орындалу ($004 векторымен) үзілісіне 
сәйкес,  егер  таймері/  есептеуіші  2  асыра  толтыруы  болады.  TIFR  регистр 
жалауында Т2 асыра толтыру TOV2 жалауы орнатылады. 
Бит 5 - TICIE1: Т1 таймерін қармау арқылы үзілуіне рұқсат ету. 
T1CIE1қондыру биті жанындағы және қондыру биті I регистрлі мәртебеге Т1 
қармауымен үзуін рұқсат ету. Орындалу ($005 векторымен) үзілісіне сәйкес, егер 


63 
 
PD6 (ICP) қорытындысымен қармау жіберілуі болады.TIFR регистр жалауында Т2 
асыра толтыру ICF1 жалауы орнатылады. 
Бит 4-OCIE1A: Разрешение прерывания по совпадению регистра А таймера Т1 
OСIE2  қондыру  биті  жанындағы  және  қондыру  биті  I  регистрлі  мәртебеге 
таймері  /есептеуіші1  жағдайында  А  регистрініңтүйісуімен  үзу  рұқсат  етіледі. 
Орындалу ($006 векторымен) үзілуіне сәйкес, егер А регистрінің түйісу мазмұны 
таймері/есептеуші1-дің  жағдайымен  шығу  сәйкестігі  болса.  TIFR  регистр 
жалауында Т1 асыра толтыру ОCFIА жалауы орнатылады. 
Бит 3 - OCIE1B: Т1 таймерімен В регистрінің түйісу арқылы үзілуіне рұқсат 
ету. 
Q
СIE1В қондыру биті жанындағы және қондыру биті I регистрлі мәртебеге В 
регистрінің  түйсіуімен  үзілуіне  рұқсат  етутаймері/есептеуші1жағдайын 
қарау.Орындалу  ($007  векторымен)  үзілісіне  сәйкес,  егер  В  регистрінің  түйісу 
мазмұны таймері/есептеуші1-дің жағдайымен шығу сәйкестігі болса. TIFRрегистр 
жалауында  В  регистрінің  Т1  таймерімен  түйісуі  асыра  толтыру  ОCFIВ  жалауы 
орнатылады. 
Бит 2 - TOIE1: Т1 таймерін асыра толтыру арқылы үзілуіне рұқсат ету. 
ТОIE1  қондыру  биті  жанындағы  және  қондыру  биті  I  регистрлі  мәртебеге 
таймері /есептеуіші1 жағдайында А регистрінің асыра толтыруымен үзілуі рұқсат 
етіледі.  Орындалу  ($008  векторымен)  үзілуіне  сәйкес,  егер  таймері/есептеуші1 
асыра толтыруы болса. TIFR регистр жалауында Т1 таймері асыра толтыруында 
TOV1 
жалауы орнатылады. 
Бит 1 - OCIE0: Т0 таймерін түйісу арқылы үзілуіне рұқсат ету. 
OСIE0 қондыру биті жанындағы және қондыру биті I регистрлі мәртебеге ТО 
жағдайымен  салыстыруы  регистрдің  мазмұнымен  түйісуімен  үзілуі  рұқсат 
етіледі.Орындалу  ($013  векторымен)  үзілуіне  сәйкес,  егер  регистрінің  түйісу 
мазмұны  таймер2  жағдайымен  салыстыруы  регистрдің  мазмұны  салыстырудың 
жанындағытүйісуі  болса.  В  регистр  жалауының  үзілуі  Т0  түйісуі 
кезіндеTIFROCF0жалауы орнатылады. 
Бит 0 - TOIE0: Т0 таймерін асыра толтыру арқылы үзілуіне рұқсат ету. 
TOIE0 
қондыру  биті  жанындағы  және  қондыру  биті  I  регистрлі  мәртебеге 
таймер/есептеуші0  асыра  толтыру  үзілуі  рұқсат  етіледі.Орындалу  ($009 
векторымен)  үзілуіне  сәйкес,  егер  таймер/есептеуші0  асыра  толтыруы  болса.  В 
регистр жалауының үзілуі Т0 асыра толтыруы кезінде TIFRжалауы орнатылады. 
 
Кесте 2  
TIFR 
таймер/есептеушісімен регистр жалауының үзілуі 
 
Бит 








$38 ($58) 
OCF2  TOV2  ICF1 
OCF1A  OCF1B  TOV1  OCF0  TOV0 
Оқылым/Жазу 
R/W 
R/W 
R/W 
R/W 
RAV 
R/W 
R/W 
R/W 
Бастапқы мәні 








 
Бұл  жалаулар  Т0...Т2  таймерлерінде  үзілуге  сәйкес  пайда  болу  маңында 
орнатылуда(TIMSK  таймері  үзілу  маскасы  регистрға  толық  сәйкес).  Үзілу 
векторына сәйкес өңдеу жанындаға жалаулар аппаратында тазаланады. 1 қонымды 
жалауға бит жазуының тазалануы мүмкін. 


64 
 
Назар  салыңыз,  таймер/есептеуші  жалау  бағдарламасын  орнатып,  “1”  оған 
жазу, мүмкін емес! 
2. 
Сегізразрядты таймер Т0. 
 
Кесте 3  
TCCR0 – 
Т2 таймер регистрін басқару 
 
Бит 








$25($45) 
FOC 0 
WGM 
10 
СОМ11 
СОМ 
10 
WGM 
11 
CS 12  CS11  CS10 
Оқылым/Жазу 

R/W 
R/W 
R/W 
R/W 
R/W 
R/W 
R/W 
Бастапқы мәні 








 
Бит 7 –FOC0 

мазмұн  Т0таймерін  ОС0  шығу  кезінде  осы  бит  орнатылады  (ШИМ 
режиміненбасқа, мазмұны қай жерде екендігі саналмайды). 
Биты 6, 3 - WGM10, WGM11: - Т0 таймерінің жұмыс тәртібі 
WGM10 
битінің  жағдайы  жұмыс  тәртібінде  анықталады,  WGM11 
және4.5.4. кестесінде көрсетілген. 
 
Кесте 4  
ШИМ жұмыс тәртібін анықтау 
 
Тәртіпнөмірі 
Бит 
WGM11 
Бит 
WGM10 
Жұмыстәртібі 



Қалыпты 



ШИМ фазалы 



түісу жанында түсіру (ТЖТ) 



жылдам  ШИМ 
 
Биты 5,4- СОМ11, СОМ 10: - ТО таймер регистрінің салыстырылуы және 
есептеуші  регистрдің  мазмұнын  салыстыру  жанындағы  қорытынды  шығуға 
басқарушы  битке  СОМ  11  және  СОМ  10  орнатылады.Сондықтан  бұл  балама 
міндет қорытынды портқа I/O, 1-ші жағдайға сәйкес бит қорытынды жөнелтуге 
орнатылуы керек. 

кестеде көрсетілгендей конфигурация басқарушы 
 
Кесте 5.  
Тәртіп теңеуін талдау 
 
СОМ11  СОМ10 
Сипаттамасы 


ОС0 қорытынды шығудан таймер ажыратылған 


Қарама-қайшылыққа ОС0 жағдайын өзгерту 


ОС0 шығу жолын тазалау (0 жағдайына байланысты 
орнату) 


ОС0 шығу жолына орнату (1 жағдайына байланысты 
орнату) 
 


65 
 
Назар аударыңыз: ШИМ міндет тәртібінде бұл биттер ажыратылады, 
Биттер  2,1,0  -  CS12, CS11, CS10: -  жиіліктің  алдын-ала  бөлуші  биттер 
коэффициентін таңдау 
 
Кесте 4.5. 
6 – 
Т0 таймер алдын-ала бөлушінің коэффициенттің жіктеуін таңдау 
 
CS02 
CS01 
CS00 
Сипаттама 



ТО таймерітоқтатылған 



СК0 



СК/8 



СК/64 



СК/256 



СК/1024 



Сыртқықорытынды Т0.теріс фронт 



СыртқықорытындыТ0, дұрыс фронт 
 
Егер  Т0  таймері  есептеуіш  ретінде  қолданса,  онда  қорытынды  Т0  кіру 
ретінде конфигурацияланады. 
 
Кесте 6  
TCNT0 – 
Т0 таймері есептік регистрі 
 
Бит 








$32 ($52) 
MSB 
 
 
 
 
 
 
LSB 
Оқылым/Жазу 
R/W 
R/W 
R/W 
R/W 
R/W 
R/W 
R/W 
R/W 
Бастапқы мәні 








 
Timer Т0 оқылым/жазу мүмкіндігінше есептеуіш ретінде іске асырылған. 
Егер  тактикалық  сигнал  деректеме  таңдалған  және  Timer/Counter0  бірнеше 
мағынасы  жазылған,  онда  ол  есептеуіш    әдеп  жиілігімен  есеп  мағынасы 
жазылған.  
16 
разрядты Т1таймері 
16-
разрядты Т1 таймері TCCR1AжәнеTCCR1B екі регистрімен басқарылады. 
 
Кесте 7  
TCCR1A – 
Т1 таймер регистрін басқару 
 
Бит 








$2F ($4F) 
COM1A1 COM1A0 COM1B1 COM1B0 FOC1A FOC1B WGM11 WGM10 
Оқылым/Жазу  R/W 
R/W 
R/W 
R/W 


R/W 
R/W 
Бастапқы 
мәні 








 
Биты 7,6 - СОМ1А1, СОМ1А0: - А шығу тәртібімен салыстыру, 1 және 0 
биттер 


66 
 
СОМ1А1  и  СОМ  1  А0  басқару  биттері  А  шығу  сигналының  мінезін 
анықтайды,  келесі  Т1  таймері  түйісуі  кезінде.  А  шығу  сигналы 
ОС1Ақорытындысына түседі. Сондықтан бұл балама міндет портында, онда сәйкес 
бит басқару бағыттаушысы 1-шіге орнатылуы тиіс(шығуға арналған жұмыс).  
Биты 5,4 - СОМ1В1, СОМ1В0: - Вшығу тәртібімен салыстыру, 1 және 0         
СОМ1В1  және  СОМ  1  В0  басқару  биттері  В  шығу  сигналының  мінезін 
анықтайды,  келесі  Т1  таймері  түйісуі  кезінде.  Шығу  сигналы  ОС1В 
қорытындысына түседі. Сондықтан бұл балама міндет портында, онда сәйкес бит 
басқару бағыттаушысы 1-шіге орнатылуы тиіс(шығуға арналған жұмыс).  
ШИМ міндет тәртібінде бұл биттер ажыратылады 
СОМ1Х1/СОМ1ХО  биттерін  өзгерту  маңында  бұл  үзілуді  шығу 
салыстыруында TIMSK регистрін үзуін рұқсат етуі биттерді тазалауда тыйм салуы 
тиіс. Жағымсыз кездейсоқ жағдайда биттерді өзгерту маңында үзілу жағдайы орын 
алуы мүмкін 
 
Кесте 8.  
Тәртіп теңеуін талдау 
 
СОМ1Х1  СОМ1Х0  Сипаттама 


ОС1Х шығу қорытындысында Т1 таймері өшірілген 


ОС IX сызық шығуын ауыстырып қосу 


ОС1Х сызық шығуын тазалау (төмендеңгей) 


ОС1Х сызық шығуын орнату (жоғарыдеңгей) 
 
Ескерту: X = А немесе В 
Битттер3.  2 - FOC1A, FOC1B 
1-
шіге дерек биттер  микробақылаушыда орнатылады және шығуға сәйкес 
1А және 1В. 
Битттер 1.. 0 - WGM11, WGM10: - ШИМ тәртіп таңдауында биттер 
Дерек  биттер  ШИМ  тәртібін  орнатуда  анықталады,  бұл  5-ші  кестеде 
көрсетілген 
 
Кесте 9.  
ШИМ тәртібін таңдау 
 
Режим WGM13 WGM12 WGM11 WGM10 
Ескерту 





Қалыпты 





фазалыШИМ, 8 разрядты 





фазалы ШИМ, 9 разрядты 





фазалы ШИМ, 10 разрядты 





Түйісу жағдайында түсіру, ТЖТ 





жылдам ШИМ, 8 разрядты 





жылдамШИМ, 9 разрядты 





жылдам ШИМ, 10 разрядты 





ШИМ, фазалыжәне жиіліктік 
коррекция, ICR1 


67 
 
 





ШИМ, фазалыжәне жиіліктік 
коррекция, OCR1A 
10 




ШИМ, фазалы коррекция, ICR1 
11 




ШИМ, фазалы коррекция, OCR1A 
12 




Түйісу жағдайында түсіру, ТЖТ, ICR1 
13 




Резервталады 
14 




жылдам ШИМ, ICR1 
15 




жылдам ШИМ, OCR1A 
 
Кесте 10  
TCCR1B – 
Т1 таймері В регистрін басқару 
 
Бит 








$2Е ($4Е) 
ICNC1 ICES1  — 
WGM13 WGM12 CS12  CS11  CS10 
Оқылым/Жазу 
R/W 
R/W 

R/W 
R/W 
R/W 
R/W 
R/W 
Бастапқы мәні 








 
Бит 7 - ICNC1: - басып кіру кезінде шуылды басу тәртібін орнату 
Түсірілген жағдайда 0 битінде ICNC1 міндет шуылын басу кіру тиггерінде 
басып  алу  тыйым  салынады.  Басып  кіру  біріншіге  яғни  үдемелі/құламалы 
фронтқа  ауыстырылады,  ICP  басып  кіруі  қорытындыға  түсіріледі.  1-ші  битте 
ICNC1  орнатылған  жағдайда  төрт  тізбектелген  ICP  қорытынды  жауап  алу 
жағдайы  орындалады  және  барлық  төрт  таңдаулар  да  бірдей  болуы  қажет 
(жоғары/төмен), ICES1 анықталған биттен. XTAL жиілігі жауап алу жиілігіне 
сәйкестілік. 
Бит 6 - ICES1: - басып кіру нәтижесінде ұту фронтын таңдау 
Түсірілген жағдайда 0 битінде ICES1  Т1 таймерінің мазмұны, ICP басып 
кіру  нәтижесінде  фронттың  құлауында,  ICR1  басып  кіруі  регистрға 
ауыстырылады. ICP басып кіру нәтижесінде фронттың үдемелі маңында ICR1 
басып  кіруі  Т1  таймеріне  ауыстырылып  оның  маңызы  ICES1  1-ші  битке 
орнатылады. 
Биты 5 - резервтелуде 
Биты 4, 3 - WGM13, WGM12 - жұмыс таймерінің тәртібі 
Т1  таймеріжұмыс  тәртібі  TCCR1A  регистрінен  WGM11  жәнеWGM10 
биттерімен бірге дерек биттер ажыратылады 
Биты 2,1,0 - CS12, CS11, CS10: - тактілік жиіліктің негізін таңдау тактілік 
сигналдың  негізін  таңдауда  дәлел  биттерді  шығару  орнатылу  жағдайда 
(11
кестеде) 
 
Кесте 11  
Т1 таймері тактілік сигналын таңдау 
 
CS12  CS11  CS10 
Сипаттама 



Уақытer) Т1 тоқтатылды 



СК 



СК/8 


68 
 



СК / 64 



СК / 256 



СК / 1024 



Сыртқы тактілік сигнал Т1 қорытындысы, үдемелі фронт 



Сыртқы  тактілік  сигнал  Т1  қорытындысы,  құламалы 
фронт 
 
СК  жиілік  тактілік  генераторында  бөлінуі  коэффициентке  сәйкестілік 
тәртіпке  байланысты  шамамен  бөлінеді.  Бағытын  басқару  регистрде  орнатуға 
сәйкестілік  қолдану  маңында  ішкі  тактілік  орындалуы  қажет  (кіру  тәртібі 
нәтижеге тазалауды әкеліп соғады).  
Т1 таймері 16-разрядты TCNT1 есепке іске асырылады 
 
Кесте 12  
Tl- 
TCNT1Hи TCNT1L таймерінің есептеуші регистрі 
 
Бит 
15 
14 
13 
12 
11 
10 


 
$2D ($4D) 
MSB   
 
 
 
 
 
 
TCNT1H 
$2С ($4С) 
 
 
 
 
 
 
 
LSB 
TCNT1L 
 








 
Оқылым/Жазу  R/W  R/W  R/W  R/W  R/W  R/W  R/W  R/W   
 
R/W  R/W  R/W  R/W  R/W  R/W  R/W  R/W   
Бастапқы мәні  0 







 
 








 
 
16-
разрядты регистр  алдыңғы мазмұнды  16-разрядты Т1 таймерін ұстайды. 
Процессордың жазылуы және үкені, және кіші байты бұл регистрдің біруақытта, 
үндеуін іске асыру арқылы 8-разрядты регистрді уақытша қорғауы (ТЕМР). Бұл 
регистр OCR1A, OCR1B және 1CR1 үндеулері кезінде қолданылады. Егер басты 
бағдарлама  және  бағдарлама  астындағы  жөндеу  узілулері  ТЕМР  регистріне 
үндеуін қолданып, онда үзілу басты бағдарламадан уақытша алыстатылуы қажет. 
Tl- TCNT1 
таймеріне жазу: 
Процессор  жазуын  үлкен  байтқа  (TCNT1H)  жазылған  мәліметін  ТЕМР 
регистрына араластырады. Одан кейін, CPU жазуынкіші байтқа (TCNT1L) жазып 
кіші байттың мәліметтері ТЕМР регистр байтымен бірігіп және барлық 16 битті 
бірдей  таймер/есептеуіші  TCNT1  регистрына  жазылады.  Демек,  16-разрядты 
кезінде операцияны үлкен байтқа (TCNT1H)  үндеуге бірінші болуы керек. 
Tl- TCNT1 
таймер оқылымы: 
Процессор  қашан  кіші  байтты  (TCNT1L)  санаса,  онда  TCNT1L  мазмұнын 
тікелей  көрсетсе,  үлкен  байт  мазмұны  (TCNT1H)  ТЕМР  регистрінде 
араластырылып  және  санау  кезінде  үлкен  байтты  (TCNT1H)  ТЕМР  регистрі 
арқылы процессор мазмұнын қабылдайды. Демек, 16-разрядты операцияны кіші 
байтқа (TCNT1L) үндеуге бірінші болуы керек.  
 


69 
 
Т1 таймері есептеуіш ретінде қолданылып өсу немесе реверсивті есептеуішке 
(ШИМ тәртібінде) және оқылым/жазуға да мүмкіндік береді. Егер Т1 таймеріне 
кейбір  мазмұндар  апарылып  және  тактілік  сигналдан  дерек  алынып,  онда  ол 
біреуден кйінгі тактілік циклды орнатудан соң онда мазмұны жазылған. 
 
Кесте 13  
Tl- 
OCR1AH жәнеOCR1AL таймері А регистр шығуымен салыстырылады 
 
Бит 
15 
14 
13 
12 
11 
10 


 
$2В ($4В) 
MSB   
 
 
 
 
 
 
OCR 1 
AH 
$2А ($4А) 
 
 
 
 
 
 
 
LSB 
OCR1AL 
 








 
Оқылым/Жазу R/W  R/W  R/W  R/W  R/W  R/W  R/W  R/W   
 
R/W  R/W  R/W  R/W  R/W  R/W  R/W  R/W   
Бастапқы мәні  0 







 
 








 
 
Кесте 14  
OCR1BH 
және OCR1BL–Т1 таймері В регистрінің шығуын салыстыру 
 
Бит 
15 
14 
13 
12 
11 
10 


 
$29 ($49) 
MSB   
 
 
 
 
 
 
OCR1BH 
$28 ($48) 
 
 
 
 
 
 
 
LSB 
OCR1BL 
 








 
Оқылым/Жазу R/W  R/W  R/W  R/W  R/W  R/W  R/W  R/W   
 
R/W  R/W  R/W  R/W  R/W  R/W  R/W  R/W   
Бастапқы мәні  0 







 
 








 
 
16-
разрядты регистр оқылым және жазу шығу салыстырымын қамтамасыз 
етеді.  Регистрлер  Т1  таймерінің  шығу  салыстырымын  мәліметін  сақтап, 
күнделікті  Т1  таймер  жағдайымен  салысьырып  отырады.  Амал,  салыстыру 
кезінде жіберілуді түйістіріп, Т1 таймер жағдайымен және регистрді басқарушы 
мазмұнмен  ажыратылады.  Салыстыру  кезінде  түйісуі  болуы  мүмкін,  егер  Т1 
таймері OCR мазмұны мағынасына дейін саналады. Егер TCNT1 және OCR1A 
немесе  OCR1B  бағдарламасына  бірдей  мағына  жазылуы  керек,  онда  түйісу 
салыстыру кезінде қалыптасу болмайды. 
Түйісу  салыстыру  кезінде  процессор  тактілік  циклге  түйісуінде  жалау 
орнатылып,  келесісінде  түйісу  өз  өзімен  болады.  PD5  және  PD4  жазу 
орнатылып ОС1А және ОС1В мағынасы сәйкестендіріледі. 
Одан басқа, ТЕМР регистрі TCNT1 және ICR1 үндеу кезінде қолданылады. 
Егер  басты  бағдарлама  және  бағдарлама  астындағы  үзілу  өңделуі,  ТЕМР 
регистріне үндеу арқылы қолданып, онда үзілу басты бағдарламадан уақытша 
үндеуін тоқтатады. 


70 
 
Кесте 15  
Tl- 
ICR1H жәнеICR1L таймерідің кіруін регистр басып алуы 
 
Бит 
15 
14 
13 
12 
11 
10 


 
$27 ($47) 
MSB 
 
 
 
 
 
 
 
ICR1H 
$26 ($46) 
 
 
 
 
 
 
 
LSB 
ICR1L 
 








 
Оқылым/Жазу R 







 
 








 
Бастапқы мәні 0 







 
 








 
 
16-
разрядты  регистр  кіру  қармауын  тек  оқылым  мазмұны  қамтамасыз 
етеді.  Айқындау  кезінде  ICP  кіруін  қорытынды  кезнде  қармап  үдемелі  және 
құламалы фронт сигналында Т1 таймерінің бұрынғы жағдайын ICR1 регистріне 
жібереді. Бір мезгілде ICF1 кіруін қармау жалауын 1 жағдайында орнатады. 
Регистр қаншалықты кіруі қармалса 16-разрядты болады, онда ұстау үшін 
бір  мезгілде  оқылымның  үлкен  және  кіші  байттары  ICR1  регистр  мәліметін 
ТЕМР  уақытша  сақтау  регистрімен  қолданылады.  Саналым  кезінде  кіші 
байттың  мәліметі  ICR1L  мазмұны  процессорге  жіберіліп,  ал  үлкен  байттың 
мазмұны  ICR1  ТЕМР  регистрінде  араластырылады.  Үлкен  байттың  оқылымы 
ішінде болып CPU тасымалдауда мазмұны ТЕМР уақытша сақтау регистрімен. 
Демек, 16-разрядты регистрды оқу кезінде операцияны негізі кіші байт ICR1L-
ден бастау керек. 
ТЕМР регистрі TCNT1, OCR1A жәнеOCR1B үндеуі кезінде қолданылады. 
Егер  басты  бағдарлама  және  бағдарлама  астындағы  айналым  үзілуінде  ТЕМР 
регистрі  арқылы  қолданылып,  онда  үзілу  басты  бағдарламадан  уақытша  бас 
тартады. 
Т1 таймердің жұмысы ШИМ - тәртібінде 
ШИМ  тәртібінде  Т1  таймері  А  және  В  регистрларының  шығу 
салыстырылымын орнатылу кезінде (OCR1A және OCR1B), екі еселенген 8, 9 
немесе  10-разрядты  бейнелеп  ШИМ  автономды  генераторын  дұрысталған 
кезектесу  фазасын,  өтірік  лақтыруларды  және  PD5  (ОС1А)  және  PD4(ОС1В) 
қорытынды шығуын жоқтайды. Т1 таймері реверсивті есептеуішті қалай жұмыс 
жасайтыны, және $0000-ден ТОР-ға дейін санайтынын (4.5.17 см. кестесінде), 
есептің  қайда  баратыны  аусып  және  есептен  нөлге  дейін  апарып,  одан  кейін 
цикл қайталанады. Есептеуіштің жағдайы 10 кіші битті OCR1А немесеOCR1B 
түйісуі  келсе,  және  PD5(0C1A)/PD4(0C1B)  қорытындысы  орнатылып  немесе 
өшіріліп, оған сәйкес СОМ1А1/СОМ1А0 немесе СОМ1В1/СОМ1В0 биттерінің 
регистрінде орнатылуы TCCR1А таймерін басқару ( 4.5.18 см. кестесінде) 
 


71 
 
Кесте 16  
ШИМ жиілігі мен таймерінің барын 
 
Разрешение ШИМ 
Таймердің барынша 
мазмұны 
ШИМ жиілігі 
8-
разрядты 
$00FF (255) 

ТС1 / 510 
9-
разрядты 
$01FF (511) 
fTCl/1022 
10-
разрядты 
$03FF (1023) 
fTC1 /2046 
 
Кесте  17. 
ШИМ тәртібіндесалыстырмалытәртіптітаңдау 
 
СОМ1Х1  COM 1X0 
ОСХ1 шығушы сигналы 


Қосылмаған 


Қосылмаған 


Төменге  қарай  есеп  маңында  түйісуге  сәйкес 
тазалануда.  Төменге  қарай  есеп  маңында  түйісуге 
сәйкес орнатылуда (ШИМ инвертирленбеген) 


Жоғарыға  қарай  есеп  маңында  түйісуге  сәйкес 
тазалануда.  Жоғарыға  қарай  есеп  маңында  түйісуге 
сәйкес орнатылуда (ШИМ инвертирленбеген) 
 
Ескерту: X = А немесе В 
ШИМ тәртібінде жалауды 1 (TOV1) таймеріне толтырып ауысым кезінде 
$0000  мағынасының  жетістігі  кезінде  есеп  көрсеткіші  орнатылады.  Үзілу 
толтырымның  Т1  таймерінде  жұмыс  істегендей  және  таймердің  қарапайым 
тәртібінде, онда ол глобальды үзілу және Т1 таймерінің толтырылуының үзілуі 
кезінде  және  TOV1  орындалған  кезде  орнатылған.  Бұл  Т1  таймерінің  шығу 
салыстырылымындағы жалауға да және үзілуге де қатысты. 
Т1 таймері реверсивті есептеуішті қалай жұмыс жасайтыны, және $0000-
ден  ТОР-ға  дейін  санайтынын,  есептің  қайда  баратыны  аусып  және  есептен 
нөлге  дейін  апарып,  одан  кейін  цикл  қайталанады.  Есептеуіштің  жағдайы  10 
кіші  битті  OCR1А  немесеOCR1B  түйісуі  келсе,  және  PD5(0C1A)/PD4(0C1B) 
қорытындысы  орнатылып  немесе  өшіріліп,  оған  сәйкес  СОМ1А1/СОМ1А0 
немесе  СОМ1В1/СОМ1В0  биттерінің  регистрінде  орнатылуы  СОМ1А1/ 
СОМ1А0 немесе СОМ1В1/СОМ1В0 басқару ( 4.5.19 см. кестесінде) 
 
Кесте 18 
OCR1X = $0000 ТОР жанында ШИМ тәртібінің шығу жағдайы 
 
СОМ1Х1 
СОМ1Х0 
OCR1X 
ОС1Х нәтижесінің жағдайы 


$0000 



ТОР 
Н 


$0000 
Н 


ТОР 



72 
 
Ескерту: X = А 
ШИМ  тәртібінде  жалауды  1  (TOV1)  таймеріне  толтырып  ауысым  кезінде 
$0000 
мағынасының  жетістігі  кезінде  есеп  көрсеткіші  орнатылады.  Үзілу 
толтырымның  Т1  таймерінде  жұмыс  істегендей  және  таймердің  қарапайым 
тәртібінде,  онда  ол  глобальды  үзілу  және  Т1  таймерінің  толтырылуының  үзілуі 
кезінде  және  TOV1  орындалған  кезде  орнатылған.  Бұл  Т1  таймерінің  шығу 
салыстырылымындағы жалауға да және үзілуге де қатысты. 
4. 
СегізразрядтыТ2 таймері 
 
Кесте 19  
TCCR2 – 
Т2 таймерін басқару регистрі 
 
Бит 








$25 ($45) 
FOC2  WGM20 
СОМ21 СОМ20 WGM21 CS22  CS21  CS20 
Оқылым/Жазу 

R/W 
R/W 
R/W 
R/W 
RAV  R/W 
R/W 
Бастапқы мәні 








 
Бит 7 - FOC2 
1-
дің  мағынасы  Т2  таймерімен  ОС2  шығуындадерек  биттер  орнатылады 
(
ШИМ тәртібінен басқа, оның мағынасы саналмайды). 
Биты 6, 3 - WGM20, WGM21: - режим работы таймера Т2 
Жұмыстың тәртібі WGM20, WGM21 бит жағдайында анықталып және 4.5.21 
кестесінде әкелінген. 
 
Кесте 20  
WGM20, WGM21 бит жағдайында жұмы тәртібінің анықталуы 
 
Тәртіп саны 
Бит 
WGM21 
Бит 
WGM20 
Жұмыс тәртібі 



Жақсы 



Фазалы ШИМ 



Түйісу жағдайында түсіру, ТЖТ 



Жылдам ШИМ 
 
Тәртіп салысырылуының шығуы СОМ21 және СОМ20 битке басқаратын Т2 
таймерінің салыстыру регистрі және регистрдің есептік мағынасы түйісу кезінде 
қорытынды  шығуының  жағдайын  орнатады.  Қаншалықты  бұл  I/O  портының 
қорытындының альтернативті міндеті, онда сәйкес бит 1 жағдайының қорытынды 
көрсеткіші орнатылуы керек. 
Басқарылатын конфигурация 21 кестесінде көрсетілген 
 
Кесте 21  
Салыстыру режимін таңдау 
 
СОМ21  СОМ20 
Сипаттамасы 


ОС2 шығу қорытындысында Т1 таймері өшірілген 


ОС2 жағдайының өзгеруі қарама-қайшы 


ОС2 сызық шығуының өшірілуі (0 жағдайында 
орнатылу) 


ОС2 сызық шығуының орнатылуы (1 жағдайында 
орнатылу) 


73 
 
Назар аударыңыз: ШИМ тәртібінде бұл биттердің міндеті ажыратылады 
Биттер 2,1,0 - CS22, CS21, CS20: -жиілікті алдын-ала бөлуші коэффициент 
биттерін таңдау 
 
Кесте 22  
Т2 таймерін алдын-ала бөлушінің бөлуші коэффициентін таңдау 
 
CS22 
CS21 
CS20 
Сипаттамасы 



Т2 таймері тоқтатылды 



РСК2 



РСК2/8 



РСК2/32 



РСК2/64 



РСК2/128 



РСК2/256 



РСК2/1024 
 
Кесте 23  
TCNT2–
Т2 таймерінің есептік регистрі 
 
Бит 








$24 ($44) 
MSB 
 
 
 
 
 
 
LSB 
Оқылым/Жазу 
R/W 
R/W 
R/W 
R/W 
R/W 
R/W 
R/W 
R/W 
Бастапқы мәні 








 
Бұл 8-разрядты регистрдің мазмұны таймер жағдайымен байланысты. Т2 
таймері  созылмалы  немесе  реверсивті  есептеуіш  ретінде  (ШИМ  тәртібінде), 
оқылым/жазу  есептеуіш  мүмкіндігі  ретінде.  Егер  таймерде  кейбір  мәндер 
жазылса және  тактілік сигналдың дерегі таңдалса, онда ол  тактілік жиіліктің 
есептеуішін мағынасымен жазылған есеп жалғастырылады.  
 
Кесте 24  
Т2 - OCR2 таймер регистрінің салыстырылуы 
 
Бит 








$23 ($43) 
MSB 
 
 
 
 
 
 
LSB 
Оқылым/Жазу 
R/W 
R/W 
R/W 
R/W 
R/W 
R/W 
R/W 
R/W 
Бастапқы мәні 








 
Бұл  8-разрядты  регистрдің  мазмұны  таймер  жағдайымен  байланысты. 
Процедура  салыстырылымын  орындау  кезінде  TCCR2  регистрі  ажыратылады. 
Түйісу  салыстыру  кезінде  болады  тек,  қашан  TCNT2  таймер  есептік  регистрі 
OCR2  мазмұнды  мәнге  жеткен  кезде.  Бағдарламалы  жазу  біреу  және  соған  мән 
беретін  жұп  регистрді  және  регистрге    қалыптасу  түйісуі  салыстыру  кезінде 
жүргізбейді.  Түйісу  салыстыру  кезінде  жалауға  орнатылуын  үзуге  түйісуімен 
ағымда тактілік циклді келесі процессорды түйісуінде жүргізеді. 
ШИМ тәртібінде Т2 таймері 


74 
 
ШИМ  тәртібін  орнату  кезінде  таймер  TCNT2  есептік  регистрдің 
салыстырылуын    орындап  және  OCR2  регистрін  салыстыруда  және  ШИМ 
сигналын  PD7(OC2)  микросхема  қорытындысында  қалыптастырады.  Т2  таймері 
реверсивті  жұмыс  ретінде  жұмыс  істеп,  басында  $00-ден  $FF-қа  дейін  саналып, 
одан  соң  ол  жаңа  циклді  бастап  және  артқа  қайтарда  нөлге  дейін  санайды. 
Есептеуіш  жағдайының  түйісуі  мазмұмнды  регистрға  салыстырылса,  ОС2 
қорытындысында  0  және  1  мәндері  орнатылса,  (сәкесінше  орнатылып,  TCCR2 
таймер регистрінде орнатылып, СОМ21/СОМ20 биттерімен). 4.5.26 см.кестесінде. 
 
Кесте 25  
ШИМ тәртібінде тәртіп таңдауын салыстыру 
 
СОМ21  СОМ20 
ОС2 қорытындысы 


Қосылмаған 


Резервтелуде 


Салыстыру  кезінде  өшіру,  дамытумен  есеп.  Түйісу  кезінде 
орнату, кемумен есеп  (инвертталмаған ШИМ). 


Түйісу кезінде өшіру, кемумен есеп. Түйісу кезінде орнату, 
дамытумен есеп (инвертталған ШИМ). 
 
Уақыт  аралығы  арасында  оперция  жазуы  және  саналым  фиксациясын 
OCR2-
ден уақытша сақталу орнынан саналым ретінде әкеледі. Бұл, OCR2-ден 
саналым шығарылып саналым шаршаулы мәнге оқылым кезінде көрсетеді. 
OCR2  регистр  мәнінде  күнделікті  кезінде  0x00  бірдей  немесе  0xFF 
шығуында  ШИМ  төмен  немесе  жоғары  деңгейде  ұсталынып,  СОМ21/СОМ20 
орнатылуында тәуелді болады. Кестеде келтірілген. 
 
Кесте 26  
OCR2 = 0x00 
немесе 0xFF кезінде шығуында ШИМ жағдайы 
 
СОМ21 
СОМ20 
OCR2 
Шығу 


0x00 
L –
төмен деңгей 


0xFF 
Н –жоғары деңгей 


0x00 
Н - жоғары деңгей 


0xFF 
L - 
төмен деңгей 
 
ШИМ  тәртібінде  TOV2  таймер  жалауының  толуы  0x00  кезінде  есеп 
көрсеткішін ауысым кезінде орнатады. Үзілу толумен 2 таймері солай жұмыс 
істейді, орташа таймер тәртібі сияқты, және ол табысталып, TOV2 орнатылған 
кезде,  және  глобальды  үзілу  және  таймердің  шығу  үзілу  толуымен  рұқсат 
етіледі.  Бұл  үзілу  және  таймердің  шығу  салыстырылым  жалауына  қарайды. 
ШИМ жиілігі 510-ға бөлінген таймер жиілігіне сәйкес болады.  
Жоғары  көрсетілгендей,  Т2  таймері  асинхронды  тәртіппен  жұмыс  істеуі 
мүмкін.  Онда  ол  T0SC1  қорытынды  сигналында  тактіленеді.  РС6  және  РС7 
қорытындысы  кезінде,  генератормен  байланыстырғыш,  кіру/шығу  барлық 
қорытындысы  ретінде  қолдана  алмайды.  Зертханалық  стендте  асинхронды 
тәртіп жұмысы Т2 таймерінде көрсетілмеген. 
 


75 
 


Достарыңызбен бөлісу:
1   ...   29   30   31   32   33   34   35   36   ...   64




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет