
PIC初心者です。よろしくお願いします。
PIC16F84Aを使って
「ポートA 0bIt 」 に入力があったとき(1になったとき)
ラベルの「OPEN」に飛びポートBのLEDが一秒点灯。
「ポートA 1bit 」に入力があったとき
ラベルの「CLOSE」に飛びポートBのLEDが一秒点灯。
これだけのプログラムなのですが
MPLAB IDE v8.63で
Debug all すると
;の記述のところで表記のエラーが出ます。
プログラムはこちらです。
list P=pic16f84a
include "p16f84a.inc"
__CONFIG _HS_OSC & _WDT_OFF & _PWRTE_ON & _CP_OFF
CNT1 EQU 0CH
CNT2 EQU 0DH
CNT3 EQU 0EH
ORG 0
GOTO MAIN
MAIN
BSF STATUS,RP0
MOVWF TRISA
CLRF TRISB
BCF STATUS,RP0
CLRF PORTB
CLRW
LOOP
BTFSC PORTA,0
GOTO OPEN
BTFSC PORTA,1
GOTO CLOSE ;ここで「Symbol not previously defined (CLOSE)」 のエラー
GOTO LOOP
OPEN
MOVLW 010H
MOVWF PORTB
CALL TIMER3 ;ここでSymbol not previously defined (TIMER3)エラー
CLRF PORTB
END
CLOSE MOVLW 020H
MOVWF PORTB
CALL TIMER3
CLRF PORTB
END
TIMER1 MOVLW D'62'
MOVWF CNT1
LOOP1 NOP
DECFSZ CNT1,1
LOOP1
RETURN
TIMER2 MOVLW D'100'
MOVWF CNT2
LOOP2 NOP
CALL TIMER1
DECFSZ CNT2,1
goto LOOP2
RETURN
TIMER3 MOVLW D'100'
MOVWF CNT3
LOOP3 NOP
CALL TIMER2
DECFSZ CNT3,1
goto LOOP3
RETURN
END
何日も堂々巡りをしてまして埒があかないので質問させていただきました。
どこが間違えているのでしょうか????
よろしくお願いいたします。
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
ENDは"プログラムの終了”ですが、プログラム実行の終了ではなくアッセンブラ(ここではMPLAB)に対してアッセンブラプログラムの記述が終了しましたので機械語への翻訳を開始して下さいと言う指示だと思います。
プログラム実行の終了は、RETURN (EXIT? HALT?)だったと思います。
あなたのプログラムでは、MAINはGOTO LOOPとなり、電源を切るまで終了しないのが正解です。
OPENやCLOSEの最後のENDは、TIMERnの様にRETURNとする。
最終行だけがENDで良いと思います。 途中にENDが見付かると、それ以降が無効となり、飛び先(OPEN、CLOSE、TIMER3等)が解決出来ないのでしょう。 間違ったらごめんなさい。
No.1
- 回答日時:
ものすごく、冗談みたいですけど、ひとつ確認してください。
数字の「0」とアルファベット大文字の「O」
それから、
数字の「1」とアルファベット大文字の「I」
間違ってませんね。
必要なら、カット&ペーストで、メモ帳にコピーして確認してください。
このMPLABのエディタ・・・確か、この二つの確認は至難の技だった記憶が・・・・
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) Excelで下記のようにマクロを作ったところ、一回目は実行できたのですが、二回目以降「実行時エラー1 1 2022/03/25 08:08
- Excel(エクセル) Excelにて、フォルダ内のTextファイルをマクロで統合すると文字化けしてしまう時の解消コード 4 2023/01/01 07:32
- Visual Basic(VBA) 【VBAエラー】Nextに対するForがありません 対策について 5 2022/11/21 21:26
- Visual Basic(VBA) Excel vbaについての質問 3 2023/04/18 16:14
- Excel(エクセル) マクロでテキストファイルを読み込んだ際の最終セルにデータと改行が含まれる問題の改善方法 2 2022/03/25 16:50
- その他(プログラミング・Web制作) Arduino UNO のC言語 2 2023/04/18 19:42
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 1 2023/08/10 14:24
- Visual Basic(VBA) vba GetAsyncKeyState関数について 1 2023/08/24 12:08
- Excel(エクセル) エクセル VBA For Next 繰り返しの書き方を教えてください 6 2022/09/01 14:11
- Visual Basic(VBA) Excel VBAについて、 フォルダ内のファイルを全て開きたい場合、 FSOを使えば、Dirは使わ 1 2023/01/27 13:18
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Fortranプログラム-if文について
-
不具合が発生(API・C言語)
-
プログラミングの問題が分かり...
-
自然数の和のプログラム
-
C言語のプログラム
-
C言語です 整数nを入力すると 1...
-
C言語のエラーについてです
-
素人なのですが、プログラマに...
-
PICのA/Dを使うプログラムにつ...
-
プログラミング
-
c言語とgnu
-
C言語の質問です。
-
PIC 初心者で行き詰まりま...
-
このプログラムを修正してくだ...
-
FORTRAN77のプログラミングを教...
-
銃を発砲するならともかく、日...
-
ネットワーク並列処理が出来る...
-
電卓作成(緊急です!!)
-
Fortran90を使いたい
-
アルゴリズムについて(ちょい...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
変数の値が勝手に変化する原因
-
【JAVA】数字をひし形に出力す...
-
3つの整数のうち奇数のみを表示...
-
Sublime Text 3でのFortranプロ...
-
fortran if文
-
main関数終了時のreturnの意味は?
-
Fortran90についての質問です。
-
360度を超える角度
-
Fortran "実引数の型が仮引数の...
-
N88basicを用いたGPIB制御
-
JCLの基本について教えてください
-
COBOLのピリオド
-
プログラミング
-
C言語からのFortranプログラム...
-
ProC 固定SQLでNULLってどう表...
-
4桁の数値を逆に表示されるプ...
-
Tiny Basicのプログラムです。。
-
CommonLispでハノイの塔の円盤...
-
プログラミングの課題で1万円か...
-
プログラムの実行回数
おすすめ情報