3

組み込み C プログラミングは初めてなので、アドバイスが必要です。

組み込みシステムの画面の下にメニュー構造を作成しようとしています。OS コードと描画/メニュー ライブラリは準備できていますが、このシステムをどのように設計すればよいかわかりません。

それは持っているでしょう:

  • メニューとサブメニュー
  • 一部のメニュー項目に入る前にユーザーが認証できるパスワード画面
  • そしてその下のスクリーン。

機能するコードをいくつか書きましたが、それでも手続き型のスパゲッティ コードを書いているように感じます。また、組み込み C システムは初めてなので、コード内でクラスまたはオブジェクトを使用できるかどうかわかりません。誰かがこれを行う正しい方法を教えてくれたらありがたいです。ところで、私は他のプログラミングの経験があるので、技術的な話を自由にしてください。;)

ところで、メニューコードは次のように構成されています。

menu myMenu;
entry* myMenuEntries;
int selection = 0;
myMenuEntries[0] = [entry definer code];
...
myMenu.entries = (entry *) myMenuEntries;
selection = DisplayMenu(myMenu);
switch(selection){
   case 0: exit(); break;
}

で使用されているように、埋め込み c でオブジェクトを作成するにはどうすればよいmyMenu.entriesですか?

4

1 に答える 1

3

あなたが可能だと思うように、ここでは間違いなくオブジェクト指向Cを使用します。スタック オーバーフロー時に C で oop を実行する方法については、多くの参照があります。構造体からクラスを作成し、多態性が必要な場合にオーバーライドできるメンバー関数として関数ポインターを使用します。

たとえば、画面がロードされたときに何かを初期化するために、各画面に onEnter() を設定できます。また、任意の x、y 座標で自分自身を描画する方法を知っている文字列、プリミティブ、画像などを取り込める描画可能クラスを作成できます。 . 画面上のオブジェクトのリスト、それらの座標、およびコンテンツで構成される標準の画面オブジェクトを使用することもできます。これらは、大きなテーブルでコンパイル時に初期化することもできます。

(私は C と ASM を使用して DSP でこれらすべてを実行しました)

これを行うことができる既製のライブラリもあります。私はミクリウムがそれを持っていることを知っています。私は自分の携帯電話を使用しているか、Google で検索してリンクをここに配置します。

于 2013-02-16T20:31:55.083 に答える