View Single Post
Old 20-05-2006, 06:18 PM   #11
nhh
Đệ tử 9 túi
 
nhh's Avatar
 
Tham gia ngày: Feb 2006
Bài gửi: 174
:
Send a message via Yahoo to nhh
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
Code:
trisb = 0;
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
Code:
trisb = 0b01011110
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 à!
__________________
Ngày mai bắt đầu từ ngày hôm nay

Bạn có thắc mắc, bạn cần sự hỗ trợ của các thành viên. Hãy đọc luồng này:
http://www.picvietnam.com/forum//showthread.php?t=1263
nhh vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn