1 / 14

Ali AKMAN

BİL325 m C. Ders - 5. Subroutine , Interrupt , LPM. Ali AKMAN. Günün PROGRAMI. Alt Programlar Kesmeler Düşük Güç Çalışma Modları. Subroutine , Interrupt , LPM. Ali AKMAN. Alt Program Yapısı. Alt programın çağrılması ; Argumanlar R12 – R15 registerlarına atanir .

bardia
Download Presentation

Ali AKMAN

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. BİL325 mC Ders - 5 Subroutine, Interrupt, LPM Ali AKMAN

  2. GününPROGRAMI • Alt Programlar • Kesmeler • Düşük Güç Çalışma Modları Subroutine, Interrupt, LPM Ali AKMAN

  3. Alt Program Yapısı • Alt programın çağrılması • ;Argumanlar R12 – R15 registerlarınaatanir. • call #SubroutineLabel • Alt program • SubroutineLabel: • ;R4 – R11 register değerleri stackta korunur • ;Alt program govdesi • ;Stacktan R4 – R11 register değerleri alınır • ret Subroutine, Interrupt, LPM Ali AKMAN

  4. Yerel Değişkenler • Yerel değişkenlerin depolama: • CPU Registerları: Alt program içinde kullanılmadan önce değerleri stacktakoruma altına alınmalı • RAM: Tercih edilmez. Alt program çağrılsa da çağrılmasa da değişkenler yer kaplar. • Stack: Genellikle kullanılabilecek CPU registerıkalmadığında değişkenlere stack üzerinde yer tahsis edilir. Subroutine, Interrupt, LPM Ali AKMAN

  5. Yerel Değişkenler Yerel Değişken  Register Yerel Değişken  Stack Subroutine, Interrupt, LPM Ali AKMAN

  6. Argümanlar Geri Dönüş • Argümanlar: • R12 – R15 • Stack • Geri Dönüş • R12 – R15 • Stack Niye 6(SP) ? Subroutine, Interrupt, LPM Ali AKMAN

  7. KesMeler • Sistem Reset • Non-maskableInterrupts • Toplu olarak etkileri iptal edilemez. • Bireysel olarak (Kesme Bayrakları ile) etkileri iptal edilir. • MaskableInterrupts • SP register’ı GIE biti kullanılarak toplu olarak etkisizleştirilebilirler. • Kesme bayrakları ile etkinleştirilirler. Subroutine, Interrupt, LPM Ali AKMAN

  8. KesMeler Ali AKMAN

  9. KesMeler Assembly Uygulama Ali AKMAN

  10. KesMeler C Uygulama Ali AKMAN

  11. Düşük Güç Modları • Aktif Mod: CPU, saat blokları ve etkinleştirilmiş modüller aktif durumdadır. Yaklaşık 300 mA akım çekilir. • LPM0: CPU ve MCLK aktif değil, SMCLK ve ACLK aktif kalır. Yaklaşık 85 mAakım çekilir. • LMP3: CPU, MCLK, SMCLK ve DCO etkin değil, ACLK aktif kalır. Yaklaşık 1 mAakım çekilir. Standart düşük güçte çalıştırma modudur. • LMP4: CPU ve tüm saat blokları etkin değil. Yaklaşık 0.1mA akım çekilir. Subroutine, Interrupt, LPM Ali AKMAN

  12. Düşük Güç Modları Subroutine, Interrupt, LPM Ali AKMAN

  13. Düşük Güç Modları Assembly Uygulama Subroutine, Interrupt, LPM Ali AKMAN

  14. Düşük Güç Modları C Uygulama Subroutine, Interrupt, LPM Ali AKMAN

More Related