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関連
女子美コラボ
その他
※プロデューサミーティング中
作り方使い方資料
イベント関連
作品記事
体験記事
ライブラリ
ツール
その他・過去ファイル
IDE for GRのGR-ROSE用ライブラリですが、USBシリアルブリッジをこさえたいと思い立ちまして色々ながめています。
概ね目的は達成できているのですが、ボーレートなどがスケッチから参照する術が無いために少々役不なところがあります。できれば g_SetControlLineData の static 宣言を外しておいていただけるとうれしいのですが。
念のためUSB_ERR ProcessClassSetupPacket中のcase SET_CONTROL_LINE_STATE:に次の1行を加えて試しました。
USBCDC_IsDtePresent = ((_pSetupPacket->wValue & 0x0001U) != 0);
DTEの状態取得はこれで良さそうですが、最終的にはUSBケーブルの接続を合わせて見ないといけないかも知れません。
またIDE for GRのシリアルモニタを使って試してみたところ、どういう訳か本家Arduino IDEのそれとはDTRの挙動が違っていました。
こちらではどういう訳かVBUSがラッチしてしまう回路のようで、CBCable関数以外でケーブルの挿抜判断できそうな所をデバッグメッセージを頼りに漁ってみました。
挿抜の度に3と4を示すデバイスステートフラグ(USB0.INTSTS0.BIT.DVSQ)が今のところ使えそうです。 ひとまずこのフラグとDTEの論理積をポートの開閉判断にしようと思います。
新しいSDK拝見しました。
諸々追加していただいたおかげでUSBのステータスの把握がしやすくなりました。ありがとうございます。