Duty cycle ölçümü ?

Başlatan Maxim, 26 Kasım 2006, 20:08:10

Maxim

Pulsin waits a maximum of 0.65535 seconds for a trigger, then returns with 0 in variable.

yani en fazla bekleme süresi 0.65535 saniye olduğunu yazıyor .

proton+
declare PULSIN_MAXIMUM = xxx
süre ayarı var,

şöyle çalışıyor ,
mesela Declare PULSIN_MAXIMUM=32000 yazarsak
bekleme süresi 0.32 saniye olarak kısıtlanmış oluyor ve daha fazla
bekleme yapılmıyor.

benim bildiğim bu şekilde .


hatta yardım dosyasındaki tüm yazıyı koyalım buraya .

Pulsin acts as a fast clock that is triggered by a change in state (0 or 1) on the specified pin. When the state on the pin changes to the state specified, the clock starts counting. When the state on the pin changes again, the clock stops. If the state of the pin doesn't change (even if it is already in the state specified in the Pulsin instruction), the clock won't trigger. Pulsin waits a maximum of 0.65535 seconds for a trigger, then returns with 0 in variable. The variable can be either a word or a byte . If the variable is a word, the value returned by Pulsin can range from 1 to 65535 units.

The units are dependant on the frequency of the crystal used. If a 4MHz crystal is used, then each unit is 10us, while a 20MHz crystal produces a unit length of 2us.

If the variable is a byte and the crystal is 4MHz, the value returned can range from 1 to 255 units of 10µs. Internally, Pulsin always uses a 16-bit timer. When your program specifies a byte, Pulsin stores the lower 8 bits of the internal counter into it. Pulse widths longer than 2550µs will give false, low readings with a byte variable. For example, a 2560µs pulse returns a reading of 256 with a word variable and 0 with a byte variable.

okanbugdayci

yardımcı oldğunuz için teşekkürler arkadaşlar peki basicte aşağıdaki gibi bir kalıp gördünüz mü yada kullanan var mı

           
FOR DIZIN=0 TO 7
           IF PALS[DIZIN]< 100 THEN DBIT.0[DIZIN]=0
            NEXT DIZIN      
   

if li kısımdaki yazıma dikkat. bu tam olarak ne anlama geliyor bilen varsa çok acil bi şekilde yardımcı olursa sevinirim

Maxim

Alıntı yapılan: "okanbugdayci"yardımcı oldğunuz için teşekkürler arkadaşlar peki basicte aşağıdaki gibi bir kalıp gördünüz mü yada kullanan var mı

           
FOR DIZIN=0 TO 7
           IF PALS[DIZIN]< 100 THEN DBIT.0[DIZIN]=0
            NEXT DIZIN      
   

if li kısımdaki yazıma dikkat. bu tam olarak ne anlama geliyor bilen varsa çok acil bi şekilde yardımcı olursa sevinirim

okan ,
bunun için picbasicpro altında ayrı bir başlık açarsan daha doğru olacak sanırım .

slm