Raspberry Pi pico part3
空海は金になる仕事していたから最高の筆ばかり使っていたが
安物の筆だろうが感動させる書を書けた
これが転じて
「弘法筆を選ばず」
になる
背景知るとおもいしろいよね
禿げなのに! StampとかXiaoとかあるけど
RP2040-Zeroがバランス的にいい感じ。
安いし。 picoはmicropython使った例が多すぎる、漢は黙ってgcc
無線のNTPサーバとかRTCが追加部品なしにサクッと作れて俺は好きだ pico に無線は付いてないだろ。pico Wか?
ESP32でも出来ると思うが。 >>65
元の文読んでそれが出てくるならもう何にも言う事ないわ >>68
初めはESP32で作ったんだがwifi使った瞬間電力ガッポリ持ってかれて
もとの回路に影響が出た、picoはwifi通信中でも省電力 第章1、第章2て………
どんなポンコツ翻訳AIに食わせたんだ
日本人が誰も噛んでないプロジェクトだから仕方ないが >>73
これなぁ PDF作るアブリのテンプレートの章立て解析部分のバクだよ。日本語の多くのPDF中身観てご覧。 RP2040のPIOに関する質問はここで良いでしょうか。
4x2ブロックのモジュールが有りますが、4個の外部SPIデバイスを共通のクロック、CSで動作させることは可能でしょうか。
配線を減らすために4個のSPIデバイスのCSとCKをそれぞれ1本にまとめたいのです。
例えば4個のSPIモジュールを同時にスタートしてCSとCKを共通にするとか、
1個をマスターにして他のモジュールはマスターからCSとCKをもらうとかできるでしょうか。 説明不足でしたが4個(最大8個)のデバイスを全速力で読みたいというのもあります。
普通はCS以外はパラに繋いでCSで選択すれば良いのですがデータ線だけ分けてPIOを使って同時に並列で読めないかということです。 具体的に何Mbps出したいの?DMAによる引き取りはバス調停も含めまにあうの?
バス調停はおそらくラウンドロビンだろうし理論値に迫るのは難しいと思うけど 50kHzサンプリングのADC4個をできるだけ早く回そうとしています。
約20uSごとに4個のデータを取り込めば良いのでソフトは間に合うと思っています。
あとは4系統のPIOで同時にヨーイドンでSPIでデータを読めば良いと思うのですがそこがまだ良く分かっていません。 RP2040がCLKとCS出すんでしょ?
同時に受ければいいじゃない。
SPIならタイミングはCLK同期だからデータ同時に送られてくる。
PIOで受けてシリパラする時間があるかはともかく。
本来ならFPGAだね。バッファにも出来るし。 PIO使って全速でって書いてあるからnsオーダーの話かと思ったぜ
数十usオーダーならクロックエッジで割り込み掛けてCPUが引き取る実装でも間に合いそう
どうしてもPIOを使いたいなら
ttps://github.com/raspberrypi/pico-extras/tree/master/src/rp2_common/pico_sd_card
この辺りは参考にならないかな? いろいろありがとうございます。
50kHzサンプリングで1ワード16-20クロックなのでクロックは約1MHzです。
SPIを8系統読みたいのでさすがにソフトだけでは無理かと思います。
RP2040のPIOは32bitシフトレジスタ+32bit4ワードの送受バッファというのが8系統有るので複数SPI同時読みには打ってつけかと思います。
PIO同士の同期とかがまだ良く分かってないのですが多分使えそうに思います。 アリからメモリ16MBのコピー品を買ってみたけど、やっぱり中華マイコンはだめだ
blinkが書き込めて動作するから大丈夫なんだろうと思っていたら全然だめ
usb関係がおかしく、uf2ファイルを書き込んで再起動すると、usbデバイスとして認識されなくなる
led_fadeやhello_pioは動作しているからusb通信しないならスタンドアローンで使えるっぽいが
usbcapとwireshirkを使ってパケットキャプチャして調べてみたところ、get deviceと
get configurationまではうまくいっているが、set configurationで失敗しているように見える
アドレスもセットされてないようだし
エニュメレーションに失敗するのは、バグってるブートローダを書き込んでいるからなのか?
それとも単に、ディスクリプタをミスって作ったからなのか? 公式が出してるpico-examplesのプログラムをコンパイルして作ったuf2でusb関連が動作しないんだから、uf2の問題じゃないね blink.uf2がフラッシュromにきちんと書き込めて、再起動後ledがチカチカしとるんだから問題なくコンパイルできてるでしょ うちはArduino IDEでその現象がたまに出るけど
だいたい発生パターンがわかってるのでさっさとリセットして使ってるけどな
要らないならくれ Interface誌でラズパイ1picoでハイレゾDAC作ってたけど、音質はどんなもん? 記事を知らないけど、I2S DACのチップによるんじゃないの >>96
専用DACチップ使うんじゃなくて、RP2040自体をソフトウェアでDACにするの。 一部の連載しか読んでないからよくわかんないんだけど、高精度を追求する割にアナログ回路の部分の設計がどうもねえ...
IV変換の差動回路に1%精度の抵抗とか10%精度のコンデンサ使ったら結局精度出せないんじゃないのかと思うんだが PDMからオーディオのアナログ値を得るのに、抵抗コンデンサの精度ってどれぐらい必要なんだろう。
絶対DC値を得るためのDACなら、周辺回路のドリフトとか温度特性とか問題が大きくなりそうだけど。 >>99
物を知らないというのは恐ろしい
差動回路を大きなCMRで使おうと思ったらとんでもない精度の抵抗が要求されるんだがね
理想オペアンプやソース側の出力インピーダンスが完全にバランスしていることを仮定しても0.01%精度の抵抗を使ったってCMRは80dbくらいしか出せない
詳しいことはCQ出版の「OPアンプ回路の設計」に書かれてるから読んでみるといいよ
1%精度の抵抗じゃ合わせ込みしない限り16bit精度なんか出ないよ 本が買ってないからWebで見れる「ハイレゾ&I2S伝送対応!新 ラズパイPico DACの製作」の
ブロック図の範囲でしか実際の回路を想像できないんだけど
PDM -> LPF -> OPAmp(ボルテージフォロワ) → 出力
この回路なら抵抗に精度必要な個所無いと思うの >>102の人は、差動入力回路の一方がほぼ固定の場合でも同じようなことを言いますか? この構成だとCMRはほとんど関係無いよね
ローパスの定数もシビアではない
差動PWMにしてるようだから抵抗の精度が偶数次歪に影響するけどそれもこの構成だと無視できるレベルかな PDMを復調するLPFの定数って多少ずれてもfcが変化するだけだし大勢に影響なくないか 物知りな >>102 は、我々の知らないことを知ってるんだろう。
教えてくれるといいんだが。 I2S DACは中華基板のPCM5102Aが安くて良く動くので
とりあえずラズパイでDACを使いたいならその手も プログラムばっか書いててマジの電子工作素人なので殴らないでほしいんですけど
2台のラズピコを使うために1本のUSBケーブルのみ使いたいときって,こういう風にVBUSから供給しちゃって大丈夫なんですかね?
ttps://imgur.com/a/aAcRm2W 回路図見たけど,供給先のラズピコのUSBホストを使いたいので,供給先のVBUSに入れる必要がありそう…? VBUSはUSBからの電圧にそのまま直結されてるからそのまま繋げばいいよ