例題3.2 音を出すプログラム
音を出すプログラムを使って,音を出してみましょう.スピーカーのコードはマザーボードのピンフレームCN1の2番と16番に接続します. |
;********************************** ;* BEEP音発生プログラム * ;********************************** ; ;------CPUの指定------- .CPU 300HA ; ;----シンボルの定義------ ;今回はポートBのみを使います. ;ポートBを出力に設定しています.ポートBのデータディレクションレジスタに書き込んでいます MOV.B #H'FF,R0L ;ポートBを出力に設定するため MOV.B R0L,@H'FFFFD4 ;ポートBDDRにH'FFを書き込む ;このプログラムの流れは, ;1:R0Lに00000001を書き込む ;2:R0Lの中身をポートBに出力する ;3:待機する ;4:R0Lの1bit目を反転する ;5: 2:へと飛ぶ(ループ)となります. ;待機する時間の長さにより音程が変わります. START: MOV.B R0L,(____) ;R0Lの内容をポートBに出力する JSR @TIME00 ;待機 (___) #0,R0L ;R0Lのbit0を反転する JMP @START ;STARTにジャンプする ;----タイマサブルーチン------ TIME00: MOV.W #H'1000,R6 ;タイマ TIME01: SUB.W #1,R6 ;ER6にH'1000を書き込み1ずつ減算 BNE TIME01 ;0になるまで減算を繰り返す (___) ;元のルーチンに戻る
|
課題 3.2の説明
|
BNOT |
指定された1bitを反転します.0なら1に,1なら0にします. |
Ex) BNOT LED1 ;LED1を反転します. |