マイコン、初心者です。表題のターゲットボードを使用し、AD9833(信号発生器)にて信号を出力してみたいと思いいざ、プログラムを書いて実行してみるとまったく動いている気配がありません。クロック設定などはtargetboard for RX65N のボードサプライパッケージ?をダウンロードし使用しています。何が足りないのか、いろいろ分からないなりに調べつつ試している最中ですが動く気配がなく困っております、、汗何か、とんでもない欠陥や見落としがあると思うのですが、、どなたか、教えてください。コードとクロック設定やデバック構成などのスクショを添付しました。/cfs-file/__key/communityserver-discussions-components-files/395/rxdeAD9938.txt
わわいです
そのボードに添付されているサンプルソフトは動くんでしょうか。
それが動かない、ということであれば、そのボードの不良ってことが疑われるでしょう。
そうでないなら、あなたが組んだプログラムというものが、不完全ということになろうかと思われます。
クロックの設定ですが、CPUを16MHzで動かす設定としているので、ちょっともったいないかと思います。
設定は一例ですが、PLLを使うと、HOCOベースで120MHz動作とする事が出来ます。
クロック設定を、スマートコンフィグレータで行っている場合は、
#include "r_smc_entry.h"
#include <math.h>
#include <stdint.h>
r_smc_entry.h をインクルードするのがお勧めです。(スマートコンフィグレータでモジュールを追加した際は、左記のファイルをインクルートしておけば、スマートコンフィグレータのAPI関数が普通に使えます。)
「動く気配がない」のレベルが判らないのですが、貼り付けられているファイルをコピペして、ビルド&デバッガツールにダウンロードしましたが、
resetprg.c内でブレークして、緑の矢印を押すと、
メイン関数に飛んできたので、ステップ実行や変数値をモニタする事でデバッグ可能かと思います。
(動作の期待値と、どのレベルで止まっているのかが判らないので、イマイチ何を言えば良いのか?です)
(1)コンパイル・ビルドエラーが出る
(2)デバッガ接続ができない
(3)期待した動作にならない
→私がコピペで実行する限りでは、(2)まではクリアしています。(3)は、手元にAD9833にアクセス出来る環境がないので、こちらでは動作を見られません。
ぱっとソースを見て言えることは、PFSレジスタの設定を行っていますが、PFS設定の前にプロテクトレジスタ解除
MPC.PWPR.BIT.B0WI = 0; MPC.PWPR.BIT.PFSWE = 1;
が必要です(どこかで行っていれば良いのですが。)
回答ありがとうございます。サンプルソフトは動きました。LEDを点滅させるものです。こちらいろいろ、プログラムを修正してみると、今度は70hzくらいの矩形波が出てきました。(出したいのは2khzの三角波)AD9833の仕様としてVccに電源を接続するだけ(SPIインタフェースでデータを設定しなくとも)で、「xx」MHz(xxはモジュールによって異なるみたいです)のサイン波が発生できます。ですが、出たのは矩形波です(苦笑)なんらかの信号は送れたのか、、、おっしゃる通りコードが不完全ということだと思いますので1から見直してみます。
早速のご返答ありがとうございますまず、クロック設定に関してアドバイスありがとうございます。近くにRXマイコンに関して伺える方がいないので非常に為になります!r_smc_entry.h インクルードしてみます。
私の方でも、デバックを起動まではなんとか行えているのですが、期待した動作にならないのです。2khzの三角波を期待しているのですが、デフォルトのサイン波がでます。(AD9833はVccとGndを繋ぐだけで、xxHzのサイン波がでます)また少しコードを修正してみて実行してみるとなぜか矩形波がでます(苦笑)SPI通信も初めて扱うので何か誤った設定をしているかもしれないです。AD9833に送るコマンドやAD9833の仕様(特に通信周りの理解に自信がない)を何か勘違いしているかもしれないので、そこを勉強、再確認してみます。PFS設定に関して、見落としていました、、、こちらも反映してみます。ご丁寧にありがとうございました。
AD9833のMCLKにクロックは供給されていますか?MCLKにクロック供給される回路構成のモジュール基板なら問題ないです。
ご回答ありがとうございます。はい、MCLKに水晶?から25Mhzクロック供給されるタイプのものです。こちらを使用しています。