PULSEOUT

 
語法

        PULESOUT Pin, Duration

 

操作

        測量在引腳上出現的脈衝波的脈衝頻寬。

  • Pin 常數或變數值(0-23),用來指定脈衝頻寬產生的引腳。對一個24引腳BASIC Commander®,這個引腳值的範圍為0~15
  • Duration 常數或變數值(0~65535)用來定義脈衝頻寬的長度。這個單位為5 ms

 

說明  

        PULSEOUT指令在引腳上產生一個使用者指定頻寬的脈衝。這個型態的脈衝頻寬,無論高或低,取決於脈衝產生引腳上的初始值。如果PULSEOUT指令執行時引腳在低的狀態,則會產生高脈衝。如果引腳初始是高的狀態,則會產生低脈衝。換言之,引腳在脈衝產生時間會被反向。

 

範例

        以下程式是以PULSEOUT指令去驅動伺服馬達的例子。通常伺服馬達的控制是在一個20ms週期內,給予0.5ms~2.5ms的高準位訊號。這個例子設定了1ms2ms二個位置,伺服馬達將以4秒為週期來回轉動。請將電源接至馬達電源線並將引腳P0接至馬達訊號線。

 

Sub Main()
   
Dim b As Byte
   
   
Low 0                   ' initialize pin 0 to low to have high pulse
   
   
Do
       
For b=0 To 100      ' 2 seconds servo rotation
            PULSEOUT 0, 200 ' move to position of 1ms pulse width
            Pause 19        ' constitute a 20 ms cycle
        Next       
       
       
For b=0 To 100      ' 2 seconds servo rotation
            PULSEOUT 0, 400 ' move to position of 2ms pulse width
            Pause 18        ' constitute a 20 ms cycle
        Next
   
Loop
End Sub