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 |
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!
|
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'.
|
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 |
Trích:
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] |
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