Renesas Community
Renesas Community
  • User
    Join or sign in
  • Site
  • Search Community
  • User
  • Renesas Engineering Community
  • FAQ
  • HELP
  • More
  • Cancel
がじぇっとるねさすコミュニティ
がじぇっとるねさすコミュニティ
GR-ROSE usb cdc
  • Forums
  • Files
  • がじぇっとるねさす ゆーざー会 - Wiki
  • Tags
  • More
  • Cancel
  • New

 

 GR-SAKURA

 GR-KURUMI

 GR-COTTON

 GR-CITRUS

 GR-PEACH

 GR-KAEDE

 GR-ADZUKI

 GR-LYCHEE

 GR-ROSE

 GR-MANGO(*)

 SNShield

 Web Compiler

 IDE for GR

 TOPPERS関連

 女子美コラボ

 その他

 ※プロデューサミーティング中

 作り方使い方資料

 イベント関連

 作品記事

 体験記事

 その他

 

 ライブラリ

 ツール

 その他・過去ファイル

  • Replies 12 replies
  • Subscribers 439 subscribers
  • Views 4367 views
  • Users 0 members are here
  • GR-ROSE
Options
  • Share
  • More
  • Cancel
Related Tags
  • 3D
  • analog
  • B3M
  • DDS-XRCE
  • endif
  • esp8266
  • FIT
  • GR-ROSE
  • ICS
  • include
  • MG996R
  • MIC3
  • microSD
  • MPL3115A2
  • OLED
  • pin
  • PMOD
  • ROS
  • ROS2
  • rosserial
  • RS-485
  • RX65N
  • SDHI
  • serial
  • SmartConfigurator
Related

usb cdc

たかぶー
たかぶー over 3 years ago

IDE for GRのGR-ROSE用ライブラリですが、USBシリアルブリッジをこさえたいと思い立ちまして色々ながめています。

概ね目的は達成できているのですが、ボーレートなどがスケッチから参照する術が無いために少々役不なところがあります。
できれば g_SetControlLineData の static 宣言を外しておいていただけるとうれしいのですが。

  • Reply
  • Cancel
  • Cancel
Parents
  • Okamiya Yuuki
    Okamiya Yuuki over 3 years ago
    了解です。ただ、IDE for GRのアップデート自身、少し先になりそうですが宜しいでしょうか?ソース自身はe2studioプロジェクトをお使いいただければ変更してビルド可能です。
    • Cancel
    • Up 0 Down
    • Reply
    • Cancel
  • たかぶー
    たかぶー over 3 years ago in reply to Okamiya Yuuki
    ありがとうございます。しばしe2studioで自力対応したいと思います。
    • Cancel
    • Up 0 Down
    • Reply
    • Cancel
  • たかぶー
    たかぶー over 3 years ago in reply to たかぶー
    試した所、g_SetControlLineData から得られるデータが一向に変化しない事がわかりました。
    ProcessClassSetupPacket 内の case GET_LINE_CODING において g_LineCoding のポインタが _ppBuffer 指定されているために、結果的に何の変化も起きません。
    *_ppBuffer = g_SET_CONTROL_LINE_STATE_DATA_Buffer;
    とでもしておけばそれなりの値が返るようになりました。
    ご報告まで。
    • Cancel
    • Up 0 Down
    • Reply
    • Cancel
  • たかぶー
    たかぶー over 3 years ago in reply to たかぶー
    PCにつながっているとプログラムが動き、スタンドアロンにすると止まるケースが見られました。
    Serialで無造作にprintし続けているプログラムの場合が該当し、送信相手がいないとストールするようです。
    ハードフローまでは必要があるとは言いませんが、DTR(DSR)を見てポートが開かれているか否かの判断をして送信する仕掛けを入れた方が良さそうです。
    Arduino IDEやTera Term、LinuxでもDTRは制御しているようですので。
    • Cancel
    • Up 0 Down
    • Reply
    • Cancel
  • たかぶー
    たかぶー over 3 years ago in reply to たかぶー

    念のためUSB_ERR ProcessClassSetupPacket中のcase SET_CONTROL_LINE_STATE:に次の1行を加えて試しました。

    USBCDC_IsDtePresent = ((_pSetupPacket->wValue & 0x0001U) != 0);

    DTEの状態取得はこれで良さそうですが、最終的にはUSBケーブルの接続を合わせて見ないといけないかも知れません。

    またIDE for GRのシリアルモニタを使って試してみたところ、どういう訳か本家Arduino IDEのそれとはDTRの挙動が違っていました。

    • Cancel
    • Up 0 Down
    • Reply
    • Cancel
  • Okamiya Yuuki
    Okamiya Yuuki over 3 years ago in reply to たかぶー
    色々といじっていただいてありがとうございます。私はドライバ内部をそこまで見ていないので、参考になります。

    Arduino IDEとIDE for GRでは確かにDTRの制御は変えました。RL78系ではFTDIを使ってプログラムを書き込んだり、シリアルモニターをするのですが、FTDIはUSBポートが開いてる/開いていないによって、DTRの信号がLOW/HIGHと変化します。RL78のボードではDTRをリセット信号に使っていたため、シリアルモニターを開くとRL78がリセットされてしまうため、IDE for GRでの制御を変更しました。
    • Cancel
    • Up 0 Down
    • Reply
    • Cancel
  • Okamiya Yuuki
    Okamiya Yuuki over 3 years ago in reply to Okamiya Yuuki
    たかぶー様
    CDC ACMの勉強を始めました。
    g_SetControlLineDataのSerialクラスでの状態取得、DTEによるホスト検知の件、アドバイスいただき大変ありがとうございます。
    今月2月を目途に更新したいと思います。
    • Cancel
    • Up 0 Down
    • Reply
    • Cancel
  • たかぶー
    たかぶー over 3 years ago in reply to Okamiya Yuuki
    フラグの取得ができさえすればアプリケーション側で処置できますのでとても助かります。

    ちなみに、ホストのポートのオープンクローズはDTEの検出で判断できましたが、ケーブルの挿抜はセルフパワーの環境ではUSBCDC_IsConnectedでは判断できませんでした。
    こちらの環境では一度接続されるとtrueしか返って来なくなります。
    • Cancel
    • Up 0 Down
    • Reply
    • Cancel
  • たかぶー
    たかぶー over 3 years ago in reply to たかぶー

    こちらではどういう訳かVBUSがラッチしてしまう回路のようで、CBCable関数以外でケーブルの挿抜判断できそうな所をデバッグメッセージを頼りに漁ってみました。

    挿抜の度に3と4を示すデバイスステートフラグ(USB0.INTSTS0.BIT.DVSQ)が今のところ使えそうです。
    ひとまずこのフラグとDTEの論理積をポートの開閉判断にしようと思います。

    • Cancel
    • Up 0 Down
    • Reply
    • Cancel
  • Okamiya Yuuki
    Okamiya Yuuki over 3 years ago in reply to たかぶー
    なるほど!ありがとうございます!
    • Cancel
    • Up 0 Down
    • Reply
    • Cancel
  • たかぶー
    たかぶー over 3 years ago in reply to Okamiya Yuuki

    新しいSDK拝見しました。

    諸々追加していただいたおかげでUSBのステータスの把握がしやすくなりました。
    ありがとうございます。

    • Cancel
    • Up 0 Down
    • Reply
    • Cancel
Reply
  • たかぶー
    たかぶー over 3 years ago in reply to Okamiya Yuuki

    新しいSDK拝見しました。

    諸々追加していただいたおかげでUSBのステータスの把握がしやすくなりました。
    ありがとうございます。

    • Cancel
    • Up 0 Down
    • Reply
    • Cancel
Children
  • Okamiya Yuuki
    Okamiya Yuuki over 3 years ago in reply to たかぶー
    ご確認いただきありがとうございます!
    色々とアドバイスをいただき、助かりました。
    • Cancel
    • Up 0 Down
    • Reply
    • Cancel
サイト使用条件
プライバシーポリシー
お問い合わせ
© 2010-2023 Renesas Electronics Corporation. All rights reserved.