• 締切済み

アセンブラを教えて下さい!

スイッチの右はしが3回ONとなると、全てのLEDが点滅する プログラムを作るには、どうしたら良いか教えて下さい。 また、スイッチデータを入力してその反転した値をLEDに出力 するプログラムを作るには、どうしたら良いか教えて下さい。

みんなの回答

  • redfox63
  • ベストアンサー率71% (1325/1856)
回答No.3

8255ってアセンブラは無いかと ・・・ 扱うなら Z80や8080/8085でしょうね ポートの入出力は(ザイログ形式) IN A,(C) OUT (C),A 具合だったかと 普通は 割り込みなどをつかって入力を感知するのでしょうから そこへカウンタを仕込んでおけば何回押したかは判定できます # チャタリング防止策が講じてある前提で

  • ore100
  • ベストアンサー率54% (34/62)
回答No.2

入力・出力ポートの構成がわかりません。そしてLEDを点滅動作、スイッチのチャタリングを除去するためにもインターバル・タイマーが必要と思います。それらのハードウエアの構成がわからないとお答えできません。

回答No.1

質問が漠然としています。ご質問の意図などをもう少し明確にしてください。 ・対象のプラットホーム(ハードウェア、ソフトウェア)は何ですか? ・アセンブラでないとダメですか?(C言語などではだめ?) ・貴方はアルゴリズムは組めますか?

mikityan
質問者

補足

 ↓ のような感じで、プログラムお願いします。(ポケコン) 10   ORG   0100H 20PA  EQU   20H     ちなみに、アセンブラ言語・8255 30CR  EQU   23H      です。アルゴリズムは組めません。 40   LD    A,98H      

関連するQ&A

  • アセンブラを勉強中の者です。

    アセンブラを勉強中の者です。 PIC16F84Aによるタイマープログラムについておしえてください。 言語はアセンブラでRA4を入力にしてDC5Vの電圧を加えたときに、 ・RB5(出力)ではRA4のタクトスイッチを押したと同時にリレーが1秒間オンにする ・RB4(出力)ではRA4のタクトスイッチを押した後、0.4秒後にリレーが0.2間オン このような動作は、並列実行できるのでしょうか?

  • disPICの質問

    トランジスタ技術2007年8月号という本に載っているdsPICプロ グラムに精通している人がいたら次のプログラム仕様のC言語ソ ースを教えてください。 仕様 1,プログラムの内容  スイッチの操作により、LEDの光度をかえる 2,ハードウェア  PIC基盤実験基盤を搭載したユニバーサル基盤を仕様  ・緑LEDはポートRB0 ・赤LEDはポートRB1 ・黒スイッチはポートRB8 ・白スイッチはポートRB9 に、接続されている。 3,プログラム製作の考え方  LEDを電源周波数と同じ毎秒50回点滅させ、ON/OFFの比率(デ ューティー比)を変化させることで、見かけ上の明るさを変化さ せる。 4,プログラム設計の詳細  赤LED のON/OFFのデューティー比を10:0~0:10まで10段階に変 化させる。点滅サイクルは約50回/秒とする  プログラム論理の最後でwaitルーチンをcallすることで、約 20ms毎にタスクが動くようにする。  プログラムスタート時のデューティ比を5:5とする。  黒スイッチ1回押すと、1段階減光させる。  白スイッチ1回押すと、1段階明るくする。 いずれも、デューティ比が0:10か10:0になったらそれ以上スイ ッチが押されても無視する。  緑LEDはデバック用に使用する。  これはwaitループをcallするたび、カウントアップし15回毎に on/offを反転させる。おおよそ300ms毎に点滅するのでプログラムが暴走していないか確かめられる。

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

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

  • 割り込みのカウントの仕方

    c言語、PICともに素人です。 あるサイトのプログラムで、割り込みを使いLEDを点滅させるというものがありました。 割り込み時毎にLEDへの出力を反転させているだけです。 しかし、これだとLEDの点滅が速いのでもう少し遅くしようと、割り込み10回で出力を反転させるようなプログラムを組みました。 #include "pic.h" #include "delay.h" __CONFIG(FOSC_HS & WDTE_OFF & PWRTE_ON & CP_OFF); int a; void main(void) {  GIE = 1;  T0IE = 0;  T0CS = 0;  PSA = 0;  OPTION_REG |= 0x07;  TMR0 = 0x00;  TRISA = 0x00;  TRISB = 0x00;  a = 0;  T0IE = 1;  while(1); } void interrupt peko(void) {  if(T0IF)  {   if(a==10)   {    T0IF = 0;    PORTA ^= 0xff;    PORTB ^= 0xff;    a=0;   }   else   {    a++;   }   return;  } } aという変数をおいて、最初a=0にしておきます。 割り込みが発生するたびにaに+1していき、aが10に達した時処理をし、aを0に戻す。 これで点滅速度が1/10ぐらいになるだろうと思ったのですが、全く変わりません。 点滅はします。 一体何が違うのでしょうか。 ご教授お願いします。

  • アセンブラによる16f84のプログラミング

    次の3つのプログラムを作成したいのですが、どうにも分からないので皆さんの知恵を分けていただきたく思います。 (1)PORTAの下位4ビットをPORTBの上位4ビットに転送するプログラム (2)PORTAのビット0、ビット1に入力された値の論理積をPORTBのビット0に出力するプログラム (3)PORTAのビット0、ビット1の内容が両方1になるまで待ち続け、両方1になったらPORTBにB'10010110'を出力するプログラム この三つです。このうちの一つでも二つでも結構ですので、分かる方お教え願います。

  • アセンブリでのプログラム

    Z80CPUのポケコン(確かSHARP PC-G850V) でアセンブリ言語のプログラムを作成しています。ポートに接続されている基盤のスイッチの値によって、その基盤のLEDの点滅時間を変更するプログラムの課題が出たのですが、まったく分かりません。 できればプログラムそのものを書いてもらえれば嬉しいのですが、流れ図だけでも結構です。 よろしくお願いします。 ポートに接続されている基盤は、LED(4つ)、ブザー、スイッチ(4つ)などといったごく一般的な物です。

  • Z80のリレー動作プログラミング

    課題でプログラムの作成がでたのですが、その内容がZ80を使ってチャタリング防止回路についているLEDの点滅をスイッチを使って左から順に点滅していくのを確認していき、その点滅を「スイッチを1回押すと逆に進み、もう1回押すと元の方向に戻る(リレー)」という動作をするプログラムに書き換えるというものですがはっきりいってわけがわかりません。 この事について詳しく載っている、もしくは参考になるプログラムが載っているサイトなどがあれば教えてもらえると助かります。 ※すいません、簡潔に書いたつもりですが意味がわからなかったなどあれば指摘をお願いします。

  • mbed

    最初のプログラムでLEDを点滅させるプログラムがありますが、 逆に、プッシュスイッチで点滅を停止させるには、プログラムをどう書けばいいかわかりません。 誰かわかる方、お願いします。

  • アセンブラについて質問です。

    1~5までの数字を入力して1だったら     *         5だったら     *    ***          *****        *******      ********* のように出力する(増えていく)プログラムが作りたいのですが、分かりません。 INとOUTを使うのは分かるのですが、後は全然です;; 宜しくお願いします。

  • PIC PWMをLEDドライバで駆動

    PICで生成したPWM信号をLEDドライバで駆動したいと考え添付の様な回路を作成し動作させました。 <問題点> PIC PWM出力直後のLEDは蛍の様に点滅をするのですが、ドライバ駆動のLEDはゆらゆら点滅になってしまいます。 尚、PIC PWMをON/OFF出力にした場合、連動してON/OFFしています。 <LEDドライバ amazon購入> ・入力範囲:DC 5-35V、出力700mA±20mA、1-10 3W LED駆動 ・PWM調光、ハイレベルオフ出力、低レベルの電源オン出力に対応 ・ステップダウン動作モードにより、LEDの総電圧差が入力電源電圧より2 – 3 V未満であることを保証します  ※ステップダウン動作モードが分かっていません 初心者ですので雑な作りかと思いますがご指摘を願いします。

専門家に質問してみよう