Görevci by Kozmotronik v2.1.1
Küçük gömülü sistemler için çoklu görev (multi-tasking) yönetimi uygulaması
Yüklüyor...
Arıyor...
Eşleşme Yok
MPLAB XC8 PIC18 Portu

Dosyalar

dosya  port.c
 
dosya  portmacro.h
 

Fonksiyonlar

void portKritikBolumGirisi (void)
 
void portKritikBolumCikisi (void)
 

Ayrıntılı tanımlama

Görevci tarafından kullanılacak sistem donanımları burada ilklenir. Herbir portun görevcisi kendi port.c dosyasında gerçeklenmiş olan portGorevciyiBaslat() işlevini çağırarak başlatılır.

Fonksiyon Dokümantasyonu

◆ portKritikBolumCikisi()

void portKritikBolumCikisi ( void )

Sistemin kritik bir bölümden çıkmasını sağlar.

Kritik bir işlem biter bitmez bu işlev çağrılmalıdır ki sistemin kesmeye bağlı olay kaynakları hemen etkinleştirilsin ve bu olaylar bir an önce işlensin. Bu yüzden kritik bölüm olabildiğince kısa ve öz olmalıdır.

Ayrıca Bakınız
portKritikBolumGirisi().

◆ portKritikBolumGirisi()

void portKritikBolumGirisi ( void )

Sistemin kritik bir bölüme geçmesini sağlar.

Kritik bölüm, genelde atomik yani hiçbir şekilde bölünmemesi gereken bir işlemin hemen öncesinde çağrılmalıdır. Atomik işlemin bitiminde ise bu işlevin eşi olan portKritikBolumCikisi() işlevi çağrılmalıdır. Yoksa kesme bitleri bu işlev tarafından değiştirildiğinden sistem beklendiği gibi çalışmaz.

Uyarı
Bu işlev çağrıldıktan sonra sistemin tüm kesme kaynakları etkisizleştirileceğinden, portKritikBolumCikisi() çağrılana dek hiçbir kesme isteği işlenemeyecektir. Bu yüzden kritik bölüm işlemi olabildiğince kısa ve öz olmalıdır. Yoksa zaman kısıtlı olaylar gibi önemli kesme olayları geç işlenir ve bu olaylara bağlı diğer işlemlerin gecikmesine veya aksamasına neden olur.
Ayrıca Bakınız
portKritikBolumCikisi().