90 likes | 285 Views
AVR Classic MK-d ə kəsilmənin təşkili. AVR Classic M K-də kəsilmənin təyinatı və yerinə yetirilməsi. AVR Classic MK-də cari proqram kəsilmə siqnalı ilə müvəqqəti olaraq dayandırıla bilər
E N D
AVR Classic MK-də kəsilmənin təyinatı və yerinə yetirilməsi AVR Classic MK-də cari proqram kəsilmə siqnalı ilə müvəqqəti olaraq dayandırıla bilər Kəsilmə halındaPC registrinin məzmunu stek yaddaşa ötürülür və uyğun kəsilmə vektoruünvanı PC-ə yüklənir .Bundan sonra kəsilməyə xidmət proqramı işə başlayır kəsilməyə xidmət proqramının başlanğıc ünvanı uyğun kəsilmə vektorunun məzmunu ilə təyin edilir. kəsilməyə xidmət proqramının sonu RETI (Return from interrupt) əmri ilə bitir RETI əmriilə PC registrinin əvvəlki məzmunu stekdən çıxarılaraq bərpa edilir main proqrama qayıdılır AVR Classic MK-nin müxtəlif modellərindən asılı olaraq (2 -16) ədəd kəsilmə vektorları vardır Hər bir kəsilmə vektorunda uyğun kəsilməyə xidmət proqramının başlanğıc ünvanı saxlanılır of AVR Classic MK-lərin AT90Sxxx modeli üçün kəsilmə vektorları cədvəli aşağıda verilir
Kəsilmə siqnallarıl və onların mənbələri • AVR Classic Mk-lərin kəsilmə mənbələri 2 sinfə ayrılır: xarici və daxili • Aşağıdakı siyahıdaINT0 və INT1 xarici kəsilmələrə aid olub MK-nin girişinə xarici dövrədən verilə bilər • Cədvəldə göstərilən digər siqnallar daxili kəsilmələrə aiddir,çünki onlar MK-nin daxili bloklarından(taymerlərdən,interfeyslərdən ADC çeviricidən) hasil edilir : • T0 taymerinin dolmasındanOVFkəsilmə siqnalı • T1 taymerin çıxışında3 müxtəlif kəsilmə siqnalı : • overflow kəsilmə(OVF), • Compare-Match_müqayisə-yarış • Input Capture-giriş-zəbt etmə • MK-nin Interfeyslərindən 4 ədəd kəsilmə siqnalı hasil edilir : • 1-SPI -dan • 3-ədəd UART-dan
AVR Classic MK-lərin AT90SXXX modeli üçün kəsilmə vektorları cədvəli
GIMSK -General Interrupt Mask register GIFR- General Interrupt Flag register 7 … 7 .... 0 0 INTF1 INTF0 .... - - … - INT1 INT0 … - - Xarixi T0 kəsilməyə icazə Xarixi T1 kəsilməbayrağı Xarixi T0 kəsilməbayrağı b) Xarixi T1 kəsilməyə icazə a) Xarici kəsilməyə icazə və bayraqlar registrləri • Xarici kəsilmələrə icazə vermək üçün GIMSK- General interrupt Mask register-də INT0 və INT1bitləri “1” edilməlidir • Xarici kəsilmə bayraqları GIFR- General interrupt Flag register-də INTF0 və INTF1bitləri ilə göstərilir
TIMSK-Timer interrupt Mask register TICIE1 OCIE1A OCIE2 TOIE2 OCIE1B TOIE1 - TOIE0 T1 “Input-Capture”i nterrupt enable T2 “Compare-Match”kəsilməsinə icazə T0 Overflowkəsilməyə icazə T1 Overflowkəsilməyə icazə T1 “Compare Match A”kəsilməsinə icazə T2 Overflowkəsilməsinə icazə T1 “Compare Match B”kəsilməsinə icazə Taymerlərdən kəsilmələrə icazə registri • T0,T1 and T2traymerlərdən kəsilmələrə icazə üçün TIMSK –Timer Interrupt Mask registerinin aşağıdakı bitləri istifadə edilir: • OCIE-Out Compare Enable, TICIE-Timer Input Capture Enable, TOIE-Time Out Interrupt Enable
T1 Overflowkəsilmə bayr T1 “Input-Capture”ikəsilmə bayr T0 Overflowkəsilmə bayr TIFR-Timer interrupt Flag register T2 “Compare-Match”kəsilmə bayr T1 “CompareMatch A” kəsilmə bayr TOV2 OCF1B TOV1 OCF2 ICF1 OCF1A - TOV0 T2 Overflowkəsilmə bayr T1 “Compare Match B”kəsilmə bayr Taymerlərdən kəsilmə bayraqları registri • T0,T1,T2 taymerlərdən kəsilmə bayraqları TIFR- Timer Interrupt Flag register registrində aşağıdakı bayraqlarla göstərilir : • OCF-Out Compare Flag,ICF-Input Capture Flag,TOV-Time Out Flag
ADCSR- ADC State register ACSR-Analog comparator State register ADİF ADİE ACİ ACİE ADC- Kəsilmə bayr Kəsilmə bayr ADC-kəsilməyə Icazə AC- Kəsilməyə icazə Analoq komparator və ADC-dən kəsilmə • analoqkomparatorvə ADC-dən kəsilməyə icazə və bayraqlar uyğun olaraq ACSRvə ADSRregistrlərində saxlanılır
UCR(UCSR)- UART Control register UARTüçün Reciever/Transmite -Complete/ Data buffer empty kəsilmələrə icazələr və bayraqlar EECR- EEPROM Control register EERI Kəsilməyə icazə UART və EEPROM kəsilmələri