View
219
Download
0
Embed Size (px)
Citation preview
音当て Game
2024067 時田 大樹2024068 飛山 雄太郎
作品の目的
入力として、スイッチを押すと音がスピーカーから流れ、スイッチを離すと、音が止まる仕組みとなっている。
回路図
プログラムのフローチャートスタート
スピーカー
入力の確認
スイッチ
初期化処理
ON
OFF
使用方法
スイッチを押し続けると、音が流れ、スイッチを離すと止まるという簡単なもの。これを利用して音当てゲームとして使用する。
本作品のプログラミングを変えて音階を設定していけば、電子ピアノなどへの応用が可能。
作品で想定したユーザ向けの使用
教科書の図 5.1のマイクロコンピュータ回路をベースとして LEDを取り除いて Bポートを入力に設定し、スイッチを入力とする回路を作成した。音を鳴らすためのソースプログラムは第 9章の音を作るプログラムを変えて音を 4種類追加した。
実現方法
ソースプログラム• void main(void){• ANSEL =0x00;• ANSELH=0x00;• ADCON0=0x00;• TRISA =0x00;• TRISB =0x10;• TRISC =0x00;
• PORTC=0;• PORTA=0;• while(1){• if(RB4==0){• RA5=1;• DelayMs(1);• DelayUs(250);• DelayUs(250);• DelayUs(200);• DelayUs(210);• • RA5=0;• DelayMs(1);• DelayUs(250);• DelayUs(250);• DelayUs(200);• DelayUs(210);•
}else if(RB5==0){ RA5=1; DelayMs(1); DelayUs(250); DelayUs(250); DelayUs(205); RA5=0; DelayMs(1); DelayUs(250); DelayUs(250); DelayUs(205);
}else if(RB7==0){ RA5=1; DelayMs(1); DelayUs(250); DelayUs(250); DelayUs(17); RA5=0; DelayMs(1); DelayUs(250); DelayUs(250); DelayUs(17);
}else if(RB6==0){ RA5=1; DelayMs(1); DelayUs(250); DelayUs(180); RA5=0; DelayMs(1); DelayUs(250); DelayUs(180); }}}
まとめ
完成度としては、元々 LEDの点滅を加えるつもりだったので 75点くらいだと思われる。
Cポートを入力に切り替えれば音がさらに増やすことができたと考えられる。