PSoCEval1を使って、P00からパルスを出力するだけのプログラムを作ってみました。
http://briefcase.yahoo.co.jp/bc/takuyamatsubara/lst?.dir=/d959&.src=bc&.view=
ファイル名はpwm.zipです。
プログラムはたったのこれだけです。PWMへの入力クロックを2.4MHzに設定しています。出力は15.75kHz相当です。
#define PWMPERIOD (2400000/15750) /* set period to eight clocks */ PWM8_WritePeriod(PWMPERIOD); /* set pulse width to generate a duty cycle */ PWM8_WritePulseWidth(PWMPERIOD/2); PWM8_Start(); /* start the PWM8! */
PWM8のユーザーモジュールを使ってます。
ユーザーモジュールのプロパティです。プログラムは短くて結構なのですが、プロパティは設定が大変です。
psocはこうやって回路をデザインします。PWMにクロック(2.4MHz)を与えて、コンパレートした結果をポートR00に出力している、、、つもりです。
試行錯誤した結果なので、この設定で合ってるのかどうかわかりません。間違ってたらすみません。
人からもらったオシロで計測してみました。15.75kHzのパルスを出力してるつもりです。
あと、12月からYahoo!のブリーフケースが有料になるらしいので、ファイルの置く先をsourceforgeにでも移行しようかと思ってます。