• 検索結果がありません。

PowerPoint プレゼンテーション

N/A
N/A
Protected

Academic year: 2021

シェア "PowerPoint プレゼンテーション"

Copied!
16
0
0

読み込み中.... (全文を見る)

全文

(1)

マイコンプログラミング演習I

第04-05回

LEDを用いたI/O制御

担当:植村

(2)

実験の目的

本実験ではマイコンシステムを用いた信号の入出力の 制御方法を理解することを目的とし,マイコンのアーキテ クチャを理解・実装するとともに,アセンブラによるプログラ ミング技術の習得を行う. 回路の構成として,PIC16F84Aを用いてスイッチを入力と するLEDの点灯/消灯の出力操作を行う回路ならびにア センブラプログラムを実装する.

(3)

PICの端子の構成

入出力ポートA クロック IN/OUT 電源 入出力ポートB 入出力ポートA リセット 電源 入出力ポートB 入出力ポート数 ポート A 5個(5bit) ポート B 8個(8bit)

(4)
(5)

前回のプログラム(P54)

LIST P=PIC16F84A 使用するPICの記述

INCLUDE P16F84A.INC ファイルのインクルード

__CONFIG _HS_OSC & _WDT_OFF & _PWRTE_ON & _CP_OFF

BSF STATUS, RP0 CLRF TRISA CLRF TRISB BCF STATUS, RP0 MOVLW B‘00001111’ ;リテラル→Wレジスタ MOVWF PORTB ;Wレジスタ→ファイルレジスタ LOOP GOTO LOOP END PICの機能の設定.順に • 発振回路の周波数をHSモード(1MHz~20MHz)にする • ウォッチドッグタイマ(暴走防止用のタイマ)をOFFにする • パワーアップタイマ(安定起動させるためのタイマ)をONにする • プログラムメモリのコードプロテクト(外部からのアクセスを禁止 する)をOFFにする

(6)

前回のプログラム(P54)

LIST P=PIC16F84A INCLUDE P16F84A.INC

__CONFIG _HS_OSC & _WDT_OFF & _PWRTE_ON & _CP_OFF

BSF STATUS, RP0 CLRF TRISA CLRF TRISB BCF STATUS, RP0 MOVLW B‘00001111’ ;リテラル→Wレジスタ MOVWF PORTB ;Wレジスタ→ファイルレジスタ LOOP GOTO LOOP END

(7)

設定用の メモリ領域

P16F84Aのファイルレジスタ

Address BANK 0 BANK 1 Address 00h Indirect addr BANK0 にマップ 80h 01h TMR0 OPTION 81h 02h PCL BANK0 にマップ 82h 03h STATUS BANK0 にマップ 83h 04h FSR BANK0 にマップ 84h 05h PORTA TRISA 85h 06h PORTB TRISB 86h 07h 使用不可 BANK0 にマップ 87h 08h EEDATA EECON1 88h 09h EEADR EECON2 89h 0Ah PCLATH BANK0 にマップ 8Ah 0Bh INTCON BANK0 にマップ 8Bh 0Ch 68 SRAM 汎用レジスタ プログラムで扱うことの できるメモリ領域 BANK0 にマップ 8CH : : : : 4Fh CFh 50h 使用不可 使用不可 D0h : : : : 7Fh FFh ポートA, Bの端子の 入出力設定 ポートA, Bの H/L 信号設定 PICの状態設定

(8)

STATUSレジスタの各bitの意味

Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0 IRP RP1 RP0 ^TO ^PD Z DC C IRP PIC16F84では未使用 RP1 PIC16F84では未使用 RP0 バンク選択ビット 0=バンク0 1=バンク1 ^TO タイムアウトビット 1=電源ON後,CLRWDT命令またはSLEEP命令実行後 0=WDTタイムアウト発生 ^PD パワーダウンビット(SLEEP命令実行有無判定用) 1=電源ON後またはCLRWDT命令実行により1になる 0=SLEEP命令により0になる Z ゼロビット 1=計算結果またはロジック演算結果がゼロ 0=計算結果またはロジック演算結果がゼロでない DC デジットキャリービット 1=結果により下位4ビット目からキャリーが発生した 0=結果により下位4ビット目からキャリーが発生しなかった C キャリービット 1=結果により最上位ビットからキャリーが発生した STATUSレジスタ

(9)

TRISA, TRISB レジスタ

• 各ビットは PORTA の RA0~RA4 ピンおよび PORTB

のRB0~RB7ピンの入出力モードを設定する 0=出力 1=入力 ※使わないポートは通常1をセットする TRISAレジスタ TRISBレジスタ

Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0 - - - TRISA4 TRISA3 TRISA2 TRISA1 TRISA0

Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0 TRISB7 TRISB6 TRISB5 TRISB4 TRISB3 TRISB2 TRISB1 TRISB0

(10)

PORTA, PORTB レジスタ

• 各ビットは PORTA の RA0~RA4 ピンおよび PORTB

のRB0~RB7ピンの出力信号の状態を設定する

0 = Lレベル 1 = Hレベル

PORTAレジスタ

PORTBレジスタ

Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0 - - - RA4 RA3 RA2 RA1 RA0

Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0 RB7 RB6 RB5 RB4 RB3 RB2 RB1 RB0

(11)
(12)
(13)

アセンブラによるプログラム(P54)

LIST P=PIC16F84A

INCLUDE P16F84A.INC

__CONFIG _HS_OSC & _WDT_OFF & _PWRTE_ON & _CP_OFF BSF STATUS, RP0 ;バンク1に切り替え

MOVLW B’00001111’ ;RA0~RA3を入力に設定 →Wレジスタ

MOVWF TRISA ;WレジスタでAポートを入力に設定

CLRF TRISB ;Bポートを出力に設定

BCF STATUS, RP0 ;バンク0に切り替え

LOOP

MOVF PORTA, W ;PORTAのbit情報をWレジスタへ

MOVWF PORTB ;WレジスタをPORTBに出力

GOTO LOOP

(14)

新しく使う命令

MOVLW 指定値 MOVe Literal to Working-register

リテラルの値(こちらが表記で指示した値)をワーキング レジスタへ格納

MOVWF fレジスタ MOVe Working-register to File-register

ワーキングレジスタ内の値を指定されたファイルレジス タに格納する

(15)

ワーキングレジスタとファイルレジスタ

PICの命令文はデータを2つまでしか制御できない ファイルレジスタに同時に2つ以上アクセスできない ワーキングレジスタ: 一時的に値を入れておくことのできるメモリ ファイルレジスタ: 設定やプログラムで予約することのできるメモリ領域 RAM Fレジスタ Wレジスタ ALU 算術演算部 8bit 8bit × 68 8bitを2つまで制御 8bit 8bit 8bit

(16)

課題

本プログラムでは電源投入後(スイッチを押さない状態) にLEDが点灯し,スイッチを押すとLEDが消灯する.この動 作を逆にする,つまりスイッチを押す前に消灯しており,ス イッチを押すと点灯するようにする方法を,ハードウェア的 な方法とソフトウェア的な方法で示しなさい. なお,ハードウェア的な方法は回路図と解説を添え,ソフ トウェア的な方法はソースリストと解説を添えること. 配置図・回路図はwebページに載せています. http://www.cis.sojo-u.ac.jp/~t_uemura

参照

関連したドキュメント

「1 つでも、2 つでも、世界を変えるような 事柄について考えましょう。素晴らしいアイデ

本事業を進める中で、

〇齋藤会長代理 ありがとうございました。.

2) ‘disorder’が「ordinary ではない / 不調 」を意味するのに対して、‘disability’には「able ではない」すなわち

 今日のセミナーは、人生の最終ステージまで芸術の力 でイキイキと生き抜くことができる社会をどのようにつ

○片谷審議会会長 ありがとうございました。.

ƒ 、または Arduinoのリセットボタン”oƒ、2 }~x してか らコマンド @2 しま Q*した Arduino す。 プログラムを Arduino に…き:む Äsについては「

自然言語というのは、生得 な文法 があるということです。 生まれつき に、人 に わっている 力を って乳幼児が獲得できる言語だという え です。 語の それ自 も、 から