|
Tài trợ cho PIC Vietnam |
Cơ bản về vi điều khiển và PIC Những bài hướng dẫn cơ bản nhất để làm quen với vi điều khiển PIC |
|
Ðiều Chỉnh | Xếp Bài |
02-08-2008, 01:06 PM | #11 | |
Đệ tử 2 túi
Tham gia ngày: Jun 2006
Bài gửi: 27
: |
Trích:
Code:
;====================================== processor p16f84a include <p16f84a.inc> __config _cp_off & _wdt_off & _xt_osc ;====================================== org 0x0c count0 res 1 count1 res 1 count2 res 1 ;====================================== org 0x00 goto main org 0x05 ;------------------------------------------------- main banksel trisa clrf trisa movlw 0xff movwf trisb banksel porta clrf porta movlw 0x09 movwf count0 clrw btfsc portb, 0 iorlw b'00001' btfsc portb, 1 iorlw b'00010' btfsc portb, 2 iorlw b'00100' btfsc portb, 3 iorlw b'01000' btfsc portb, 4 iorlw b'10000' addwf count0, 1 delay0 call delay100m decfsz count0, f goto delay0 bsf porta, 0 ;------------------------------------------------- delay100m movlw 0x4e movwf count2 delay2 nop nop call delay1278 decfsz count2, f goto delay2 movlw 0xf0 movwf count2 delay3 nop decfsz count2, f goto delay3 return ;------------------------------------------------- delay1278 movlw 0xff movwf count1 delay1 nop nop decfsz count1, f goto delay1 return ;------------------------------------------------- goto $ end ;====================================== nhưng chuyển các chương trình con xuống giữa 2 dòng goto $ và end thì chạy đúng bây giờ quay trở lại chương trình mẫu: để như vậy đương nhiên vẫn chạy đúng chuyển các chương trình con xuống giữa 2 dòng goto $ và end vẫn chạy đúng lẽ đương nhiên quẳng các chương trình con ở đâu mà chẳng được, thế nhưng với tiêu chí "học pic trong một ngày" tức là dành cho người mới học thì mẫu càng tổng quát càng tốt đúng không, vậy thì tại sao lại không chỉnh sửa một chút (chẳng sai gì và chẳng thiệt hại gì) để chương trình mẫu có thể tránh thêm một lỗi có thể gặp trong thực tế. To Namqn: Từ đầu tôi vẫn nhất quán là chuyển chương trình con xuống thôi. còn những cái khác có thể là do cách diễn đạt làm bạn hiểu sai. Thế còn goto $ hay loop goto loop ai chả biết bản chất nó là một, ý tôi muốn nói ở đây là tôi thì thích dùng goto $ để làm vòng lặp while(TRUE); còn có thể ng khác lại thích dùng loop goto loop để làm vòng lặp while(TRUE); thay đổi nội dung bởi: namqn, 02-08-2008 lúc 06:37 PM. |
|
|
|