PIC Vietnam

PIC Vietnam (http://www.picvietnam.com/forum/index.php)
-   Cơ bản về vi điều khiển và PIC (http://www.picvietnam.com/forum/forumdisplay.php?f=8)
-   -   mới học pic cần anh em giúp đỡ (http://www.picvietnam.com/forum/showthread.php?t=4364)

vn00426941 24-06-2009 03:11 PM

mới học pic cần anh em giúp đỡ
 
Em có tham khảo tài liệu học pic6f877a từ dễ tới khó nhưng khi viết chương trình xong đem mô phỏng với proteus thì bị lỗi mong các anh em nào biết chỉ giùm.
đây là nội dung file asm của em
http://vinaanh.com/images0/58860/f/4a41c92c853df_f.png
http://vinaanh.com/images0/58860/f/4a41c92e22299_f.png
khi đem mô phỏng thì các đèn ở RB0,RB1,RB2,RB3,RB7 đều sáng cả ko biết bị lỗi gì
còn đây là phần proteus
http://vinaanh.com/images0/58860/f/4a41c92fc9319_f.png
http://vinaanh.com/images0/58860/f/4a41c931e3cd5_f.png

kaszuky 24-06-2009 08:13 PM

Lỗi chỗ nào đâu bạn. Chạy tốt mà. Cái message đó nó chỉ báo thế thôi. Mình cũng ko biết nó có nghĩa gì! Nhưng chỉ cần bạn thấy dòng " Errors : 0" là okay. Chữ BUILD SUCCEEDED thế là okay rồi. Nạp vào là nó chạy thôi!

vn00426941 25-06-2009 03:42 PM

uh xin lỗi nha mình nhập lộn giá trị xuất ra portb nên ngỡ là sai.Ban đầu mình định xuất ra portb là '00000001',mà lại đi nhập vào là'10001111'.

tuan1007 26-06-2009 12:09 AM

Với đoạn chương trình sau mình muốn RB0 nháy 257 lần thì đặc vòng lặp như thế nào ?
Cảm ơn các bạn trước nha!

title "chop led _b.asm"
processor p16f877a
include <p16f877a.inc>
__CONFIG _CP_OFF&_PWRTE_ON&_WDT_OFF&_HS_OSC&_LVP_OFF
;----------------------------------------------------------------------------
count_1 equ 0x20
count_2 equ 0x21

ORG 0x0000
GOTO MAIN


MAIN
ORG 0X0005
BANKSEL TRISB
CLRF TRISB
BANKSEL PORTB

LOOP clrf PORTB
CALL DELAY
MOVLW h'01'
MOVWF PORTB
CALL DELAY
GOTO LOOP
;--------------------------------------------------------------------------
;CHUONG TRINH DELAY

DELAY CLRF count_1
D2 CLRF count_2
D1 DECFSZ count_2
GOTO D1
DECFSZ count_1
GOTO D2

return


END

tdm 27-06-2009 07:55 PM

Trích:

Nguyên văn bởi tuan1007 (Post 27148)
Với đoạn chương trình sau mình muốn RB0 nháy 257 lần thì đặc vòng lặp như thế nào ?
Cảm ơn các bạn trước nha!

title "chop led _b.asm"
processor p16f877a
include <p16f877a.inc>
__CONFIG _CP_OFF&_PWRTE_ON&_WDT_OFF&_HS_OSC&_LVP_OFF
;----------------------------------------------------------------------------
count_1 equ 0x20
count_2 equ 0x21
ORG 0x0000
GOTO MAIN


MAIN
ORG 0X0005
BANKSEL TRISB
CLRF TRISB
BANKSEL PORTB

LOOP clrf PORTB
CALL DELAY
MOVLW h'01'
MOVWF PORTB
CALL DELAY
GOTO LOOP
;--------------------------------------------------------------------------
;CHUONG TRINH DELAY

DELAY CLRF count_1
D2 CLRF count_2
D1 DECFSZ count_2
GOTO D1
DECFSZ count_1
GOTO D2
return


END

**************************************************

title "chop led _b.asm"
processor p16f877a
include <p16f877a.inc>
__CONFIG _CP_OFF&_PWRTE_ON&_WDT_OFF&_HS_OSC&_LVP_OFF
;----------------------------------------------------------------------------
count_1 equ 0x20
count_2 equ 0x21
count_3 equ 0x22
ORG 0x0000
GOTO MAIN
MAIN
ORG 0X0005
BANKSEL TRISB
CLRF TRISB
BANKSEL PORTB
CLRF count_3
LOOP clrf PORTB
CALL DELAY
MOVLW h'01'
MOVWF PORTB
CALL DELAY
DECFSZ count_3,1;VONG LAP
GOTO LOOP
clrf PORTB
CALL DELAY
MOVLW h'01'
MOVWF PORTB
CALL DELAY
GOTO $
;--------------------------------------------------------------------------
;CHUONG TRINH DELAY

DELAY CLRF count_1
D2 CLRF count_2
D1 DECFSZ count_2,1
GOTO D1
DECFSZ count_1,1
GOTO D2
return
END[/quote]

tuan1007 28-06-2009 02:16 AM

Vòng lặp
 
1 Attachment(s)
Em đả biên dịch và chạy thử,Kết quả OK.Cảm ơn anh tmd nhé!.Cách của anh hay.

Cách của em cũng chạy OK luôn.Thay đổi số lần nháy RB0 dể dàng.


title "chop led _b.asm"
processor p16f877a
include <p16f877a.inc>
__CONFIG _CP_OFF&_PWRTE_ON&_WDT_OFF&_HS_OSC&_LVP_OFF
;--------------------------------------------------------------------------
count_1 equ 0x20
count_2 equ 0x21

ORG 0x0000

ORG 0X0005
BANKSEL TRISB
CLRF TRISB
BANKSEL PORTB
;-------------------------------------------------------------------------
MOVLW d'0'
MOVWF h'28'

LOOP
INCFSZ h'28',1
GOTO LOOP1
GOTO NET

LOOP1
clrf PORTB
CALL DELAY
MOVLW h'01'
CALL DELAY
MOVWF PORTB
CALL DELAY
GOTO LOOP

NET
clrf PORTB
MOVLW h'01'
MOVWF PORTB
CALL DELAY

CLRF PORTB
CALL DELAY
BSF PORTB,0
GOTO$
;-------------------------------------------------------------------------
;CHUONG TRINH DELAY
DELAY CLRF count_1
D2 CLRF count_2
D1 DECFSZ count_2
GOTO D1
DECFSZ count_1
GOTO D2

RETFIE

END

-----------------------------------------------------------------------

Trong File đính kèn có File .asm và File của 2 cách.


Múi giờ GMT. Hiện tại là 08:49 PM.

Tên diễn đàn: vBulletin Version 3.8.11
Được sáng lập bởi Đoàn Hiệp.
Copyright © PIC Vietnam