# FREQOUT Example

Syntax: FREQOUT

NOTE: The example below is written for the BS2 and will run on any of the BS2-family modules. Modify the $STAMP directive (as required) before downloading to the BS2e, BS2sx, BS2p, BS2pe, or BS2px.

    ' FREQOUT.BS2
    ' This program demonstrates a sound-effects generation by the BASIC Stamp.
    ' Conditional compilation sets timing and frequency adjustment factors so
    ' that the output will sound the same on any BS2 module.

    ' {$STAMP BS2}
    ' {$PBASIC 2.5}

    Spkr            PIN     10              ' output pin for FREQOUT

    #SELECT $STAMP
      #CASE BS2, BS2E
        TmAdj       CON     $100            ' x 1.0 (time adjust)
        FrAdj       CON     $100            ' x 1.0 (freq adjust)
      #CASE BS2SX
        TmAdj       CON     $280            ' x 2.5
        FrAdj       CON     $066            ' x 0.4
      #CASE BS2P
        TmAdj       CON     $3C5            ' x 3.77
        FrAdj       CON     $044            ' x 0.265
      #CASE BS2PE
        TmAdj       CON     $100            ' x 1.0
        FrAdj       CON     $0A9            ' x 0.66
      #CASE BS2PX
        TmAdj       CON     $607            ' x 6.02
        FrAdj       CON     $02A            ' x 0.166
    #ENDSELECT

    Main:
      DEBUG "Let's make a call...", CR
      ' combine 350 Hz & 440 Hz for dial tone
      FREQOUT Spkr, 2000 */ TmAdj, 350 */ FrAdj, 440 */ FrAdj
      ' dial number (digits 150 ms on, 25 ms off)
      DTMFOUT Spkr, 150 */ TmAdj, 25, [5, 5, 5, 1, 2, 1, 2]
      PAUSE 500

      ' bad connection (SIT sequence)
      FREQOUT Spkr, 375 */ TmAdj, 985 */ FrAdj
      FREQOUT Spkr, 375 */ TmAdj, 1371 */ FrAdj
      FREQOUT Spkr, 375 */ TmAdj, 1777 */ FrAdj

      DEBUG "Oops! -- try again...", CR
      PAUSE 1000
      DTMFOUT Spkr, 150 */ TmAdj, 25, [5, 5, 5, 2, 2, 2, 2]
      DEBUG "Ringing"
      FREQOUT Spkr, 2000 */ TmAdj, 440 */ FrAdj, 480 */ FrAdj
      PAUSE 4000
      FREQOUT Spkr, 2000 */ TmAdj, 440 */ FrAdj, 480 */ FrAdj
      INPUT Spkr
      DEBUG CLS, "Done."
      END

Go to Welcome page

BASIC Stamp Help Version 2.5.4

Copyright © Parallax Inc.

8/8/2012