CH341A、USB-UARTコンバーターおよびI2C / SPIプログラマー5ドル

むかしむかし、狭い円で広く知られているFTDI FT232Hチップとそのさまざまなアプリケーションについての記事をいくつか書きました。 DIY用のFT232Hは誰にとっても良いものでしたが、いくつかの欠点もありました-LQFP48ケースは手動はんだ付けには比較的不快です(真のハードコア愛好家にはQFN48に別のオプションがあり、 はんだ付けしたくない、 DIHALT私に嘘をつかない)、元のチップの価格は250からですルーブル、偽のチップ上のドライバー問題の可能性、およびいくつかの機能的な冗長性。たとえば、誰もがJTAGサポートを必要とするわけではありません。



いつものように、解決策は中王国から来ました。数年、他の人のチップの創造的な適応を率直にばらばらにした後、彼らは最終的にSOP-28パッケージのWinChipHead CH341Aをリリースしました(DIPではなく、問題なくはんだ付けされました)。



チップの生産は2006年頃に開始されましたが、このチップのI2C / SPIプログラマーがヨーロッパのEBAYに殺到し、売り手が平均価格で3.5ユーロからの価格を提供した2014年に初めて注目されました50ユーロのMiniPro TL866Aのような優秀な中国人プログラマーは、抵抗できないほど魅力的なオファーであることが判明しました。



この中国のチップが1ドルで何ができるのか、さらに支払う価値があるかどうかにまだ興味があるなら、違いが分からないなら、カットをお願いします。



簡単にチップについて



CH341は、USB 2.0からUART、EPP、I2C、およびSPIへの多機能コンバーターです。

UARTモードでは、RX / TXだけでなく、他の制御信号もサポートされているため、チップ上でUSBモデムを作成できます。 パラレルポートモードでは、EPPインターフェイスとプリンターエミュレーションが実装されます(これにより、追加のドライバーを作成せずにLPTプリンターをUSBに直接接続できます)。 シリアルモードはI2CおよびSPIをサポートします。



チップには最小限の追加のストラップ(外部クオーツと複数のコンデンサ)が必要です。 外部EEPROMを使用して、カスタムベンダーID、デバイスID、およびいくつかのチップ設定を保存することができます。 5 V(内蔵LDOレギュレータ経由)または3.3 Vからの電源供給。



SOP-28パッケージのCH341Aに加えて、SSOP-20にはCH341TとCH341Hの2つのオプションがあります。1つ目はSPIサポートを奪われ、2つ目はI2Cであるため、この記事では検討しません。



可能な用途



FT232Hについての記事で説明しますが、繰り返しますが、CH341Aでは、FT232HのI2Cのように突然の水中の急上昇があった場合、UARTインターフェイス全体ではなく、TXおよびRXのパフォーマンスのみをチェックしたことに注意してください -コメントを書いて、私はそれを記事に追加してうれしいです。



完成品



中国の業界では、このチップ上で万能のI2C / SPIプログラマーの1つのバージョンを提供しています。



メーカーの保証によると、3.5ユーロで得たオプションは、24xx(I2C)および25xx(SPI)シリーズのチップをプログラムできます。これらのチップは、ZIFソケット(DIP-8-300パッケージにある場合)に挿入されるか、プレス/はんだ付けされますボードの背面のランディングパッド(SOIC-8またはSOIC-16の場合)に接続するか、ワイヤで接続します。 UARTとSPIのみが櫛に運ばれ、必要に応じてI2CをZIFソケットから取り出す必要があります(この欠陥は新しいバージョンで修正されていますが、より高価です)。





プログラマ回路は、組み込みのものの代わりに外部LDOコントローラを使用しているだけで、 データシートのリファレンス回路とは異なります。明らかに、組み込みの信頼性はあまり高くありません。 私のコピーでは、すべてがすべてに保存され、ボード上のCH341Aを除き、2個のLED(電源と実行)、2個の抵抗、5個のコンデンサ(クォーツ用に2個、LDOレギュレータ用に3個)、12 MHzクオーツ、 1Åの LDOレギュレータAMS1117があります DIP-8-300パッケージの2つのチップ用のZIFソケット。 設定から、デバイスIDを変更しながら、プログラマーをI2C / SPIとUSB-UARTの間で切り替える単一のジャンパーがあります。





Windows 8.1では、両方のモードのドライバーがネットワークから自動的にプルされ、Linuxでは数年にわたってカーネルに含まれていました。



Windowsでのプログラミングには、特定のSkyGzの著者の中国のソフトウェアが使用されます。これは、ほとんどの売り手がEBAYで違法に配布していますが、これで動作が停止することはありません。 ここにリンクがあります-malthus.mooo.com/download/file.php?id=893-後で母親のオウム与え、目の目隠しを修正することを忘れないでください。



Linuxには、オープンプロジェクトch341prog (SPI)とch341eepromtool (I2C)がありますが、どちらも非常によく機能しますが、flashromの両方のモードのサポートを追加するのは良いことです(look、 xvilka民生プログラマーは汚れの価格ですが、FRはまだ方法を知りません)



OnSemi 24C16 I2CチップおよびWinbond W25Q64CV SPIチップ上のWindows 8.1 x64およびXubuntu Core 15.04 x64のプログラマーをテストしました。I2Cの操作には数秒かかります(チップ上で2 KBのメモリで必要に応じて読み取ることができるため) ほとんど手で書きます )、しかし8メガバイトのSPIチップは1分で読み取られ、2で書かれます。これはもちろん記録からはほど遠いですが、5ドルのデバイスには長すぎません。



おわりに



JTAG、数万種類のチップ、ICSPをサポートする必要がない場合は、ルーターからPCやサーバーまでのさまざまなデバイスのファームウェア用のクイックバックアップ/復元ツールが必要です。CH341Aプログラマーを購入することをお勧めします。 そして、そのサポートがflashromに追加されると、非常に良くなります。



一方、デバイスの設計にCH341Aを使用しません。 一定の使用での信頼性にはいくつかの疑念が生じ、疑問が生じた場合、中国国外からのチップメーカーサイトでさえ毎回開かれるため、質問する人はいません。



読者の注意に感謝し、ファームウェアが落ちないようにしてください。



All Articles