Picproje Elektronik Sitesi

DERLEYİCİLER => CCS C => Konuyu başlatan: Recep METE - 26 Nisan 2016, 13:31:44

Başlık: sleep(); komutunda pic ne kadar enerji harcar?
Gönderen: Recep METE - 26 Nisan 2016, 13:31:44
sleep(); komutunda pic ne kadar enerji harcar? Uyku modunda uyutulan pic' te enerj harcaması sıfır mıdır? Bir de sleep modundan ancak reset yaparak mı uyandırabiliriz veya başka bir kodla uyandırabilir miyiz? Yanıtlarsanız memnun olurum.
Başlık: Ynt: sleep(); komutunda pic ne kadar enerji harcar?
Gönderen: Tagli - 26 Nisan 2016, 13:40:00
uA seviyelerine düşmekle birlikte tam sıfır olmaz. PIC'in besleme gerilimine ve içinde çalışan modüllere göre de bu akım değişir. Örneğin WDT veya harici kristal ile Timer1 çalışması bu akımı arttırır. PIC'in normal çalışma ve uyku akımları datasheet'te ayrıntılı bir tablo olarak verilir.

Uykudan çıkmak için genelde harici bir kesme gerekir. Asenkron çalışan Timer1 gibi kaynaklar da gerekli kesmeyi sağlayabilir ama mesela USART RX kesmesi işe yaramaz çünkü PIC clock'ları uyku halinde devre dışı olduğundan zaten alım işlemi yapılamaz. PIC'i uykudan uyandırabilecek kesme kaynakları modele göre değişebilir, ilgili datasheet'e bakmak lazım. Örneğin dahili RTCC olan modellerde genelde önceden kurulu bir alarma göre uyanma yapmak mümkün oluyor.

Uykudan çıkmanın bir başka yolu da WDT taşmasıdır. Bunun için uykuda WDT'nin çalışır olması gerekir.

Uykudan her ne kadar genelde kesme ile çıkılsa da, işlemci kesme kodunu çalıştırmayabilir. Aklımda yanlış kalmadıysa bu durum GIE'nin 1 olup olmaması ile ilgili. Kesme izin bit'i 1 ama GIE 0 ise, kesme PIC'i uyandırır ama kesme koduna atlamaz, sleep'ten sonra devam eder.
Başlık: Ynt: sleep(); komutunda pic ne kadar enerji harcar?
Gönderen: Recep METE - 26 Nisan 2016, 15:14:04
Detaylı açıklaman için çok teşekkür ederim Tagli hocam.