10

GPIO と、それらが組み込みシステムで使用される理由を理解するのに役立ついくつかの優れたリンク/ソースを [無駄に] 探し回っています。誰か教えてください。

4

4 に答える 4

21

有用なシステムでは、CPU は、ユーザーに提示される光や音、またはシステムの他の部分との通信に使用される電気信号など、外界と相互作用する何らかの方法を備えている必要があります。GPIO (汎用入力/出力) ピンを使用すると、CPU の外部からプログラムの入力を取得したり、ユーザーに出力を提供したりできます。

GPIO を入力として使用する例:

  • ボタンの押下を検出する
  • 外部デバイスからの割り込み要求を受け取る

GPIO を出力として使用する例:

  • LEDを点滅させる
  • ブザーを鳴らす
  • 外部デバイスの制御電源

双方向 GPIO または一連の GPIO の良い例は、SoC がネイティブに提供していないプロトコルを "ビットバン" することです。たとえば、独自の SPI または I 2 C インターフェイスを作成できます。

于 2011-02-13T23:14:41.487 に答える
7

答えが見つからない理由は、おそらく、組み込みシステムが何であり、何をしているのか、あるいは実際にデジタル電子システムについて何かを知っているのであれば、答えはあまりにも明白すぎて書き留められないからです。つまり、実際に機能する組み込みシステムを実装するまでには、それらが何であるかをすでに知っている必要があります。

GPIOピンは、少なくとも2つの状態のデジタルロジックI/Oです。ほとんどの場合、それらの一部またはすべてが割り込みソースである可能性もあります。これらの割り込みには、立ち上がり、立ち下がり、デュアルエッジ、またはレベルトリガーのオプションがあります。

一部のターゲットでは、GPIOピンに構成可能な出力回路があり、たとえば、外部プルアップを省略したり、オープンコレクター出力を必要とするデバイスに接続したり、場合によっては高周波ノイズのフィルタリングを提供したりすることができます。グリッチ。

于 2011-02-14T21:11:28.003 に答える
4

ほとんどの組み込みシステムでは、外部刺激をデジタルレベルのロジック電圧に変換するさまざまなデバイスの状態を感知する最終的な責任はプロセッサにあります (たとえば、ボタンが押されるとピンが Low になり、それ以外の場合は High になります)。論理レベルの電圧を直接動作に変換する制御デバイス (たとえば、ピンがハイの場合はライトが点灯し、ローの場合はオフになります)。以前は、プロセッサには汎用 I/O がなく、代わりに共有バスを使用して、I/O 要求を処理し、外部回路の状態を設定または報告できるデバイスと通信する必要がありました。このアプローチには利点がまったくないわけではありませんが (1 つのプロセッサが共有バス上の何千もの回路を監視または制御できる)、実際の多くのアプリケーションでは不便でした。

プロセッサは、4 線式 SPI バスまたは 2 線式 I2C バスを使用して任意の数の入力と出力を制御できますが、多くの場合、プロセッサが監視または制御する必要がある信号の数は十分に少なく、一部の信号をチップ自体で直接監視または制御するための回路を単純に組み込む方が簡単です。専用のインターフェイス ハードウェアには出力専用ピンまたは入力専用ピンがあることがよくありますが (ハードウェア インターフェイス チップを選択する人は、監視する必要がある信号の数と制御する必要がある信号の数を知っています)、特定のプロセッサ ファミリを使用することもできます。たとえば、4 つの入力と 28 の出力を必要とする一部のアプリケーション、および 28 の入力と 4 つの出力を必要とする他のアプリケーション。

于 2011-02-16T18:57:08.510 に答える
2

私はあなたがそれを後ろに持っていると思います。GPIO はエレクトロニクスのデフォルトです。プログラム可能なピン、信号です。すべてはこれらで構成されています。プロセッサの場合、専用周辺機器は特殊なケースであり、より限定された機能が必要であることがわかっている場合の追加機能です。

チップ メーカーの観点からは、ユーザーが何を必要としているかを正確に把握していないことが多いため、チップ上に正確な周辺機器を作成することはできません。代わりに一般的なものを作成します。多くのアプリケーションは非常にまれであるため、特定のチップの市場はありません。できることは、GPIO を使用するか、特定のハードウェアを自分で作成することだけです。また、すべての (未使用または未使用の可能性がある) ピンは GPIO に変換する価値があります。汎用性と再利用性は、プログラマブル チップのほぼすべてのポイントです。そうでなければ、ASIC を作成するだけです。

特に適した用途:

  • システム内の部品 (チップ) をリセットする
  • スイッチ、キーパッド、ライトへのインターフェース (ピン/信号は 1 つしかありません!)
  • リレーや半導体スイッチによる負荷制御(オンオフ)
    • ソレノイド、モーター、ヒーター、バルブ…
  • 単一シグナルから割り込みを取得する
    • サーモスタット、リミット スイッチ、レベル検出器、警報装置...

ところで、パララックス プロペラには実質的に GPIO ピンしかありません。周辺機器はソフトウェアで作られています。多くの用途で非常にうまく機能します。

于 2012-03-23T14:28:56.687 に答える