いろいろ試す22
30日は〆のトレランに行くので年末恒例の奴を今やらせていただきます・・・
●フェライトビーズの使いどころ
注:SDMMC/SDIOのCLK信号に対してはまず初めに直列終端を行ってください。
それでもだめなら下記フェライトビーズの使用を考えてください。
ねむいさんはおきぱでSTM32のFatFs移植サンプルを公開してることから「FatFsが動き
ません><」という漠然とし過ぎる困った質問を今でもコンスタントに頂くのですが、
もはやその原因の99.99%が単純な結線ミスとか接触不良が起こりやすいブレッド
ボードで配線30cmくらい引き伸ばしまくって通電してたとかそんなモン動くわけ無い
でしょ的内容だったのですがまた新たに別のクリティカルヘンテコな報告を頂きました。
最短の配線でSTM32F407ZGT6の基板を起こしたにもかかわらず昨今のUHS-1のカード
ではSDIOで認識すらしない、クロックの速度を落としてもダメで昔のUHS表記が無い
Class6とかのカードならOKというこれまた奇怪な不具合だったのです。
STM32のSDIOは1.8VのUHS-1の高速クロックモードには対応しておらず、早くても
HSモード(3.3V/52MHz)ですがHSどころかNSモード(25MHz Max)でもダメとのこと。
ダメなカードも型番を教えてもらったのでPCOnes'sで購入して私も試して見ました。
TranscendのmicroSDHCカード Class 10 UHS-I 600x (Ultimate) なるものです。
謎のMLCアピール・・・。
私が持ってるSTM32F407ZG系の基板は紅牛に無理やりF4を乗っけた基板です。
配線長もなるべく質問を頂いた方と合わせるようにmicroSDソケットを無理やり
とりつけてました。
で、こいつで試すと確かにHSどころかNSモードのクロックでも全く認識しなかった!
念のため別の会社のUHS-1のカードも複数枚試しましたが結構な確率で認識できない
ものが存在していました・・・!UHS無しのClass10表記の奴やねむいさん愛用のATPの
Class6の4GBの奴はエラッタもちのF407系のいんちきHSモードでもバッチリ認識
できてるのですが・・・ひとまず信号の測定に掛かります。
これがATPのmicrosdhcのクロックの波形(NSモード/24MHz)です。
んでもってこっちがTranscendのほうの波形(NSモード/24MHz)。
ATPのよりも信号のふり幅が狭くなおかつリンギングも激しくなってる感がしますね。
波形の測定に関してはGNDリードの影響を抑えるために当然最短にして測定して
います。あとPCオシロのトリガはETSモードにして等価サンプリングレートを
10GHzとしてます。
STM32のSDIOのクロックはパワーセーブにしない限りは常に出っ放しになるので
繰り返し信号として測定でき、精確な波形測定ができるわけです。
話を戻しますが二つの波形の違い、なぜこんなに違うかですがこれはUHS-1のカードは
100MHz以上で動作できるUHSモードで転送する際はNSモードやHSモードよりも高速な
立ち上がり/立ち下がりを当然要求されるわけでそれに合わせてI/Oをこしらえて
いますが、悪い条件が重なったときに信号の反射によってオーバーシュートや
リンギングが激しく出ることになります。
過去のClass表記のみのカードでは高々50MHzまで動けたら良かったので高速な
I/Oを必要とせず、オーバーシュートやリンギングは同条件でもそこまで大きくは
ならない・・・と想定できます。
さて、状態は観測できたので後は対策です。こういうケースの場合はフェライト
ビーズを各信号ラインに直列に入れてやると効果が出るはずです。
いろいろ試してねむいさんの手持ちのフェライトビーズの中ではBLM18BB121SN1Dが
かなり効果があることが分かりました。この対策で認識できなかったUHS-1のカードも
無事見ることができました(NS/HSモード共)。
これが対策後のTranscendのCLKの波形です(NSモード/24MHz)。
リンギングがしっかり抑えられてるのが分かりますね〜。
こんな感じに無理糞つけけております。
念のためTranscendのとは別の認識できなかったUHS-1のカードも試してみましたが
すべて無事認識できるようになりました。ちゃんと対策として効いているようです♥
これより大きい抵抗値の奴ではHSモードでクロックが大きく崩されすぎてダメになって
しまいます。やっぱり程々が大事です。
また、秋月さんのとこで購入できるタイプのフェライトビーズでは特性が少しなだらか
なため余り効果が出ませんでした。とはいえねむいさんが選んだ奴もかなりピーキー
なのでそのまま真似しても多分効果は出ないと思います。
こういった信号の反射の影響度合いは設計するボードごとに大きく変わってくるので
オシロとにらめっこしながらカットアンドトライをしなければならない領域です。
GNSSモジュールの時も言いましたがむやみやたらにフェライトビーズを突っ込み
まくっても逆にノイズやリンギングをパワーアップさせてしまうことになりかねません。
また、オシロのプローブも見たい信号を正しく測定できるようにGNDリードを超最短
にするなどの配慮も必要で開発者としての様々なセンスが問われることになります。
と、ここまで苦労してSDIOの信号波形整て認識できるところまで持ってきましたが、
GPIOが速度面で強化されたSTM32F43x/42x系とかF7系を最初から使っとけば
上記のめんどくさいことをなーんにもやらなくても安定してSDカードを読み書き出来
たりします・・・酷いオチだ・・・。
全然関係ないですが大阪日本橋のPCOne'sでSDカードのついでに買ったスマホ置き台が
STM32F7Discoveryとぴったりフィットできる形状なので重宝してます♥
●GCC ARM Embedded in Launchpadの2015年Q4版が出る!
一年に4回リリースされるLaunchpad GCCの最新版がリリースされています。
今回はついにGCCバージョンが5になりました!
早速新旧比較をしてみたいと思います。まずは同じ条件でビルドした際のバイナリ
サイズ比較です。条件は以下のとおり。
・F7のいつものの20151224版
・SDMMCのクロックはNomalSpeed(24MHz)
・-Ofast,HardFP
・AXIMからフラッシュ実行/SDRAM有効/フォントは内蔵フラッシュに格納
・使用SDカードはAF4GUD、SDFormatter4.0でフォーマット
旧:2015q3版(GCC4.9.3)
arm-none-eabi-gcc (GNU Tools for ARM Embedded Processors) 4.9.3 20150529 (release) [ARM/embedded-4_9-branch revision 224288]
Copyright (C) 2014 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Built Object Informations:
=== Total Binary Size ===
text data bss dec hex filename
0 602096 0 602096 92ff0 main.hex
=== Verbose ELF Size ===
text data bss dec hex filename
599808 2288 821392 1423488 15b880 main.elf
新:2015q4版(GCC5.2.1)
arm-none-eabi-gcc (GNU Tools for ARM Embedded Processors) 5.2.1 20151202 (release) [ARM/embedded-5-branch revision 231848]
Copyright (C) 2015 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Built Object Informations:
=== Total Binary Size ===
text data bss dec hex filename
0 612272 0 612272 957b0 main.hex
=== Verbose ELF Size ===
text data bss dec hex filename
609984 2288 821392 1433664 15e040 main.elf
バイナリサイズは2015q3版より10kByteほど増えてますね・・・
今度は実行処理速度比較です。SDRAMの時と同じようにlibjpegの展開時間の比較を
行ってみました。
旧:2015q3版(GCC4.9.3)
新:2015q4版(GCC5.2.1)
・・・イケてるじゃないですか・・・(セルピコ顔で)
なんか去年もモズグス編のセルピコさんになった気がしますが、最適化の悪影響が
及んでるかもしれないのでもうすこし様子見して安全性を確かめたいとおもいます。
丁度明日は今年最後のトレランに行くので屈作のSTM32Primer2GPSTr@ckerに2015q4版で
ビルドしたバイナリを書き込んで試してみるつもりです★
●Firefox版赤福が署名に対応する
虹裏関連のお話ですがFirefox版赤福spが署名チェックに対応することになりそうです
FirefoxはVersion44から拡張の署名が強制になり署名が無い拡張は撥ねられて
動作不可能になるとアナウンスされており署名が無い赤福spが使えなくなると
言われていましたが・・・作者の方ももう気付かれて対処されるようなので等分の間は
安泰でいられると思います♥
この調子で合間合間にも対応してくだち・・・
●年末恒例のねむいさんFAQ
Q:わたしは(何らかの下らない他人の自慢話なので省略)
なぜOpenOCDにこのバグが組み込まれてしまったか考えてみてください。
↑(原文ママ)
A:ねむいさんこの質問風八つ当たりにうっかりクソ真面目に答えてしまいました。
ウブなねむいさんはこのバグの部分とは無関係だったにもかかわらずソースコードの
更新履歴を丹念に調べエンバグされた経緯と対策まで連絡してあげました。もちろん
質問された
おりませんが、実はkinetis.cにある致命的な"このバグ"はまだ修正されておりません
が、
次に同じようなこと聞かれたら適切な返事を返してあげようと思います。
バカめと。
↑20160212追:
kinetisドライバに真っ当にご助言いただいた方々にこれは俺の事かとお叱りの
メールを幾つもいただいてしまいました。誤解を招きまことに申し訳ございません。
致命的なバグはとあるぱちもんデバッガ使ったときに発動するのですが、
ねむいさんに対してそういう情報隠して正規品使ってると秒速でバレる嘘ついて
"動くようにしろ""対処してください"とかいって情報聞き出してくる奴は絶対に
許さないのでそういった御仁たちは拙者尽く伊達にして返すでござる。
Q:ねむいさんってツイッターとかしてないんですか?
所詮は批判を恐れ安全な場所から一方的に意見を言い放つことしか出来ない
ティキンなのですか?
A:それはイエスでもありノーでもありますのだわ・・・(第五ドール風に)
ねむいさんはいろいろあってツイッターやめた代わりにこのねむいさんのぶろぐを
立ち上げました。かれこれ7年位前のはなs・・・グハッ!!!!
Q:ねむいさんってLINEとかしてないんですか?
A:ま だ ガ ラ ケ ー 使 っ て ま す
Q:スマホでピッ!簡単電子工作★
A:ま だ ガ ラ ケ ー 使 っ て ま す
っ て 言 っ て る で し ょ コンチクショー
(以下ほぼ実際にあったやり取りですだいぶ前の話ですがもう時効だから書きます)
Qr:鶴岡工場(旧NECエレ系列工場)閉鎖ね
A:あっそ良かったねおめでたうございまs・・確かここって旧NECの・・・
Qr:ついで(?)にあんたのところのASIC生産中止だね
A:何ですって・・・!?
Qr:この前のが最終ロットね。今までご利用いただきありがとうございますを
A:あ”!?(CV柴田理恵)
Qr:代わりに弊社のSmar●tAnalogをご採用願います(営業スマイル)
A:カエレヤ!!
(ここでルネサスと完全に手が切れPSoC5を採用しかけたが・・・)
Qp:gff...ねむいさんねむいさんそのセミカスタムのASIC、こちらでも
起こせますよ・・・(はげたかのような目で)
A:オゥこれはありがたい・・・
Qrohm:ルネサスさんからのディスクリートデバイスの置き換え表ありますよ・・・
・・・gff(はげたかのような目で)
A:オゥこれはありがたい・・・
ディスクリートデバイスは旧NECエレでがっちり固めてたからヤバかったです。
R○HMさん(○は伏字)ありがたう!!!
今は東芝半導体がチャレンジ()の成果もあってRenesasに合体しそうでやばそう
ですね・・・東芝さんのもかなり使ってるんですけぉ・・・
さぁそれはおいといて明日も早いから寝ましょう・・・Zzz・・・
↓としあきくんからのリクエスト↓
Q:カレンと金剛の声の区別が付かないデース
A:ネムイサンも区別付かないデース(CV:柴田理恵)
・・・と言うのはおいといておすぎさん(悪堕ち)とピーコさん(純粋悪)に同時に襲われたら
ピーコさんと間違えて悪堕ちした無罪のおすぎさんをうっかり攻撃してしまうくらい
"うつけ"です・・・
Q:ねむいさんって雑誌に投稿したりしないの?
A:どのジャンルのこといってるのか分かりかねますができたらとっくにやってます。
そいえば2014年初夏にC9出版のドメインのメアドで「記事作成を手伝って
みませんか?」という何か目的をぼかした内容のしかも文語体と口語体が混じっておまけに
芝まで生やしたメールを頂いたのですがちょっと怪しかったのでCQ出版の
お問い合わせにメールで(差出人の方の名)さんはそちらに在籍されていますか?
とたずねたのですが問い合わせをしてからはや約1年と8ヶ月、何の音沙汰も
ありません。問い合わせついでにトラ技の誤植を指摘したのがいけなかったのでしょうか・・・
やっぱし本当にフィッシング目的の偽装メールだったかも。
Q:ブラギガスを検索したら諸星きらりが何故かサジェストに出てきました。
虹裏メイドのねむいさんはなにか知ってそうな顔してますが・・・洗いざらい吐け
A:にょわー(野太い無理やりな高い声で)
↑もし隣からこんな絶叫きらり語聞こえたら速攻警察屋さん呼びますよぅ!!
-
免責・連絡先は↑のリンクを
↓SNSもやってます↓
powered by まめわざ- ARM/STM32 (117)
- OpenOCD (27)
- ARM/NxP (34)
- ARM/Cypress (5)
- ARM/Others (3)
- ARM/Raspi (1)
- AVR (13)
- FPGA (4)
- GPS/GNSS (19)
- MISC (80)
- STM8 (2)
- Wirelessなアレ (16)
- おきぱ (1)
- ブラウザベンチマーク (28)
- 日本の自然歩道 (25)
- STM32U0はぢめました
⇒ ねむい (08/07) - STM32U0はぢめました
⇒ ひかわ (07/28) - STM32H5を使ってみる3 -待ち受ける初見殺しの罠たち-
⇒ ねむい (05/17) - STM32H5を使ってみる3 -待ち受ける初見殺しの罠たち-
⇒ どじょりん (05/16) - STM32H5を使ってみる3 -待ち受ける初見殺しの罠たち-
⇒ どじょりん (05/16) - いろいろ試す61(と今年の反省会)
⇒ ねむい (01/02) - いろいろ試す61(と今年の反省会)
⇒ ひかわ (01/02) - いろいろ試す61(と今年の反省会)
⇒ ひかわ (01/01) - STM32H5を使ってみる3 -待ち受ける初見殺しの罠たち-
⇒ ねむい (12/31) - STM32H5を使ってみる3 -待ち受ける初見殺しの罠たち-
⇒ ひかわ (12/31)
- September 2024 (1)
- August 2024 (1)
- July 2024 (1)
- June 2024 (1)
- May 2024 (1)
- April 2024 (1)
- March 2024 (1)
- February 2024 (2)
- January 2024 (1)
- December 2023 (4)
- November 2023 (2)
- October 2023 (2)
- September 2023 (1)
- August 2023 (2)
- July 2023 (1)
- June 2023 (2)
- May 2023 (3)
- April 2023 (1)
- March 2023 (1)
- February 2023 (1)
- January 2023 (1)
- December 2022 (2)
- November 2022 (1)
- October 2022 (1)
- September 2022 (1)
- August 2022 (1)
- July 2022 (1)
- June 2022 (1)
- May 2022 (1)
- April 2022 (1)
- March 2022 (1)
- February 2022 (1)
- January 2022 (1)
- December 2021 (2)
- November 2021 (2)
- October 2021 (1)
- September 2021 (1)
- August 2021 (1)
- July 2021 (1)
- June 2021 (1)
- May 2021 (1)
- April 2021 (1)
- March 2021 (1)
- February 2021 (1)
- January 2021 (1)
- December 2020 (3)
- November 2020 (1)
- October 2020 (1)
- September 2020 (1)
- August 2020 (1)
- July 2020 (1)
- June 2020 (2)
- May 2020 (1)
- April 2020 (1)
- March 2020 (1)
- February 2020 (1)
- January 2020 (1)
- December 2019 (3)
- November 2019 (1)
- October 2019 (1)
- September 2019 (2)
- August 2019 (1)
- July 2019 (1)
- June 2019 (1)
- May 2019 (1)
- April 2019 (1)
- March 2019 (1)
- February 2019 (1)
- January 2019 (1)
- December 2018 (3)
- November 2018 (2)
- October 2018 (1)
- September 2018 (1)
- August 2018 (1)
- July 2018 (1)
- June 2018 (1)
- May 2018 (1)
- April 2018 (2)
- March 2018 (1)
- February 2018 (1)
- January 2018 (1)
- December 2017 (2)
- November 2017 (2)
- October 2017 (1)
- September 2017 (1)
- August 2017 (1)
- July 2017 (1)
- June 2017 (1)
- May 2017 (1)
- April 2017 (1)
- March 2017 (2)
- February 2017 (2)
- January 2017 (2)
- December 2016 (7)
- November 2016 (2)
- October 2016 (2)
- September 2016 (1)
- August 2016 (1)
- July 2016 (1)
- June 2016 (1)
- May 2016 (2)
- April 2016 (1)
- March 2016 (2)
- February 2016 (1)
- January 2016 (1)
- December 2015 (3)
- November 2015 (1)
- October 2015 (3)
- September 2015 (2)
- August 2015 (2)
- July 2015 (3)
- June 2015 (3)
- May 2015 (4)
- April 2015 (2)
- March 2015 (4)
- February 2015 (1)
- January 2015 (3)
- December 2014 (3)
- November 2014 (2)
- October 2014 (1)
- September 2014 (2)
- August 2014 (2)
- July 2014 (3)
- June 2014 (2)
- May 2014 (1)
- April 2014 (1)
- March 2014 (4)
- February 2014 (4)
- January 2014 (3)
- December 2013 (5)
- November 2013 (4)
- October 2013 (3)
- September 2013 (2)
- August 2013 (2)
- July 2013 (2)
- June 2013 (3)
- May 2013 (2)
- April 2013 (2)
- March 2013 (2)
- February 2013 (2)
- January 2013 (3)
- December 2012 (4)
- November 2012 (2)
- October 2012 (2)
- September 2012 (4)
- August 2012 (1)
- July 2012 (3)
- June 2012 (2)
- May 2012 (3)
- April 2012 (3)
- March 2012 (2)
- February 2012 (3)
- January 2012 (3)
- December 2011 (5)
- November 2011 (3)
- October 2011 (2)
- September 2011 (2)
- August 2011 (2)
- July 2011 (2)
- June 2011 (2)
- May 2011 (2)
- April 2011 (2)
- March 2011 (2)
- February 2011 (2)
- January 2011 (3)
- December 2010 (7)
- November 2010 (1)
- October 2010 (1)
- September 2010 (1)
- August 2010 (3)
- July 2010 (4)
- May 2010 (1)
- April 2010 (2)
- March 2010 (2)
- February 2010 (2)
- January 2010 (3)
- December 2009 (3)
- November 2009 (8)
- October 2009 (7)
- September 2009 (5)
- August 2009 (4)
- July 2009 (6)
- June 2009 (7)
- May 2009 (14)
- January 1970 (1)
Copyright(C) B-Blog project All rights reserved.