• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:8bitの2進数を入力して2つのポートに(PIC))

8bitの2進数を入力して2つのポートに出力させる方法

このQ&Aのポイント
  • PIC16F886のポートAに8bitの2進数を入力し、ポートBおよびポートCに出力させる方法をまとめます。
  • 質問文章の目的は、ポートAに入力された2進数を変更して、ポートBおよびポートCに出力させることで、1チップで14セグメントLEDを点灯させることです。
  • この動作は可能です。ポートAに入力された各ビットの値によって、ポートBおよびポートCの出力パターンが変化します。

質問者が選んだベストアンサー

  • ベストアンサー
  • 86tarou
  • ベストアンサー率40% (5094/12701)
回答No.1

可能です。 具体的には、入力に対する出力のパターンをテーブルとしてROM上に置いておき、それを参照して出力すれば良いだけです。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • PICによるLED制御について

    大学の講義でPICのLED制御の課題がよくわかりません。 どなたか教えていただけないでしょうか? [問]  PIC16F84Aにおいて、動作を実現するプログラムを示せ。  メインルーチンでLED出力の点燈箇所を1秒ごとに巡回させる。   RA3=Low(OFF)のとき、左向きに巡回シフト(RLF命令)させる。   RA3=High(ON)のとき、右向きに巡回シフト(RRF命令)させる。  また割り込みルーチンによって、RA0~RA2の3ビットの値に応じて  点灯速度を変化させる(値が大きいほど速く)  ただし、ポートAは全て入力モード、ポートBはRB0以外を出力モードとし(RB0は割り込み用)、ポートBの初期出力を0000100*(LED出力の初期点燈位置は第3ビットのみ)とせよ。

  • PICで入力ポートの内容を出力ポートにコピーしたい

    PICのプログラムをアセンブラで組んでいるのですが、 どうにもシンプルな書き方ができなそうなのでお知恵をお貸しください。 例えば、 ポートAが入力、それ以外のポートは出力になっているとします。 ・ポートAの0番のオンオフを、ポートBの2番へコピー出力。 ・ポートAの1-3番のオンオフを、ポートCの4-6番へコピー出力。 という感じで、Aのオンオフ状況を、各出力ポートにコピーするということをしたいです。 どのようにしたらスマートに書けるでしょうか? ちなみに各出力ポートに関して、コピーする前に一旦全てオフにする、 というようなことはできません。

  • PICのプログラムカウンタについて

    プログラムカウンタでポートAに4bitの2進数を入力して、変換された2進数のデータをポートBに出力させることはできたのですが、 ポートCにも違うデータを同時に出力させたいのですが、どういった命令文を作ったらいいでしょうか? 例えば、ポートAが「HLHL」の入力の時にポートBでは「HLLH」、ポートCでは「LLHL」を出力させる方法です。 言語はアセンブラ、マイコンはPIC16F886です。 よろしくお願いします。

  • PIC16F88 動作不良

    PIC初心者です。 PIC16F88を使用してスイッチ入力(Aポート)でAポートでリレーとBポートでスイッチのLEDの制御をしていました。 全16台中1台のみスイッチのLEDが点灯したまま動作しなくなりました。 電源を再投入しても復帰しません。 秋月電子のROMライターで、データーを読み込み、別のPIC16F88に書き込み、同基板にセットして電源を入れると、正常に動作します。 不具合のPICは再書き込みすると、動作してしまい原因がわからなくなりそうなので、再書き込みはしていません。 何が原因(考えられる要因)かわかる方、よろしくお願いします。

  • PIC18のポート入出力

    PIC16からPIC18を使おうといろいろ勉強中ですが、PIC18のポートはPIC16と違いLAT*というのがあります。 調べると高速処理時(容量性の負荷)の際の誤動作が防げるということらしいのですがLAT*への出力もPORT*出力も同じことらしいような。 この2つの使い分けは 出力ではLAT* 入力(ポート読み込み)ではPORT*を使うといった感じなのでしょうか? 使い分けはどんな感じなのでしょうか?

  • PIC12F629デジタル入力について

    PIC12F629をC言語でプログラミングしています。 GP2ピンをデジタル入力としてスイッチを接続しGP4をデジタル出力 としてLEDを接続し、スイッチを押すたびにLEDが点灯、消灯を繰り返す ようにプログラミングしてみました。 ところがデジタル入力のピンをGP0,GP1に変更しピンにスイッチを 接続し入力しても同じように動作しません。回路に電源をいれた瞬間 LEDが点灯しスイッチを入力しても点灯したままです。 GP0,1をGP2と同様にデジタル入力として使いたいのですが、単にピンの 番号をプログラム中で変更するだけではダメなのでしょうか? ご教授おねがいします。

  • PIC16f84AにおけるBポート(RB0-RB…

    PIC16f84AにおけるBポート(RB0-RB7)のHレベル時の電圧について いつも参考にさせて頂いています。 PICマイコンによる工作で困っているので、お力添えをお願いします。 現在、PIC16F84Aを使ってスイッチを押したらLEDが点灯するプログラムを作っています。 プログラム通りにLEDは点灯するようになりましたが、 プログラムにより出力を「H」レベルに設定したときの出力ポート電圧が2.2Vぐらいにしかなりません。 (ソース電流となるようにPIC出力端子 --> LED --> 抵抗 --> GNDとつないでます) データシートを眺める限りでは、 V_OH = Vdd-0.7 となっているので、私の予定では4.3V程度が出る予定です。 ソース電流は25mAまで流せるはずなので、仮に電圧が5.0Vでも、 抵抗が330Ωなので制限には引っかかりません。 この回路を応用し、HブリッジICを利用したDCモータの正逆転を行う予定なので、 Hレベルが2.47Vでは困ります。(IC側から「H」レベルと認識されない?) ハードウェアは以下のように設計・製作しています。 Vdd=5.0V(スイッチング電源から) Vss=0V(=GND) 外部クロック=セラミック振動子(10MHz) RA0~RA4までにスイッチをつけ、入力ポートと設定 RB0~RB7までにそれぞれLED+抵抗(330Ω)をつけ、出力ポートに設定 ご教授お願いします。 このURLの回路図と基本的に同じです。(違いは入力ポートの抵抗値など) http://homepage3.nifty.com/mitt/pic/pic6_01.html

  • PICを使ったLED回路について教えて頂きたいです。 電源12から5V

    PICを使ったLED回路について教えて頂きたいです。 電源12から5Vに変換し遅延回路を通してPICへ入力。ポートBを出力にしポートBの各ピンからトランジスタTD6083?へ接続。トランジスタアレイからLEDマイナスへ接続してます。  これだと、電源オンにしリレーに電流を流すとLEDが点滅致します。(点滅プログラム書き込み済み) 電源を入れてLEDが常時点灯。リレーに電流を流すとLEDが点滅という感じにしたいんですがアドレスお願いします。

  • PICでのダイナミック点灯について

    PIC16シリーズでの2つの7セグメントLEDをダイナミック点灯させる方法を勉強しているのですがわからないので参考にしやすいURLを教えてください

  • PIC(16F84A)を使用しての250Hz以上…

    PIC(16F84A)を使用しての250Hz以上の周波数判定について 16F84Aを使用して外部からの信号(方形波)周波数をRA2に入力して判定し、ある周波数以上であればRA2への入力信号がHiの時にRB0からHiを出力、Lowの時には出力しないというプログラムを組み、その先にトランジスタを取り付けてLEDを点滅させるというテストを行っています。 100Hz基準くらいの周波数の判定は順調に行えるようになりましたが、約200Hzを判定基準にすると、LEDが外部信号と同期しなくなりました。 誤動作といったほうがいいのかもしれませんが、安定しない動作を行います。200Hzの信号を入力しているのに、1Hzくらいの点滅を繰り返す・点灯しっぱなし・点灯しないetc. ←同じプログラムを焼いたPICでです。  外部発振子は20MHzのものを使用しています。 私は、PICの処理速度?が追いつかなくなったのかなと考察したのですがどういった原因が考えられますか?対策方法等はありますか? PIC初心者なので、簡単な言葉で説明していただければ幸いです。 よろしくお願いします。

このQ&Aのポイント
  • 自作トレカ(人物トレカです)を作りたいのですが、コンビニで印刷しようと考えています。どこのコンビニがおすすめですか?
  • 大量に印刷をする予定ですが、L判にすると中々の値段になってしまうため、A4普通紙で印刷しようと思います。画質はいいですか?悪いですか?
  • 調査によると、ネットプリント専門店も多くありますので、そちらも含めておすすめの印刷サービスを教えてください。
回答を見る