ISIS Proteus モデリング システム。 素早いスタート。 Proteus マイクロコントローラーの動作シミュレーション: 可変抵抗器を動かす方法

確かに、このサイトの読者の多くは、AVR MK で何らかのデバイスを独自に開発して組み立てたいと考えているでしょう。 しかし、これをハードウェアで行うのが難しい理由はたくさんあるかもしれません。 たとえば、ラジオ部品の品揃えが豊富なラジオ店がない田舎に住んでいるとします。 この場合も、いつものように、Ali Express の Web サイトが役に立ちます。 あるいは予算の制限とか。 これは、まだ恒久的な収入源を持たない学童や学生に特に当てはまります。

では、この場合はどうすればいいのでしょうか? ここでは、回路のデバッグ用に特別に作成された特別なシミュレータ プログラムが役に立ちます。

この記事では、そのうちの 1 つである Proteus バージョン 7.7 をプロジェクトに関連して分析します。

このプログラムは私たちに何を与えてくれるでしょうか? 初心者はマスターするのが難しすぎると思うでしょう。 いいえ、そうではありません。 最初のプロジェクトをエミュレートするときに、プログラムのすべての機能を使用するわけではありません。 1 ~ 2 晩で基本をマスターできます。 マイクロコントローラーの操作方法を学ぶという点で、それは何をもたらすのでしょうか? たとえば、LED とディスプレイの動作をリアルタイムで視覚的に表現します。 レッスンのベースとなる Tiny2313 や Mega8 など、さまざまなタイプの AVR マイクロコントローラーをエミュレートすることを選択できます。 これは何を意味し、どのように行われるのでしょうか? ファームウェアのコードを作成し、コンパイルして、必要な HEX ファイルを取得し、Proteus プログラムで MK を仮想的にフラッシュします。 さらに、仮想 MK のヒューズ ビットを変更することもできます。

この回路を実際の現場で組み立ててエミュレーションを実行するには、どのような操作を実行する必要があるかを見てみましょう。

これは、プログラムの起動直後に開くウィンドウです (クリックして拡大)。


次に、プロジェクトに必要な無線コンポーネントをライブラリから選択し、パーツ リストに配置する必要があります。 次に、それらを選択して作業フィールドにインストールします。 私たちのプロジェクトでは、Attiny2313 MCU、黄色の LED-YELLOW LED (Proteus ではよく「光ります」)、および LED を流れる電流を制限する RES 抵抗を使用します。 そうしないと、どんなに面白く聞こえても、仮想 LED を「焼き付ける」ことになります :-)。

これらの無線要素を選択するには、文字「P」をクリックする必要があります。

クリックすると、次のウィンドウが表示されます。


「マスク」フィールドに、検索したいもの、つまりMK、LED、抵抗器を入力します。


[マスク] フィールドに「Tiny2313」と入力し、[結果 (1)] 列で見つかった MK をクリックします。


次に、抵抗器でも同じことを繰り返します。 「解像度」を入力してください:


同じように LED を探します。


さて、これら 3 つの要素がすべて「デバイス」列に表示されるはずです。

次に、黒い矢印をクリックし、リストから必要な無線要素を選択します。

左側の縦列に「ターミナル」アイコンが表示されます。 ここで注目するのは、電源とグラウンドという 2 つのラインです。 これは、回路内のそれぞれ +5 ボルトの電源とグランドです。 MK に電源を供給する必要はありません。自動的に供給されます。この図では、「地面」アイコンのみを取り上げます。

すべての放射性元素を作業場に取り出します


次に、それらを通信線で接続する必要があります。その後、ボード上のトラックやワイヤーなどの導体によって接続されているかのようにそれらを接続します。


すぐに言っておきますが、接続線を使用せずに、部品の 1 つのピンを別のピンに隣接させたり、重ねて取り付けたりしないでください。 プログラムはこれを接続とし​​て認識せず、回路は機能しません。

抵抗値も変更する必要があります。 デフォルトでは、これは私たちのスキームには適していません。 どうやってするの?

抵抗を右クリックし、「プロパティの編集」を選択します。


次に、値を 200 オームに変更します。 仮想 LED が切れていないだけで十分です)


作業フィールドが画面から逃げようとする場合があります。その場合は、マウス ホイール スクロールを使用してスケールを変更し、プロジェクト全体がその中に収まるように左上隅に緑色のフレームを設定してクリックする必要があります。

ちなみに、すぐに言っておきたいのは、何か間違った操作を行った場合は、「キャンセル」ボタンをクリックするだけで、最後の操作がキャンセルされるということです。 多くの人はサードパーティのプログラムでこれを知っていると思いますが、実際にはわかりません)。

そこで、図をまとめてみました。 次に、ファームウェアをマイクロコントローラーにアップロードし、実際にどのように動作するかを確認する必要があります。 これを行うには、クリックする必要があります 右クリック MK 上で、[Program Files] 列にある黄色のフォルダーのイメージのアイコンをクリックします。 ちなみに、必要に応じてここでヒューズ ビットを設定できます (クリックすると画像が拡大します)。


次に、拡張子*.HEXを持つファームウェアファイルを選択し、「開く」をクリックする必要があります。 すべての準備が完了したので、プロジェクトをエミュレートできます。

(写真をクリックすると拡大します)


エミュレーションを開始するには、「Proteus」プログラムの左下隅にある「三角」ボタンを押す必要があります。


エミュレーションを開始します。 LEDが点滅しているのがわかります。ある時点で、LED が光ります。 どれだけ明るく黄色に燃えているか見てください:-)


そして、それは再び出ます:


これで、必要に応じて「プロジェクトを名前を付けて保存」を選択してプロジェクトを任意の名前で保存できます。また、別のプロジェクトの完成したファイルを開く必要がある場合は「プロジェクトを開く」を選択してください。

保存されたプロジェクトのアイコンがデスクトップ上でどのように表示されるかは次のとおりです。

読者の皆さんがこのプロジェクトを自分で組み立てることに何の困難も感じず、将来的にはスキルを向上させれば、より複雑なプロジェクトを自分で簡単に組み立てることができるようになることを願っています。 Proteus 7.7 プログラムの完成したプロジェクトとファームウェアはアーカイブに添付されています。

OK、もう終わりです! 以下は、回路の動作とエミュレーションのすべての段階のビデオです。

Proteus 7 (具体的にはバージョン 7.10) のような、電子回路をシミュレーションするための素晴らしいプログラムについて話しましょう。 まず、シミュレーターとは何ですか?なぜ必要なのでしょうか? 電子回路シミュレーター Proteus 7 は、作成した電子回路をシミュレートするように設計されています。 つまり、回路を作成し (必要なコンポーネントを追加し、それらを目的の順序で接続します)、性能を監視するために必要な測定器を追加します。 利点は、ハードウェアに何も組み立てる必要がないことです。 図をスケッチして、それがどのように機能するかを確認し、パラメータを測定します。 もちろん、ハードウェアではすべてが異なる動作をする場合があります。 一般に、Proteus 7 にはより強力なコンピューターが必要です。 それでは、プログラム自体について見てみましょう。 プログラムを起動すると、ロード後にワークスペース、ツールバー (上部と左側にあります)、およびプロパティ パネルが表示されます。

簡単なプロジェクトを作成してみましょう。 LED、抵抗、ボタン、電源を追加して、ボタンを押すと LED が点灯するようにすべてを接続しましょう。 「コンポーネント」をクリックし、プロパティパネルで「P」をクリックします。

必要なコンポーネントをカテゴリから検索することも、単に名前で検索することもできます。 検索バーに「LED」と書き込み、LED (たとえば青色) を選択します。 これを 2 回クリックすると、コンポーネントに追加されます。 ボタンと抵抗も追加します。

これで、パネルに LED、ボタン、抵抗が追加されました。 最初のコンポーネントを選択し、作業フィールドを 1 回クリックします。 コンポーネントが追加されました。 コンポーネントを可能な限り使いやすいように配置します。 抵抗の値を設定する必要があります。 これを行うには、それを 2 回クリックし、プロパティ ウィンドウに必要な金種を入力します。

次に、それらを接続する必要があります。 これを行うには、カーソルをいずれかのピンの上に移動してマウスの左ボタンをクリックし、接続されたピンに導体を描画して再度クリックします。


次に、電力を追加する必要があります。 「ターミナル」ボタンをクリックし、電源 (+) 要素と接地 (-) 要素を追加します。

ここでのデフォルトの電圧は 5V です。 (コンポーネントと同じ方法でワークスペースに追加されます)。 そして、それらを図の必要な点に接続します。 結果は次の図です。

次に、シミュレーション起動パネルの左下隅を見てください。 三角 - スタート、四角 - ストップなど、すべてプレーヤーと同じです。 それを起動し、ボタンの上にカーソルを置いて、ボタンを押します。

要素を選択したので、次のステップに進む必要があります。編集ウィンドウで要素を作図領域に配置します。 最も単純なバッファーから始めましょう。チュートリアルの図の左上隅に示されています。 以下に詳しく示します。

図の最初のブロックの完成図、
それを描く必要があります。

モードになっていることを確認してください要素 (つまり、何が選択されているか要素アイコン )、オブジェクト セレクターで 741 をクリックして開始します。 スイッチの上のプレビュー ウィンドウが、選択したデバイスのプレビュー ウィンドウに切り替わるのが表示されます。 以下のスクリーンショットは、項目 741 を選択した後のオブジェクト セレクターと概要ウィンドウの状態を示しています。

· クイック概要ウィンドウには、デバイスのプレビューだけでなく、現在の向きも表示されます。 (アイコンを使用して) 要素を回転または反転するとき回転と反射 )、デバイスが再レンダリングされて、新しい向きがプレビューされます。 デバイスのプレビューは、デバイスが配置されるか、別のコマンドまたはアクションが実行されるまでウィンドウ内に残ります。

次に、マウス ポインタを編集ウィンドウの中央に移動し、左ボタンを押します。 オペアンプの輪郭がマウス ポインタの下に表示され、編集ウィンドウ内を移動するとそれに従います。 もう一度左ボタンを押すと、要素が図上に配置され、完全に描画されます。 編集ウィンドウの中央にオペアンプを配置してこれを試してください。


要素の輪郭は常に移動します
配置モードではマウス ポインタの後ろにあります。

MINRES1K デバイスを選択し、上の図に示すようにオペアンプの上に 1 つの抵抗を配置します。 反時計回りの回転アイコン (下図) の左ボタンを 1 回押します。 [クイック ビュー] ウィンドウの抵抗器のプレビューでは、抵抗器が 90° 回転していることが示されていることに注意してください。 最後に、2 番目の (垂直) 抵抗 R2 を配置します。


回転アイコン
(反時計回りの回転が選択されています)。

経験が浅い場合、最初の試行では必要な要素を配置することができない可能性が高いため、要素を移動する方法を見てみましょう。 ISIS 内のオブジェクトは、「選択」することでさらに編集できるように選択されます。 ISIS でオブジェクトを選択するには、いくつかの方法があります。


オペアンプを囲む割り当てコンテナ。

同様に、空のスペースを左クリックするか、空のスペースを右クリックして項目を選択することで、選択 (または一連の選択) を削除できます。明確な選択(明確な選択 ) 表示されるコンテキスト メニューで。


すべてのオブジェクトの選択を解除します
コンテキスト メニューから。

要素が選択されている場合、要素 (またはこの方法を使用する場合は選択四角形内) 上でマウスの左ボタンを押したままにし、マウスを目的の位置に移動してマウスの左ボタンを放すことで、要素を移動できます。 以下に示すように、マウス カーソルが変化し、要素を移動できることを示します。


選択したオペアンプを移動します。

あるいは、オブジェクトを右クリックし、表示されるコンテキスト メニューからドラッグ アンド ドロップ操作を使用することもできます。

上記はすべて、最初に読むと混乱するように思えるかもしれませんが、実際には非常に簡単であることがわかります。 モードレス選択メカニズムが最も操作しやすいと考えられがちですが、自分の好みに基づいて操作する方法を選択する必要があります。 次の簡単な実験は、利用可能なさまざまな方法に慣れ、疑問を解消するのに役立ちます。

この方法はシンプルかつ直観的であり、後で ISIS にデバイスを配置および回転するために選択する価値があります。 上記の内容を強化するために、このセクションの冒頭のスクリーンショットと同じ方法でオブジェクトが配置されるように、図を再処理して少し実験してください。

一般に、電子回路をモデル化するシステムは数多くあります。 私が見たすべての中で、私はそれらが一番​​好きでした マルチシムそして ISISプロテウス。 Multisim は非常に便利なインターフェイスを備えており、アナログ デバイスのデバッグに便利です。 仮想 (つまりパラメータを自分で指定する) トランジスタやアンプを使用できますが、マイクロコントローラーやさまざまな種類のドライバーなどの複雑なシステムはまったくサポートされません。 より正確に言えば、サポートはされますが、非常に遅いです。 古代人のサポートが追加されたのはつい最近のことです AT89C2051そしていくつかの 写真さんの

に対して、 プロテウスコントローラーを使用すると素晴らしく動作しますが、実際の要素のライブラリによって制限されるため、必要な部分が正確にわからないと、そこでは多くのことはできません。また、単純に悲惨なインターフェイスもありますが、これは最高のモデリング システムです。私が今まで見てきました。 したがって、それを正確に説明します。

アーカイブ内の重さは約 30 メートルで、私が知っている最新バージョンは 7.2 です。覚えておいてください。 Proteus のクラック版は時々非常に奇妙な動作をしますたとえば、プロセッサ コードは表示されますが、デバッグは機能せず、レジスタには値が残っています。 だから慎重に検索してください;))))

私は、直ちに問題を解決し、マイクロコントローラー上でいくつかの簡単な回路を手早くシミュレートすることを提案します。 プロセスの進行に合わせて、すべてがどこにあるのかを説明します。

打ち上げ プロテウス、ドットが付いたベージュのウィンドウがすぐに開きます。 ここが作業場です。 ここでスキームを構築します。 例えば、お気に入りのコントローラーで回路を組んでみましょう AT89S51これは何も有益なことはなく、コントローラー ポートに接続されたボタンを押してターミナル ウィンドウに文字を送信するだけです。

コンポーネントを追加するには、最初に選択する必要があります 黒い矢印左上隅の をクリックし、 ボタンを押します 虫眼鏡と三角これは上部ツールバーの中央にあります。

認識している要素の膨大なリストが開きます。 プロテウス。 ライブラリは常に追加および更新されているため、新しい詳細についてはインターネットを調べてください。
リストからコントローラーを見つけます AT89S51混乱しないように、キーワード検索を使用してください。「」と入力するだけです。 AT89「家族全員に会えるよ MSC-51有名な プロテウス.

必要なものを選択し、「」をクリックします。 わかりました」 次に、チップを都合の良い場所に置きます。 プロセッサーのモデルをすぐに予約させてください。 プロテウスいくぶん単純化されているため、仮想回路内にクォーツの存在やリセット システム (リフト) が必要ありません。 リセット必要なレベルまで)、内部メモリを使用する信号の存在(EA の +5、プロセッサの機能) C51外部から仕事ができる人 ロム) そして、最終的に実際の回路を作成するときにこのことを忘れてはなりません。そうしないと、最終的に回路が動作しない理由を探すのに非常に長い時間がかかる可能性があります。

必須ではありませんが、ボディパーツを追加していきます。 もう一度、三角形の付いた虫眼鏡を指して、そこにある石英を探してください。ブルジョワジーはそれを「」と呼んでいます。 結晶「これが結論の隣の図に記入してください」 エクスタル.

インターフェイスの主な悲惨さ プロテウス問題は、右クリックすると常に最初にコンポーネントが選択されてから削除され、左クリックすると同じタイプの新しいコンポーネントが配置されることです。 すごく迷惑なんですが、 マルチシムすべてがはるかに便利かつ伝統的に行われてきましたが、残念ながら、 マルチシムそれほど強力ではありません。

次に、カーソルをクォーツピンに移動し、ピンに接続します。 XTAL1プロセッサー、2 番目のクォーツ レッグでも同じことを行います。 XTAL2。 今度はコンドルが必要です。もう一度図書館に行って探してください。 コンデンサ。 本物のコンドルの膨大なリストが表示されますので、1 つ選択してください SMT約の容量のコンデンサ 33pF。 右側の上部ウィンドウには図の指定があり、下に全体の寸法、または封止用の接触パッドが表示されます。

ちなみに、検索バーのすぐ下のウィンドウに注目してください。 そこに線があるのが見えますか モデリングプリミティブ? そこには仮想プリミティブがあります。 ハウジングがないので、プリント基板をレイアウトするときにエラーが表示されますが、基板をレイアウトするつもりはなく、回路をモデル化したいだけの場合は、これを使用することをお勧めします。 - その値は自由に変更できます。

石英の隣に導体を数本貼り付け、一方の端子で石英の脚に掛け、もう一方の端子を組み合わせて地面に吊るします。 土地をどこで入手するか? 良い質問:)。 左側のツールバーで、タグのように見えるこれら 2 つのものを探します。 ターミナルモード。 それを突くと、左側のすぐ隣にパネルが開き、そこで線を選択する必要があります 地面これは地球です。 都合の良い場所にインストールしてください。 同じ場所 - これは回路の電源電圧です。 通常、これは一般的ですが、回路に複数の電源があるという事実によって問題が発生することがあります (たとえば、コンピューターには 5 ボルト、12 ボルト、3.3 ボルトがあり、一般的にはさまざまな電圧が存在します)。 。

次にリセット回路を組み立てる必要があります。 Proteus にはこれは必要ありません。とにかく正常に動作しますが、実際の回路にはこれが必要です。 これは簡単に行われます。 抵抗とコンデンサを取り付けます。 オンすると、コンデンサが充電されていないとき、その抵抗はゼロになり、出力は RST+5 ボルトが供給されます。 論理1であり、コンデンサが充電されるとすぐに、これは数ミリ秒以内に起こり、その後、抵抗を通る脚が地面に横たわり、これは実際の論理0であり、パーセントは通常モードで開始します。

写真のようにすべてを実行し、デバイスへのボタンの取り付けを開始します。 ポート 1 にハングアップする方がよいのですが、なぜですか? また、追加の抵抗も必要ありません。 実際のところ、C51 ポート 0 にはデータ バスで動作する機能が備わっており、これはいわゆる Z 状態を持つことを意味します。 これは、出力が 1 でも 0 でもなく、高い抵抗 (インピーダンス) があり、ほぼ中断されているときですが、ポートは、現時点ではそこに飛び交う値について警告なしにバスを嗅ぎ、自分自身を放棄したり干渉したりすることはありません。他のデバイスでも。

ポート 3 にはあらゆる種類の追加周辺機器が接続されており、ポート 2 は proteus モデルではあまり便利な位置にありません。 したがって、ポート 1 を使用します:)))))。 ライブラリでスイッチまたはボタンを探します。 私はボタンコンポーネントが気に入っているので、それを使用しています。 4 つのボタンを配置してピン P1.0、P1.2、P1.4、P1.6 に掛け、ボタンの他​​のピンをまとめて地面に置きます。 どうやって機能するのでしょうか?

それは簡単です! まず、すべての出力のポートに 1 つを出力します。 内側からの脚はすぐに論理ユニットに引き上げられます。 ここで、データを読み取るには、ポート P1 のレジスタから値を取得するだけで十分です。ボタンのいずれかを押すと、この脚が地面にしっかりと植えられ、内部プルアップを 1 にオーバーパワーします。 。 それらの。 押されたボタンはポート内のビットに 0 を返します。 これは、すべてのマイコンでボタンの押下を検出する原理です。 また、ボタンを 40pF のコンデンサでバイパスすることを強くお勧めします。インパルス ノイズによる誤警報が発生することはありません。

ただし、これは実際のデバイスのみでの話です。 プロテウスまだ関係ないですが追記しておきます。 以上で、データ入力の準備は完了です。 今、結論を出す必要があります。 出力のために、仮想 LED を脚にぶら下げて仮想的に点滅させることもできますが、これはマナー違反です。とはいえ、私が主張するわけではありませんが、プログラムのデバッグに役立つことはよくあります。

愛する人と一緒に自分を甘やかすことを好む UARTオーム いわば端末です。 バーチャルインストゥルメントセクションに行きましょう。 左側のツールバーで矢印デバイスが描かれたアイコンを探して、そこに移動します。 使用できるすべてのジャンクのリストが表示されます。 ここには、電圧計、電流計、オシロスコープ、デジタル アナライザー、プロトコル モニターなどの高度に専門化されたさまざまなガジェットがあります。 SPIまたは I2C。 楽しみのために、オシロスコープを持ってみましょう ( オシロスコープ) 出力に 1 つのチャンネルを接続してハングします。 送信。 私たちにも必要です 仮想端末。 それを選択して図に貼り付けます。 次に、その出力をプロセッサの出力と交差して接続します。 Rx と Tx、Tx と Rx。

準備ができて! 完璧に満足するには、ポートに別の LED を取り付けます P2。 LED をプロセッサーのポートに接続するにはどうすればよいですか? はい、とてもシンプルです! LED のプラスを電源に接続し、マイナスを抵抗器に接続すると、この抵抗器はすでにプロセッサの出力に接続されています。 ダイオードを点灯するには、このレッグに 0 を出力する必要があります。

すると、供給電圧とレッグのゼロ電圧との間の電圧差が最大となり、ダイオードが焼損します。 コンポーネント内で検索する 導かれたまあ、言った通りに突っ込んでください。 おそらくすでに気づいていると思いますが、イベントは 1 ではなく 0 で定義または設定されることが多いです。 これは、脚を引き上げるよりも強制的にゼロにする方が簡単であるという事実によるものです。 ただし、これは常に当てはまるわけではありません。たとえば、ファミリー コントローラーなどです。 AVR彼らは足をゼロと電源電圧の両方にしっかりと設定する方法を知っているので、そこにあるダイオードを点灯させることができます。 これを行うには、それを裏返し、もう一方の端を抵抗を通して吊るす必要があります 、そして地面へ。

ということで、ハードウェア部分を描きました。 セットアップとデバッグを開始します。

マイクロコントローラーを選択してダブルクリックすると、プロパティ ウィンドウが開きます。
プリント基板パッケージ- これはハウジングのタイプであり、プリント基板をレイアウトするときに重要です。 DIL40にしましょう

プログラムファイル– これは実際のファームウェア ファイルです。 ここで、hex ファイルへのパスを入力する必要があります。

クロック周波数– プロセッサが動作する周波数。

実際には、周波数はクォーツまたは内蔵クロック ジェネレーターによって異なります。 で プロテウスここに展示されています。 デフォルト値は実際に使用する値と異なることが多いため、正しく設定することを忘れないでください。
必要なプロセッサ周波数を設定し、ファームウェアへのパスを書き留めると、回路の構成が完了します。 デバッグを開始できます。

アイコンの付いたボタンをクリックします 遊ぶテープレコーダーのように。 ここではすべてがシンプルで、複雑なことはありません。 ステップバイステップ モードは、単にわずかな時間遅延を伴う断続的な起動であることだけを述べておきます。 デバッグするには、コード デバッグを使用する必要があります。

これで、あなたの計画は機能します。 その中で行われているプロセスを観察できます。 ツールバーで電圧計を選択すると電圧が表示され、電流計を使用すると電流を測定できます。 プロセッサーの脚で点灯する色付きの四角形は論理レベルです。 青はゼロ、つまり地球です。 赤は論理的なもの、灰色は高インピーダンス、つまり ハイゼット.

原則として、デバイスの動作をデバッグするにはこれで十分です。 プログラムをデバッグするのは、 ケイル・ユーヴィジョン(C51 について話している場合) または AVRスタジオ、コンパイルして何が起こるか見てみましょう。 これは、1 つの制御コントローラーとハーネスを備えたシンプルなデバイスでうまく機能します。

しかし、複数のマイクロコントローラー、またはコントローラーと、ダラス キーなどの非常にスマートなデバイスがシステム内で動作している場合、どの時点でどのコントローラーが何をしているのかを言うのは難しいため、深刻な痔が始まります。 このような状況では、内部デバッガが役に立ちます。 プロテウスを使用すると、シミュレーションを終了せずにソース コードを使用してプログラムをデバッグできます。

ソースを追加します。
メニューに移動し、そこにある項目を探します ソースそして揺るぎない手で大胆に彼を突いてください。 選ぶ ソースの追加/削除そしてソースを追加します。 コンパイラが愚かにならないように、スペースやロシア語文字を含まない単純なパスに沿ってソースコードをたどるべきであることをすぐにお勧めします。 たとえば、私の場合は次のようになります。 d:\coding\C51\hack_2.asm「ソースを追加するときは、コンパイルに使用するコンパイラーを忘れずに指定してください。 この場合、 「コード生成ツール」「」を示す必要があります ASEM51”、つまりアーキテクチャコンパイラ MCS-51.

クリック わかりましたそしてメニューの中には ソース別の項目が表示されます - 追加されたソース ファイル。選択するとエディタが自動的に開き、プログラム テキストをすばやく修正できます。

コンパイラの設定。
もう一度メニューに移動します ソースそしてアイテムを探してください。 コード生成ツールを定義する”はコンパイラオプションです。 最初は、それらは曲がった形で設定されています。 ルールを作る「ラインを突く」 コマンドライン」とそこにあるゴミをすべて持ち帰ります。 放っておきなさい “%1 " 引用符なし。 ASEM51スマート感染では、特にファミリー全体が含まれるため、レジスタと変数の説明を含む必要なファイルが追加されます。 MCS-51すべてのアドレスが同じです。

編集
同じメニューをクリックします ソース段落 すべて構築そして出口で受け取ってください 16進数ファイル、しかし地元で作られています。 そこでコンパイラ ウィンドウが点滅します。そこには、エラーと多数のサービス データに関する情報が含まれています。

打ち上げ
ボタンで回路を起動する 遊ぶ下部パネルの を押して、すぐに一時停止またはステップバイステップモードを押します。 使い慣れたデバッガと同じように、プログラム コードを含むウィンドウがすぐに開きます。 開かない場合は、メニューから見つけることができます デバッグ -> 8051CPU -> ソースコード - U1

プロセッサーのレジスターやプログラム/データメモリーの内容など、他にも便利なものがたくさんあります。

赤いランニング野郎– 実行するコードを起動します。
でたらめを飛び越える脚– プロシージャをスキップして実行
下矢印が付いた脚– 1 つの指示に従い、一歩を踏み出します。
上矢印が付いた脚– サブルーチンを終了します。
脚と前方の矢印– カーソルまで実行します。
矢印付きの円– BreakPoint ブレークポイントの設定/削除/無効化。 ブレークポイントは、プログラムが途中で停止し、ユーザーの同意がある場合にのみ続行する、プログラム内の場所です。これはデバッグに不可欠なものです。


プロジェクトに 2 番目のプロセッサを追加すると、そのコード、レジスタ、メモリはそこに存在しますが、呼び出されるのは ソースコード – U2等々。
さらに、ディレクトリ内では、 プロテウスフォルダーがあります サンプルここには、システムの機能を示す、非常に複雑なさまざまな例が多数あります。 ISISプロテウス.

ZY
私はハッカーマガジンにこの記事を書きました。 少し形を変えて(もう少し詳しく)2007年12月号の雑誌に掲載されました。

プロテウス は、さまざまな仮想電子デバイスを作成し、それらをシミュレートできるユニバーサル プログラムです。 これには、アナログおよびデジタルの超小型回路、センサー、抵抗器、コンデンサー、ダイオード、トランジスターなどのディスクリート要素の巨大なライブラリが含まれています。 ディスプレイ、LED、オプトカプラなどの幅広いオプトエレクトロニクス部品もあります。

Proteus と、電気回路の動作をシミュレートする他の同様のプログラムとの主な利点および違いは、マイクロプロセッサおよびマイクロコントローラ (MCU) の動作をシミュレートできることです。 Proteus ライブラリには、AVR、ARM、PIC、Cortex の主要なタイプのマイクロコントローラが含まれています。

電気回路の動作をシミュレートするために設計された他の同様のソフトウェアと同様に、このソフトウェアには、電流計、電圧計、電力計、オシロスコープ、ロジック アナライザ、カウンタなどの多数の仮想測定器が含まれています。

Proteus には、プリント基板の自動開発と 3D モデルの作成のためのツールも組み込まれています。

最初のプログラムをシミュレートするには、ATmega8 マイクロコントローラー、抵抗器、ライブラリの LED だけが必要です。

設定 プロテウス 8.4

どのセットアップも起動から始まります。 表示されるウィンドウで、コンデンサ付きダイオードのアイコンをクリックします。 回路図のキャプチャ(回路設計)。

この後、空のフィールドが表示されたウィンドウが開きます。

次に、ATmega8 マイクロコントローラー、抵抗、LED を追加しましょう。

デフォルトのモードは適切なモードに設定されます コンポーネントモードしたがって、電子要素やその他の要素を選択するためのメニューにアクセスするには、パネルにある P ボタンをクリックするだけです。 デバイス(デバイス)。 この後、メニューから選択する必要があるウィンドウが開きます カテゴリー(カテゴリー) マイクロプロセッサIC(マイクロプロセッサ)、で サブカテゴリ(サブカテゴリー) – AVRファミリー。 次は窓の中 結果 MKを見つけて選択します アトメガ8。 ボタンをクリックしてください わかりました.

その後、ウィンドウメニューに表示されます デバイスすでにマウスを使用して作業領域にドラッグすることができます。

同様に抵抗とLEDを追加します。

LEDはこのカテゴリにあります オプトエレクトロニクス(オプトエレクトロニクス) およびさらにそのサブカテゴリ LED。 この例では緑色が選択されています。 LEDグリーン.

次の図に示すように、回路を組み立てます。 抵抗 R1 を MK PC0 のピンに接続し、LED D1 のアノードに接続します。 LEDのカソードをアースに接続します。 「地面」要素はタブメニューにあります ターミナルモード.

抵抗 R1 の抵抗値を変更するには、抵抗 R1 をダブルクリックする必要があります。 開いたウィンドウで、行に 300 オームを設定します。 抵抗(抵抗)。

Proteuse のマイクロコントローラー ピンは、便宜上、ポートごとに別のグループにグループ化されていることに注意してください。 ただし、これは実際の MK 内の位置に対応しません。 さらに、MK に電力を供給するために電圧が供給される端子はありません。 この機能はデフォルトでインストールされます。

マイクロコントローラーのメモリにプログラムを書き込む

あとは仮想 MK にコードを書き込むだけです。 それをマウスでダブルクリックし、表示される新しいファイルで、コードを含むファイルへのパスを指定します。 行内のフォルダーを開くアイコンをクリックして、ファイルの場所を見つけます。 プログラムファイル.

プロジェクトフォルダー内に次のフォルダーがあります デバッグその中で拡張子が付いているファイルを選択します 16進数。 この後、ボタンを押してください 開ける.