メインコンテンツに移動

mbed

シリアル通信

長らく疑問に思っていたことがあるが、今のところ理解できているわけじゃない。

CDCクラスの仮想COMシリアルは、実際の通信自体はUSBだ。しかし、仮想COMということで、ボーレート設定があり、実際ボーレート設定が間違っていると、通信ができず文字化けになったりして、通常のシリアル通信と同じ挙動を示す。

シリアル通信をどんな速度設定にしようと、実際の通信はFull-Speed以上であり、どうやってもそれ以上だ。また仮想COMで使用する通信にはハンドシェークがない。通常のシリアルならハードハンドシェーク(RTS/CTSあるいは、DTR/DSR、あるいはその両方)の設定があって結線が必要になるという事実がある。

実際、ボーレート設定などあるがUSBの最高速度で通信していて、ならパケットロストなど通常起こりえないなら、うまく出来ている(つまり速度は関係ない)のではないかという疑問だ。

mbedオンラインコンパイラなくなるって!

mbedからメールが来てる。いつかはこうなると思っていたが、どうなるんだろう、ぼくは・・・

と思ったが、Keil Cloudにmbedアカウントでログインできた。ハードウェアも同じものが出ているし、OS2,5,6の選択もしやすくなってる、エディタも見やすい。改善されているということなのか?プロジェクトは自分でコピーしないといけないようですが、どうやってコピーすればいいのだろう。同じように動くのかな、、という疑問はある。まだ書き込んではいないのですけど・・・

ググる翻訳を掲載

Keil StudioCloudの紹介とMbedオンラインコンパイラの廃止
ジョー・アルダーソン-2021年12月14日

今年の初め、Armは新しいブラウザベースのIDEであるKeil StudioCloudのオープンベータ版を発表しました。 無料で使用でき、強力で最新のエディターが付属しており、その名前が示すように、より幅広いArmCMSISマイクロコントローラーエコシステムとMbedOSをサポートしています。

Replicant Nucleo UNIT1

mbedはずっと、fresscaleが好きでずっとずっとfrdm-KL25zを使ってきて小さいターゲットボードもたくさん作ってますが、あれで終わりにして、Nucleoに変える積もりになっています。なんでかっていうと、一番は、Windows10でのSDAがうまく動かないという点です。自分で使う分にはもうSDA部分はWindows10対応にしてしまっているので困らないですが、人に伝えたり渡したりするときにどうしても躓いてしまいます。また新しいボードを購入したときもそうです。Windows7にするとうまく行くと言うことはわかっているんですが、それを探すのものねー。会社には捨てずに置いてるマシンがありますが。もうすぐ定年だし。

NucleoはIDE部分(ST-Link)を切り離して動作することを確認してから(主に配線ですが)ターゲットボードを作ってみました。うまく動いてるようです。NucleoはF411REを使用します。今回は、Nucleoと同じピン配列にUSBコネクタを追加したものとしました。

テープLED

知らなかったのですけれども、テープLEDは何種類かあるようです。そういうものがあるということは知っていたが、あまり興味もなかったのでよく調べないで「ありますよ」みたいな話を周囲にしていた、Arduinoでできてるんだったらmbedなら特に問題ないでしょう的な感触で考えていましたが、ちょっと、私の手に負えない感じでした。

秋月で販売されているこちらのテープを購入してみました。SK6812使用マイコン内蔵フルカラーテープLED 1m 30LED

SK6812がマイコンでWS2812Bというのが、LED込みの部品ということなのだろうか、、どちらも似たことが書いてある。して、その仕様だがなんでこのように特殊なのだろうか、、1wireで信号を送るために「うまくやってる」ということかしれないがもう少しロジックを考えてほしい(と感じた、すいません。自身の力がないのを人のせいにしております)。

送信仕様は、0と1をパルス幅で表現しておりかつその周期が固定である。(TL+TH=1250μsつまり、800KHz)

USB-Cチェッカ

USB-Cケーブルチェッカなるものを製作しました。USB-CはPD(PowerDelivery)、Type-C、Altモードなど複数の規格が混同しています。ぱっと見ではそれがどれに対応しているのかがわかりません。そこで、端子一本ごとに信号を送って受信することで接続情報を表示できるようにしてみました。

同じようなものは販売されております。(https://bit-trade-one.co.jp/adusbcim/)。さらにこれと同様のものはトラ技で過去に特集があったことや、販売のものと全く同じではないものの、回路図はgithubで公開されていたりします。(https://github.com/aroerina/LimePulse_USB_cable_checker)販売されているものはもう少し高機能で、オリジナルの作者の方は別にいらっしゃるようです(むかしTwittterに流れていたように思います)

Nucleoのレプリカ完成

mbedはずっと、frdm-KL25zを使ってきて小さいターゲットボードもたくさん作ってますが、あれで終わりにして、Nucleoに変える予定です。IDE部分(ST-Link)を切り離して動作することを確認してから(主に配線ですが)ターゲットボードを作ってみました。うまく動いてるようです。

NucleoはF411REを使用します。今回は、Nucleoと同じピン配列にUSBコネクタを追加したものとしました。

mbed:Nucleo

Kinetis(KL25Z)でTarget作ったりしていろいろ使っていたんだが、いまだに、Windows10の問題が解決しない。僕が持っているものは、KL25Zで書き換えてあるからOKなんだけど、新しいものかったらまた?みたいな気持ちが大きくなってきた。

そこで、かなり前から元気になっているSTマイクロのNucleoに鞍替えしようかと・・・たくさん種類が出ていてほとんどがmbed化されている。Win10問題も発生しない。自分が持っているものは、F072RBとL053Rで、どちらもNucleoが欲しかったのではなく、L053はDCモータドライバ基板が欲しくて展示会(テクノフロンティア)に言ってもらってきたもの、F072はUSBPDの勉強するためにSTUSB1600の評価基板についていた。USBがつかえて、ある程度容量もあり、64pinで使えるもの、そしてDigikeyでそんなに高くないものということで、F411をピックアップした

NUCLEO-F411RE

FRDM-KL25ZとWin10

いまだに解決できておらず、、ですね。参考になるページは、複数あるのだが、どれやってもダメですな。そもそも、知らずにWin10につないだ時点でオカシクなっていて、そのあとに、Win10で何やっても復活してくれないってことなんだな。

会社に、Win7のパソコン(評価用に残してある)が残っているので、ダメになったやつは復活してくれるんだが、KL25ZのOpenSDAの新しいの出てないみたいだしね。新しく購入したものがストックで使えないとなると、ちょっと面倒くさいし、あれ、だめだな。

最近見つけたページ(KL25の解決策は書かれてないんだな)