i’m using a BS2p 24 with a botboard2 and would like to add code to a programme so i can generate a sound (via the on board speaker) as various parts of the programme are executed.
can anyone offer some code/resource pointers please?
i’m using a BS2p 24 with a botboard2 and would like to add code to a programme so i can generate a sound (via the on board speaker) as various parts of the programme are executed.
can anyone offer some code/resource pointers please?
plingboot,
You might want to try the Parallax Forum for the Basic Stamp:
forums.parallax.com/forums/default.aspx?f=5
Just a thought.
Regards,
TCIII
Here’s an example right out of the basic stamp editor help file. If you are using the Bot Board II you will need to change the pin out from pin #10 to Pin#9 to use the built in speaker.
' 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 9 ' output pin for FREQOUT (changed from pin 10 to 9 to work with the ABB)
#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
thanks for that - just what i needed…