チーム1328
課題名
psoc
研究者名
2年15組9番 岡野 真生
2年15組19番 木谷 直親
見出し1
#include <m8c.h>
#include "PSoCAPI.h"
int PW = 125;
int SILENT = 0,D = 229,L = 204,M = 182,F = 172,S = 153,R = 136,C = 121,DD = 115,LL = 103,MM =92 ,FF = 86,SS = 77,RR = 68,CC = 65;
void main(void){
int i; char*strPtr; UART_CmdReset(); UART_IntCntl(UART_ENABLE_RX_INT); Counter8_WritePeriod(155); Counter8_WriteCompareValue(77); Counter8_Start(); UART_Start(UART_PARITY_NONE); M8C_EnableGInt; PWM16_1_Start(); UART_CPutString("\r\nPSoC Synthesizer V1.1\r\n"); while(1){ if(UART_bCmdCheck()){ if(strPtr = UART_szGetParam()){ UART_CPutString("Found valid command\r\nCommand =>"); UART_PutString(strPtr); UART_CPutString("<\r\nParamaters;\r\n"); if(*strPtr=='l') for(i = 0;i<=10000;i++) PWM16_1_WritePeriod(RR); for(i = 0;i<=1000;i++) PWM16_1_WritePeriod(SILENT); for(i = 0;i<=8000;i++) PWM16_1_WritePeriod(RR); for(i = 0;i<=1000;i++) PWM16_1_WritePeriod(SILENT); for(i = 0;i<=8000;i++) PWM16_1_WritePeriod(RR); for(i = 0;i<=1000;i++) PWM16_1_WritePeriod(SILENT); for(i = 0;i<=8000;i++) PWM16_1_WritePeriod(RR); for(i = 0;i<=1000;i++) PWM16_1_WritePeriod(SILENT); for(i = 0;i<=15000;i++) PWM16_1_WritePeriod(SS); for(i = 0;i<=1000;i++) PWM16_1_WritePeriod(SILENT); for(i = 0;i<=20000;i++) PWM16_1_WritePeriod(CC); for(i = 0;i<=7000;i++) PWM16_1_WritePeriod(SILENT); for(i = 0;i<=10000;i++) PWM16_1_WritePeriod(FF); for(i = 0;i<=10000;i++) PWM16_1_WritePeriod(MM); for(i = 0;i<=5000;i++) PWM16_1_WritePeriod(FF); for(i = 0;i<=10000;i++) PWM16_1_WritePeriod(MM); for(i = 0;i<=10000;i++) PWM16_1_WritePeriod(LL); for(i = 0;i<=10000;i++) PWM16_1_WritePeriod(DD); for(i = 0;i<=20000;i++) PWM16_1_WritePeriod(SILENT); for(i = 0;i<=7000;i++) PWM16_1_WritePeriod(LL); for(i = 0;i<=5000;i++) PWM16_1_WritePeriod(MM); for(i = 0;i<=10000;i++) PWM16_1_WritePeriod(FF); for(i = 0;i<=5000;i++) PWM16_1_WritePeriod(LL); for(i = 0;i<=1000;i++) PWM16_1_WritePeriod(SILENT); for(i = 0;i<=7000;i++) PWM16_1_WritePeriod(LL); for(i = 0;i<=5000;i++) PWM16_1_WritePeriod(SILENT); for(i = 0;i<=7000;i++) PWM16_1_WritePeriod(LL); for(i = 0;i<=5000;i++) PWM16_1_WritePeriod(FF); for(i = 0;i<=10000;i++) PWM16_1_WritePeriod(SS); for(i = 0;i<=5000;i++) PWM16_1_WritePeriod(LL); for(i = 0;i<=1000;i++) PWM16_1_WritePeriod(SILENT); for(i = 0;i<=10000;i++) PWM16_1_WritePeriod(LL); for(i = 0;i<=5000;i++) PWM16_1_WritePeriod(SILENT); for(i = 0;i<=5000;i++) PWM16_1_WritePeriod(LL); for(i = 0;i<=3000;i++) PWM16_1_WritePeriod(MM); for(i = 0;i<=10000;i++) PWM16_1_WritePeriod(FF); for(i = 0;i<=10000;i++) PWM16_1_WritePeriod(MM); for(i = 0;i<=10000;i++) PWM16_1_WritePeriod(MM); for(i = 0;i<=5000;i++) PWM16_1_WritePeriod(FF); for(i = 0;i<=1000;i++) PWM16_1_WritePeriod(SILENT); for(i = 0;i<=10000;i++) PWM16_1_WritePeriod(FF); for(i = 0;i<=30000;i++) PWM16_1_WritePeriod(SILENT); UART_CmdReset(); } } }
}
見出し2
#include <m8c.h>
#include "PSoCAPI.h"
int PW = 125;
int SILENT = 0,D = 229,L = 204,M = 182,F = 172,S = 153,R = 136,C = 121,DD = 115,LL = 103,MM =92 ,FF = 86,SS = 77,RR = 68,CCC = 255,RRR = 275,CC = 64;
void main(void){
int i; char*strPtr; UART_CmdReset(); UART_IntCntl(UART_ENABLE_RX_INT); Counter8_WritePeriod(155); Counter8_WriteCompareValue(77); Counter8_Start(); UART_Start(UART_PARITY_NONE); M8C_EnableGInt; PWM16_1_Start(); UART_CPutString("\r\nPSoC Synthesizer V1.1\r\n"); while(1){ if(UART_bCmdCheck()){ if(strPtr = UART_szGetParam()){ UART_CPutString("Found valid command\r\nCommand =>"); UART_PutString(strPtr); UART_CPutString("<\r\nParamaters;\r\n"); if(*strPtr=='l') for(i = 0;i<=10000;i++) PWM16_1_WritePeriod(F); for(i = 0;i<=1000;i++) PWM16_1_WritePeriod(SILENT); for(i = 0;i<=8000;i++) PWM16_1_WritePeriod(F); for(i = 0;i<=1000;i++) PWM16_1_WritePeriod(SILENT); for(i = 0;i<=8000;i++) PWM16_1_WritePeriod(F); for(i = 0;i<=1000;i++) PWM16_1_WritePeriod(SILENT); for(i = 0;i<=8000;i++) PWM16_1_WritePeriod(F); for(i = 0;i<=15000;i++) PWM16_1_WritePeriod(M); for(i = 0;i<=15000;i++) PWM16_1_WritePeriod(F); for(i = 0;i<=10000;i++) PWM16_1_WritePeriod(SILENT); for(i = 0;i<=20500;i++) PWM16_1_WritePeriod(SILENT); for(i = 0;i<=20500;i++) PWM16_1_WritePeriod(SILENT); for(i = 0;i<=5000;i++) PWM16_1_WritePeriod(D); for(i = 0;i<1000;i++) PWM16_1_WritePeriod(SILENT); for(i = 0;i<=10000;i++) PWM16_1_WritePeriod(D); for(i = 0;i<=10000;i++) PWM16_1_WritePeriod(L); for(i = 0;i<=5000;i++) PWM16_1_WritePeriod(M); for(i = 0;i<=10000;i++) PWM16_1_WritePeriod(S); for(i = 0;i<=20000;i++) PWM16_1_WritePeriod(F); for(i = 0;i<=30000;i++) PWM16_1_WritePeriod(SILENT); for(i = 0;i<=15000;i++) PWM16_1_WritePeriod(SILENT); for(i = 0;i<=11200;i++) PWM16_1_WritePeriod(SILENT); for(i = 0;i<=5000;i++) PWM16_1_WritePeriod(L); for(i = 0;i<=1000;i++) PWM16_1_WritePeriod(SILENT); for(i = 0;i<=3000;i++) PWM16_1_WritePeriod(L); for(i = 0;i<=1000;i++) PWM16_1_WritePeriod(SILENT); for(i = 0;i<=10000;i++) PWM16_1_WritePeriod(L); for(i = 0;i<=1000;i++) PWM16_1_WritePeriod(SILENT); for(i = 0;i<=10000;i++) PWM16_1_WritePeriod(L); for(i = 0;i<=10000;i++) PWM16_1_WritePeriod(D); for(i = 0;i<=5000;i++) PWM16_1_WritePeriod(CCC); for(i = 0;i<=10000;i++) PWM16_1_WritePeriod(RRR); for(i = 0;i<=30000;i++) PWM16_1_WritePeriod(SILENT); } UART_CmdReset(); } } }
見出しN
見出しNに対する内容や説明文などを書いてください。
考察
音階を広げ、高い音と低い音に分け、1つの曲を2種類のパートで作り上げた。
一方のパートが休みのときは、for文やSILENTで時間を稼ぐ。for文内の数字は自分たちの感覚で調整するため、
多少の誤差はあるが、微調整はしやすい。時間稼ぎにはタイマーを使う方法もある。
- 最終更新:2013-06-11 17:15:13