Trích:
Nguyên văn bởi chuchinh
Bác cho em hỏi, em copy đoạn code của bác rồi vào chạy trong MPLAB thấy nó cứ báo lỗi. Đoạn code như sau:
TITLE "Mach test LED_1"
PROCESSOR P16F628A
INCLUDE <P16F628A.inc>
__CONFIG _CP_OFF & _PWRTE_ON & _WDT_OFF &_HS_OSC
;================================================= ======
ORG 0x0000
GOTO MAIN
ORG 0x0005
MAIN
BANKSEL TRISB ; bank select
CLRF TRISB ; trisb = 00000000
; portb = output
BANKSEL PORTB
BSF PORTB, 0 ; rb0 = 1
; RB0 = 5V
GOTO $ ; dung chuong trinh tai day
; vong lap tai cho^~
; khong bao gio ket thuc
END ; lenh bat buoc de ket thuc
;================================================= ========
+ Trỏ dòng khai báo:
PROCESSOR P16F628A
Warning[215] E:\TEST\TEST1\TEST1.ASM 24 : Processor superseded by command line. Verify processor symbol.
+ Trỏ dòng:
CLRF TRISB ; trisb = 00000000
Message[302] E:\TEST\TEST1\TEST1.ASM 38 : Register in operand not in bank 0. Ensure that bank bits are correct.
Giúp em kiểm tra cái nhé!
|
Cái message khi bạn có dòng đó thì nó đều báo vậy cả mà, ko sao đâu
Bạn chỉ cần viết
là portb output,không cần một mớ số 0 như vậy đâu
Trường hợp bạn muốn cả input và output thì dùng
Chân nào muốn output thì đặt số 0, ngược lại input thì số 1.
Nếu thấy dài quá thì bạn chuyển qua số hex vậy!
Còn dòng khai báo PROCESSOR hình như là
Code:
PROCESSOR PIC16F628A
Bạn đổi lại xem thế nào, lâu không viết ASM nên không nhớ rõ bạn à!