![]() |
|
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 |
![]() |
#1 |
Nhập môn đệ tử
Tham gia ngày: Apr 2008
Bài gửi: 10
: |
Nạp cho 16f877a bằng GTP-USP, chạy không đúng như lập trình
Em mới học pic nên chưa có nh kinh nghiệm, mong các anh giúp em.
Em viết chương trình xuất led đơn giản như thế này Code:
processor 16f877a include <p16f877a.inc> __CONFIG _CP_OFF & _WDT_OFF & _BODEN_OFF & _PWRTE_ON & _XT_OSC & _WRT_OFF & _LVP_OFF & _CPD_OFF org 00h goto main main count1 equ 20h count2 equ 21h count3 equ 22h bsf STATUS, RP0 bcf STATUS, RP1 clrf TRISB bcf STATUS, RP0 clrf PORTB bsf PORTB, 7 call delay loop rrf PORTB, 1 call delay goto loop delay movlw 0 movwf count1 movwf count2 movlw 5 movwf count3 loop_count1 decfsz count1, 1 goto loop_count1 loop_count2 decfsz count2, 1 goto loop_count1 loop_count3 decfsz count3, 1 goto loop_count1 Return END ![]() Cái này là tại con pic hay tại chương trình nạp vậy? Em đã verify sau khi nạp rồi, ok. Còn mạch thì đơn giản, nên chắc là sẽ không phải tại mạch rồi (em không dùng mạch in mà dùng breadboard) Mong các anh giúp em. thay đổi nội dung bởi: namqn, 24-04-2008 lúc 11:30 PM. |
![]() |
![]() |
![]() |
#2 |
Trưởng lão PIC bang
|
Cái điều bạn khẳng định chắc chắn có khi lại không chắc chắn đó ("Còn mạch thì đơn giản, nên chắc là sẽ không phải tại mạch rồi"). Bạn dùng thạch anh ngoài tần số bao nhiêu (vì bạn cấu hình dùng XT, nên tôi cho là bạn dùng thạch anh ngoài)?
Breadboard (đặc biệt là breadboard ở VN) được biết là dễ gây rắc rối cho các mạch dao động thạch anh ở dải tần số MHz. Dù mạch thử nghiệm có đơn giản đến đâu thì bạn cũng nên cho biết là bạn đã nối nó như thế nào. Người mới học thường mắc những lỗi cơ bản, mặc dù cái mạch nó chẳng có gì để mắc lỗi. Bạn đã mô phỏng code thành công, cho thấy chương trình ít nhất phải chạy như thiết kế. Bạn đã chạy thử được một phần chương trình, cho thấy chương trình đã được nạp vào chip thành công. Như vậy, vấn đề còn lại là phần cứng thử nghiệm của bạn thôi. Thân,
__________________
Biển học mênh mông, sức người có hạn. Đang gặp vấn đề cần được giúp đỡ? Hãy dành ra vài phút đọc luồng sau: http://www.picvietnam.com/forum/showthread.php?t=1263 |
![]() |
![]() |
![]() |
#3 |
Nhập môn đệ tử
Tham gia ngày: Apr 2008
Bài gửi: 10
: |
Em dùng thạch anh 4mhz, 2 tụ 33pf, nối như trong tài liệu của anh Nam đã hd. Cái breadboard nối với các led thì em đã làm từ trc để học mấy cái ic cơ bản. Chân MCRL thì em nối cũng như anh hướng dẫn nhưg em dùng 2 cái điện trở 1k (vì em chỉ có sẵn loại 1k thôi
![]() Code:
main count1 equ 20h count2 equ 21h count3 equ 22h bsf STATUS, RP0 bcf STATUS, RP1 clrf TRISB bcf STATUS, RP0 clrf PORTB bsf PORTB, 7 call delay bsf PORTB, 6 call delay bsf PORTB, 5 call delay bsf PORTB, 4 call delay bsf PORTB, 3 call delay bsf PORTB, 2 call delay bsf PORTB, 1 call delay bsf PORTB, 0 call delay thay đổi nội dung bởi: falleaf, 25-04-2008 lúc 01:00 PM. |
![]() |
![]() |
![]() |
#4 |
Nhập môn đệ tử
Tham gia ngày: Apr 2008
Bài gửi: 10
: |
sao ko ai trả lời giúp em hết vậy?
|
![]() |
![]() |
![]() |
#5 |
Trưởng lão PIC bang
|
Mỗi người đều có công việc của mình mà bạn, có phải ai cũng rảnh rỗi suốt ngày ngồi chờ người khác hỏi để trả lời đâu.
Thạch anh có nhiều loại, không phải thạch anh 4 MHz nào cũng giống nhau. Giá trị tụ 33 pF là giá trị khuyến cáo để thử nghiệm, bạn có thể phải tăng hay giảm nó đôi chút. Bạn cũng có thể thử cấu hình HS thay vì XT, vì có một số thạch anh có mức công suất lái cao hơn số khác. Thân,
__________________
Biển học mênh mông, sức người có hạn. Đang gặp vấn đề cần được giúp đỡ? Hãy dành ra vài phút đọc luồng sau: http://www.picvietnam.com/forum/showthread.php?t=1263 |
![]() |
![]() |
![]() |
#6 |
Nhập môn đệ tử
Tham gia ngày: Apr 2008
Bài gửi: 10
: |
cám ơn anh, em sẽ thử
|
![]() |
![]() |
![]() |
|
|