PSoC1/音に挑戦
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
]
開始行:
[[FrontPage]]
#contents
2013/02/24からのアクセス回数 &counter;
今週も大野さんの本に8章を勉強します。
簡単だと高をくくっていたのですが、アナログブロックとカウ...
** AM変調に挑戦 [#h8f760dd]
8章のレッスン2には、以下の図((原著図8-10))のブザーの音を...
&ref(fig8_10.png);
本文には記載されていませんが、このブザーのsin波の様な外形...
最初はよく分からなかったのですが、元の信号に変調信号を反...
出力されるのことが以下の図をみて理解できました。
&ref(fig8_11.png);
AM変調を意識してなのか、SCブロック(タイプC)の内部構造((...
は以下の様になっています。
&ref(fig7_2b.png);
*** 串団子の波形 [#r0382da9]
AM変調を使った串団子のような波形は、元の信号として50Hzのs...
オリジナルは、BPF2を2個使ったBPF4を使ってsin波を生成して...
ここでは練習としてBPF2を1個だけでsin波を出力してみます。
PSoCのFilter DesignフォルダーのBPF2 Design.xlsを起動して
&ref(L8_2_filter.png);
ユーザモジュールの「BPF2_V5R5_2 ポール バンドパス フィル...
例題のブロック図
&ref(fig8_13.png);
でBPF4_1をBPF2_1に変更してプロジェクトを作成します。
*** PSoCの設定 [#ta316fe4]
最初にグローバルセッティングを以下の様にセットします。
&ref(L8_2_global_setting.png);
グローバルセッティングについては、桑野さんの
[[ユーザモジュールの配置とグローバルリソースの設定>http:/...
に説明があって助かりました。
大野さんのプロジェクトの設定では、
- Op-Amp Bias: Hight
- A_Buf_Power: Hight
となっていましたが、デフォルトのままでも動作しました。し...
次にユーザブロックを配置します。
Counter8を3個デジタルブロックを以下の様に配置します。
&ref(L8_2_DBlock.png);
同様にアナログブロックに、PGAを3個、BPF2、SCBlockを以下の...
&ref(L8_2_ABlock.png);
Counter8のパラメータは、以下の様にします。
&ref(L8_2_Counter8_1.png);
&ref(L8_2_Counter8_2.png);
&ref(L8_2_Counter8_3.png);
PGAのパラメータも以下の様にします。
&ref(L8_2_PGA_1.png);
&ref(L8_2_PGA_2.png);
&ref(L8_2_PGA_3.png);
BPF2は、先のフィルター設計の値を以下の様にセットします。
&ref(L8_2_BPF2_1.png);
SCBLOCKは、大野さんの設定の通りとしました。
&ref(L8_2_SCBlock_1.png);
アナログの配線では、BPF2_1のクロックをDBB00から取ります。
*** main関数 [#u4f44572]
main関数は、以下の様にセットします。
#pre{{
void main(void)
{
// M8C_EnableGInt ; // Uncomment this line to enable Glo...
Counter8_1_Start();
Counter8_2_Start();
Counter8_3_Start();
PGA_1_Start(PGA_1_HIGHPOWER);
PGA_2_Start(PGA_2_HIGHPOWER);
PGA_3_Start(PGA_3_HIGHPOWER);
BPF2_1_Start(BPF2_1_HIGHPOWER);
SCBLOCK_1_Start(SCBLOCK_1_HIGHPOWER);
AMD_CR0 |= 0x20; // データシート13.2.11参照
}
}}
8章のレッスン2の最大のポイントは、SCBLOCKの入力に1kHzの...
この部分はプログラムで制御しなくてなりません。
データシートの13.2.11にAMD-CR0のアナログ変調制御の設定方...
これからGOE0を選択するには、AMD_CR0の6-4bitを、010にセッ...
それで、AMD_CR0の設定が、
#pre{{
AMD_CR0 |= 0x20;
}}
となります。
*** 実行結果 [#oc2b4b92]
私のオシロスコープは、2CHしかないので、P0[5]の50HzのSin波...
&ref(L8_2_Signal1.png);
次にP0[5]の50HzのSin波とP0[4]の出力波形を表示します。
&ref(L8_2_Signal2.png);
** はまったところ [#s805b247]
*** 教訓その1 [#q2d3942d]
デジタル回路のカウンターの接続を間違えて、正しいクロック...
クロックはピンに出力しておけば、テスターで簡単に確認でき...
P0[1]の50HzとP0[0]の1kHzのクロックを確認したところ。
&ref(L8_2_P0_1.png); &ref(L8_2_P0_0.png);
*** 教訓その2 [#nf835fb7]
PGAのパラメータ設定で「未設定」項目があったのに気づかず、...
*** 教訓その3 [#p5285848]
ユーザブロックのStartコマンドをmain関数に入れ忘れてどうし...
** コメント [#v12757ef]
#vote(おもしろかった[6],そうでもない[0],わかりずらい[0])
皆様のご意見、ご希望をお待ちしております。
#comment_kcaptcha
終了行:
[[FrontPage]]
#contents
2013/02/24からのアクセス回数 &counter;
今週も大野さんの本に8章を勉強します。
簡単だと高をくくっていたのですが、アナログブロックとカウ...
** AM変調に挑戦 [#h8f760dd]
8章のレッスン2には、以下の図((原著図8-10))のブザーの音を...
&ref(fig8_10.png);
本文には記載されていませんが、このブザーのsin波の様な外形...
最初はよく分からなかったのですが、元の信号に変調信号を反...
出力されるのことが以下の図をみて理解できました。
&ref(fig8_11.png);
AM変調を意識してなのか、SCブロック(タイプC)の内部構造((...
は以下の様になっています。
&ref(fig7_2b.png);
*** 串団子の波形 [#r0382da9]
AM変調を使った串団子のような波形は、元の信号として50Hzのs...
オリジナルは、BPF2を2個使ったBPF4を使ってsin波を生成して...
ここでは練習としてBPF2を1個だけでsin波を出力してみます。
PSoCのFilter DesignフォルダーのBPF2 Design.xlsを起動して
&ref(L8_2_filter.png);
ユーザモジュールの「BPF2_V5R5_2 ポール バンドパス フィル...
例題のブロック図
&ref(fig8_13.png);
でBPF4_1をBPF2_1に変更してプロジェクトを作成します。
*** PSoCの設定 [#ta316fe4]
最初にグローバルセッティングを以下の様にセットします。
&ref(L8_2_global_setting.png);
グローバルセッティングについては、桑野さんの
[[ユーザモジュールの配置とグローバルリソースの設定>http:/...
に説明があって助かりました。
大野さんのプロジェクトの設定では、
- Op-Amp Bias: Hight
- A_Buf_Power: Hight
となっていましたが、デフォルトのままでも動作しました。し...
次にユーザブロックを配置します。
Counter8を3個デジタルブロックを以下の様に配置します。
&ref(L8_2_DBlock.png);
同様にアナログブロックに、PGAを3個、BPF2、SCBlockを以下の...
&ref(L8_2_ABlock.png);
Counter8のパラメータは、以下の様にします。
&ref(L8_2_Counter8_1.png);
&ref(L8_2_Counter8_2.png);
&ref(L8_2_Counter8_3.png);
PGAのパラメータも以下の様にします。
&ref(L8_2_PGA_1.png);
&ref(L8_2_PGA_2.png);
&ref(L8_2_PGA_3.png);
BPF2は、先のフィルター設計の値を以下の様にセットします。
&ref(L8_2_BPF2_1.png);
SCBLOCKは、大野さんの設定の通りとしました。
&ref(L8_2_SCBlock_1.png);
アナログの配線では、BPF2_1のクロックをDBB00から取ります。
*** main関数 [#u4f44572]
main関数は、以下の様にセットします。
#pre{{
void main(void)
{
// M8C_EnableGInt ; // Uncomment this line to enable Glo...
Counter8_1_Start();
Counter8_2_Start();
Counter8_3_Start();
PGA_1_Start(PGA_1_HIGHPOWER);
PGA_2_Start(PGA_2_HIGHPOWER);
PGA_3_Start(PGA_3_HIGHPOWER);
BPF2_1_Start(BPF2_1_HIGHPOWER);
SCBLOCK_1_Start(SCBLOCK_1_HIGHPOWER);
AMD_CR0 |= 0x20; // データシート13.2.11参照
}
}}
8章のレッスン2の最大のポイントは、SCBLOCKの入力に1kHzの...
この部分はプログラムで制御しなくてなりません。
データシートの13.2.11にAMD-CR0のアナログ変調制御の設定方...
これからGOE0を選択するには、AMD_CR0の6-4bitを、010にセッ...
それで、AMD_CR0の設定が、
#pre{{
AMD_CR0 |= 0x20;
}}
となります。
*** 実行結果 [#oc2b4b92]
私のオシロスコープは、2CHしかないので、P0[5]の50HzのSin波...
&ref(L8_2_Signal1.png);
次にP0[5]の50HzのSin波とP0[4]の出力波形を表示します。
&ref(L8_2_Signal2.png);
** はまったところ [#s805b247]
*** 教訓その1 [#q2d3942d]
デジタル回路のカウンターの接続を間違えて、正しいクロック...
クロックはピンに出力しておけば、テスターで簡単に確認でき...
P0[1]の50HzとP0[0]の1kHzのクロックを確認したところ。
&ref(L8_2_P0_1.png); &ref(L8_2_P0_0.png);
*** 教訓その2 [#nf835fb7]
PGAのパラメータ設定で「未設定」項目があったのに気づかず、...
*** 教訓その3 [#p5285848]
ユーザブロックのStartコマンドをmain関数に入れ忘れてどうし...
** コメント [#v12757ef]
#vote(おもしろかった[6],そうでもない[0],わかりずらい[0])
皆様のご意見、ご希望をお待ちしております。
#comment_kcaptcha
ページ名:
SmartDoc