1. sayfa (Toplam 1 sayfa)
Yüksek hızlı sayıcı kesmesi
Gönderilme zamanı: 24 May 2019, 03:02
gönderen the_night
Merhabalar dvp-14ss2 v3.48 plc ile c252 ile sorunsuz saydırma yapabiliyorum kesme kavramına mikroişlemciler üzerinden hakimim sormak istediğim sayıcı kesme olayı plc de nasıl meydana gelmekte ve bunu nasıl kontrol edebiliyoruz
örneğin dcnt ile c252 kullanıldığı zaman yüksek hızlı sayıcı kesmesi otomatik aktif mi ediliyor ?
kitapçıkta "M1059 Disable high-speed counter interruptions I010~I080" registeri ile sayıcı kesmenin devre dışı olacağı söylenmiş fakat uyguladığım zaman c252 içeriği saymasına devam ediyor programada "DI (disable interrupt)" kullandığım zamanda yine saymaya devam ediyor.
Toparlarsam X0 ucunda bir tetikleme meydana geldiğinde bir external interrupt mu yoksa hızlı sayıcı kesmesimi meydana geliyor plc neye göre hangi kesmeye gidiyor umarım anlatabilmişimdir teşekkürler.
Re: Yüksek hızlı sayıcı kesmesi
Gönderilme zamanı: 24 May 2019, 09:29
gönderen Uğur
Öncelikle hızlı sayıcılar donanımsal bir yapıdır ve arka planda kesme temelli çalışır. Yine istenirse sayıcı haricinde herhangi bir X girişini harici interrupt ile kullanarak aktif yada pasif olduğu anda bir dallanma ile istenilen işlemler yaptırılabilir. Bahsettiğiniz kesmeler sayıcı set değerine ulaştığında yada DHSCS-DHSCR gibi hızlı sayıcı karşılaştırma komutlarında set yada reset adresini interrupt ayarlayarak değere ulaşıldığında bir interrupt programına girmesini sağlayarak ayrı işlemler yaptırmak üzeredir.
Re: Yüksek hızlı sayıcı kesmesi
Gönderilme zamanı: 24 May 2019, 14:15
gönderen the_night
Yani anladığım kadarıyla zaten donanımsal olduğu için plc de boş program çalışsa dahi x uçlarındaki herhangi bir algılamada ilgili sayıcı arka planda artıyor eğer istersem sayıcı kesmesi meydana geldiğinde i010 (sayıcı kesme vektörü) girip buradaki satıra istediğim kodları yazıp işletebiliyorum ve bahsedilen kapatma kısmıda bu vektördeki kodların istenildiğinde işlenmemesi oluyor ama program hata veriyor " I tekrar kullanıldı veya kullanım alanı aşıldı" aynı vektörel kullanımı i100(x1 external interrupt) için kullandığımda herhangi bir sorunla karşılaşmadım
Re: Yüksek hızlı sayıcı kesmesi
Gönderilme zamanı: 24 May 2019, 14:30
gönderen Uğur
Aynı giriş hem hızlı sayıcı hemde donanımsal interrupt olarak kullanılamayacağı için bu uyarıyı veriyor.
Re: Yüksek hızlı sayıcı kesmesi
Gönderilme zamanı: 24 May 2019, 15:08
gönderen the_night
Peki i010 ya da herhangi bir hızlı sayici vektörüyle çalışmanın yolu nedir
Re: Yüksek hızlı sayıcı kesmesi
Gönderilme zamanı: 24 May 2019, 15:20
gönderen Uğur
Harici interrupt için aşağıdaki videodan faydalanabilirsiniz. Hızlı sayıcı için programa eklediğiniz DCNT C252 satırı yeterlidir.
27- Harici İnterrupt (Kesme)
Re: Yüksek hızlı sayıcı kesmesi
Gönderilme zamanı: 24 May 2019, 16:02
gönderen the_night
Teşekkürler başınızı çok ağrıtmadan son olarak birşey daha sormak istiyorum, ben sayma işlemini istersem external interrup kesmesinde inc komutuyla da yapabilirdim. Hızlı sayicinin bana bu noktadaki getirisi kesme olduğunda donanımsal bir alu unitesi var yine donanımsal arttırma yapıyor ve ilgili register'a kaydediyor gibi düşünüyorum (tarama zamanından bağımsız) doğrumu düşünüyorum kabaca?
Re: Yüksek hızlı sayıcı kesmesi
Gönderilme zamanı: 24 May 2019, 16:19
gönderen Uğur
Evet bunlar donanımsal işlemlerdir.