電流・電圧測定デバイスであるINA233を用いて電圧値を測定し,測定値を簡易IIC通信でRX231に送るプログラムを作成しておりますが上手くいきません.
RX231シリーズ R5F52316ADFM
ROM:256Kbyte RAM 32Kbyte 外部発振20MHzを使用しています.
コード生成はSCI12を簡易IICバスに設定し,生成しました.
void main(void){ R_MAIN_UserInit(); /* Start user code. Do not edit comment generated here */ { uint8_t adr =0 ;//7bit address uint8_t dir =0 ;//0:Write 1:Read uint8_t tx_buf[255] = {0};//send data uint8_t rx_buf[255] = {0};//receive data while(1){ adr = 0x41; dir = 0x00; adr = (adr<<1) | (dir & 0x00); tx_buf[0] = 0x88; //READ_VIN PMBusコード ina233 tx_buf[1] = 0x89; //READ_IN PMBusコード ina233 //PMBusコマンド ina233に送信 R_SCI12_Create(); R_SCI12_Start(); R_SCI12_IIC_Master_Send(adr,&tx_buf[0],3); R_SCI12_Stop(); adr = 0x41; dir = 0x01; adr = (adr<<1) | (dir & 0x00); //ina233からデータ取得 R_SCI12_Start(); R_SCI12_IIC_Master_Receive(adr,rx_buf,3); R_SCI12_Stop(); } } /* End user code. Do not edit comment generated here */}
CS+の設定等もよく分からないのでその辺りも教えていただけるとありがたいです.
初歩的な質問ですいませんが,よろしくお願いいたします.
//INA233のデータシート
www.ti.com/.../ina233.pdf
fiReさん、こんにちは。NoMaYです。> 今回用いている評価ボードを作製したメーカーに問い合わせたところ、> 電流・電圧センサーがINA233ではなくINA226であることが判明しました、、なるほど、そういうことでしたか。そういうことって、時々ありますね。データシートの日付からするとINA226はINA233よりも世代が古いのですね。レジスタの数もかなり少ないですね。fiReさんの先日のリプライの状況から推測すると、IC内部では下位4ビットしかデコードしていないのでしょう。あと、ワードデータのバイト順は一致しています。予感としては、いけそうかな、という感じですね。(ちょっと気になるのは、レジスタの数がかなり少ないですが、fiReさんがやりたかったことはINA226でも充分出来るのかな、、、)INA226データシートの画面コピーwww.ti.com/jp/lit/ds/symlink/ina226.pdf
fiReさん、こんにちは。NoMaYです。> INA226に対応したプログラムを組み直したところ、なんとか電圧値を取得することができました。それは良かったです。> 取得した測定値をメモ帳などのテキストファイルへ出力したいのですがそういったことはできるのでしょうか?。。。> fopen, fprintfといった関数は使えるのでしょうか?CS+のデバッグコンソールというウィンドウへRX231からprintfで出力することが出来ますが、その内容をlogファイルへ出力するように切り替えることが出来ます。(正直に言うと、私はlogファイルへ出力することまではしたことが無いですけど。また、私が使ったのはRXシミュレータでですが。) (たぶん、今回の話はRX231のCSIでUART通信をさせてFT232等のUSBシリアル変換アダプタを経由させてPCにデータを取り込むという話では無いですよね?)その話を出来るだけ簡素に済ませようとすると、使えるようになったコード生成機能では無く、先日お話したRXスマートコンフィグレータを使う方がよいのですが、ちょうど最近、似たような話のスレッドがありましたので、参考までに以下にURLを書いておきます。E2Liteでのデバッグコンソール (CS+/RX231)japan.renesasrulz.com/cafe_rene/f/forum5/6165/e2lite-cs-rx231/34128#34128それで、すみません、先日、鈴木さんのリプライにもあった以下のページからRXスマートコンフィグレータをダウンロードしてインストールして頂けないでしょうか?また、CS+のプラグイン関連の設定を変更する必要があるようですので、以下のユーザーガイドの画面コピーを見て頂けますか。なお、RXスマートコンフィグレータで生成させたソースもチョコさんのアドバイスと同じ対処をする必要があります。要領はコード生成機能で生成させたソースの場合と同じですが、生成されたソースの関数名が若干異なりますので、その点にさえ注意すれば出来ると思います。あと、それから、クロック設定画面がグラフィカルになりましたので雰囲気がけっこう異なりますが、基本的には同じです。(と思います。)スマート・コンフィグレータ ダウンロードページwww.renesas.com/jp/ja/products/software-tools/tools/solution-toolkit/smart-configurator.html#downloads[New]RXスマート・コンフィグレータV2.4.0をダウンロードRXスマート・コンフィグレータ ユーザーガイド: CS+編www.renesas.com/jp/ja/search/keyword-search.html#genre=document&q=r20an0470r20an0470jj0120-cspls-sc.pdfCS+のプラグインの設定に関する項の画面コピーCS+のヘルプのデバッグコンソールに関する項の画面コピー
fiReさん、こんにちは。NoMaYです。その後、どうでしょうか? RXスマートコンフィグレータでも、上手くいったでしょうか?