質問に対するコメントの説明で言及したアプライアンスは、Windows PCを使用することはないため、その場合、低レベルのWindowsプログラミングは必須ではありません。実際、それは望ましくないと思います。プロトタイピングはスピードです。潜在的な投資家や経営陣、その他の意思決定者に見せるために、どれだけ早く何かをまとめることができるかということです。
プロジェクトの要件が完全に洗い流され、それが最終的なプロジェクトの成果物 (おそらくサーバー/PC 監視ツール? ) の絶対要件であることがわかるまで、低レベルの C および Win32 API で余分な時間を費やしたくないでしょう。それまでは、開発のスピードが必要です。幸運なことに、業界には、あなたが説明したようなハードウェアのラピッド プロトタイピングと開発のためのツールがあります。
組み込み開発によるプロトタイピングに対する私の好み
開発者としての私の意見としては、.net マイクロフレームワーク (.netmf) が好きなのは、単に私が Microsoft .Net 開発者であり、既存のスキルの多くを転用できるからです。そのため、Visual C# Express 2010 (必要に応じて無料) で C# を使用して、FEZ マイクロコントローラーでプロトタイプを作成します。すばやく簡単に、プロジェクトの核心部分に数分で取り組めます。
開発者としての経験が異なる場合は、BASIC、Java、またはその他の言語を使用してプログラムされたマイクロコントローラーを探して、コアスキルセットを再利用することで開発速度を向上させることができます.
質問への対処 報奨金のコメント
組み込みソフトウェアの驚くほど多くの部分は、深く組み込まれたターゲットではなく、デスクトップ コンピュータで開発できます。この「ターゲット システムのボトルネック」の回避は、正しく行われれば、生産性を桁違いに向上させる可能性があります。ただし、デスクトップで組み込みソフトウェアを開発するには、ディスプレイ (セグメント化され、ますますグラフィカル化されている)、LED、ノブ、ボタンなどの UI コンポーネントをシミュレートする必要があります。デスクトップ Windows で開発およびテストする組み込みコードと簡単に統合できるように、C のプレーンな Win32 API で記述された UI コンポーネントを探しています。
私はプロとして 4 年以上フルタイムで組み込み開発を行っており、その間もパートタイムで何年も働いてきました。あなたが上で言ったことはある程度真実ですが、時間やお金を節約することはできないため、この戦略の動機について誰もが混乱しています. 私たちは何年もかけて、理論的にはプロトタイピングの時間を節約できるこの会社のハードウェア デバイス用の Windows エミュレーターを作成しようとしました。それは常に苦痛であり、スケッチした UI 描画仕様から実際の開発に直接移行する場合よりも、エクスペリエンスをエミュレートするために多くの時間を費やしました。エミュレーターはハードウェア開発に遅れをとっており、ハードウェアがリリースされてから 6 か月以上経過するまで最新の機能をサポートしないことがよくありました。ほんのわずかな価値で多くの余分な作業が必要でした。
コア プロジェクト自体のコードを実際に記述するよりも、再利用できない win32 プラットフォーム コードとハードウェア エミュレーション コンポーネントの開発により多くの時間を費やすことになります。これは、潜在的なサードパーティ開発者に「付加価値」ツールとしてこのエミュレータを提供するハードウェア ベンダーにとってのみ意味がありますが、新しいハードウェア設計のプロトタイピングには意味がありません。
Visual C# Express 2010 のような FEZ マイクロコントローラーを備えた最新の開発環境では、コンパイルして、プロジェクトの出力をマイクロコントローラーにプッシュし、デバッグを開始することができます。これは、LCD や LED をエミュレートする C で低レベルの Windows アプリをコンパイルして実行するよりも高速です。スイッチなど...したがって、「生産性を1桁向上させる」というあなたのコメントは、最新のツールにはもはや当てはまりません。(過去10年ほど前のことかもしれません。)
組み込みハードウェアを PC で視覚的にシミュレートしたい場合は、Adobe Flash などを使用して UI をモックアップします。ただし、プロトタイピングしている最終的なデバイスが Windows を実行しない場合は、Windows 用にコーディングしてコードを複製しないでください (そうなる可能性はありますが、あなたはそうは言いませんでした)。低レベルの C や win32 APIではないことは明らかです。
電子機器用の StackExchange を使用しますか?
これは開発者向けのサイトであるため、特定の組み込みハードウェアのメリットに関する議論はあまり関係ありません。プロトタイピングにマイクロコントローラーのエレクトロニクス ( Arduino、FEZ、Propeller、Basic Stamp、Pololuなど) を使用することに再び焦点を当てることにした場合は、 stackexchange forelectronics に関するエレクトロニクス ハードウェアのアドバイスを求めることができます。あなたが概説したように、これらのプラットフォームのほとんどは、LCD、LED、ボタン、およびインターフェイスのプロトタイピングを容易にするように設計されていると言えます。通常、ビルド済みのモジュールを数分で組み立てることができ、プロジェクトのコーディングを開始する準備が整います。ここで時間を大幅に節約できます。