![]() |
|
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: Dec 2012
Bài gửi: 5
: |
PIC16F887 không tự chạy khi cấp nguồn
Chào các anh/chị,
tôi đang tự học PIC và có vấn đề khi nạp xong code: -Tôi thử ban đầu bằng một đoạn code đơn giản: #include<16F887.h> #fuses NOWDT,HS,NOPROTECT #use delay(clock=20000000) main() { while(true) { output_high(PIN_D0); delay_ms(1000); output_low(PIN_D0); delay_ms(1000); output_high(PIN_D1); delay_ms(1000); output_low(PIN_D1); delay_ms(1000); output_high(PIN_D2); delay_ms(1000); output_low(PIN_D2); delay_ms(1000); output_high(PIN_D3); delay_ms(1000); output_low(PIN_D3); delay_ms(1000); output_high(PIN_D4); delay_ms(1000); output_low(PIN_D4); delay_ms(1000); output_high(PIN_D5); delay_ms(1000); output_low(PIN_D5); delay_ms(1000); output_high(PIN_D6); delay_ms(1000); output_low(PIN_D6); delay_ms(1000); } } ---------- Mạch chạy bình thường, nhưng khi ngắt nguồn điện cho board sau đó cấp lại thì mạch không tự chạy, muốn mạch chạy thì phải cắm dây nối từ USB máy tính vô mạch nạp (PICKIT2 của Thiên Minh) thì mạch chạy, rút dây USB mạch nạp ra thì nó vẫn chạy. Chỉ khi ngưng cấp nguồn, sau đó cấp lại thì nó im re, phải nhá dây USB vào sau đó rút ra thì nó chạy bình thường. Tôi dùng nạp trên board theo hướng dẫn sơ đồ các dây nạp trên manual của PICKIT2. Sau đó kéo dây ra jack cắm mạch nạp. Còn phần cứng thì tôi làm theo như bài hướng dẫn của các anh trong diễn đàn này, chân MCRL của PIC thì tôi nối qua điện trở 10K vào nguồn 5V và đấu chung với VDD. Mạch như thế này Cảm ơn các anh/chị |
![]() |
![]() |
![]() |
#2 |
Nhập môn đệ tử
Tham gia ngày: Dec 2011
Bài gửi: 1
: |
Cho em hỏi. em muốn post bài mới nhấn ở chỗ nào nhỉ??? hiii
|
![]() |
![]() |
![]() |
#3 | |
Đệ tử 3 túi
Tham gia ngày: Jun 2012
Bài gửi: 54
: |
Trích:
Good Luck! |
|
![]() |
![]() |
![]() |
#4 | |
Đệ tử 7 túi
Tham gia ngày: Jul 2010
Nơi Cư Ngụ: TP HCM
Bài gửi: 190
: |
Trích:
Chỉ khi bạn mua IC cũ thì không chắc thôi!!!... Các mạch lúc chạy lúc không là do chương trình có thiếu sót, chủ yếu là phần khai báo, cấu hình,... Chương trình của bạn chưa thấy lệnh: set_tris_D(0); Chưa có file: #include <def_16f887.h> (Ít ra thì cũng định nghĩa các port cho nó, tốt hơn là kèm luôn cái file def_16f887.h vào). |
|
![]() |
![]() |
![]() |
#5 | |
Nhập môn đệ tử
Tham gia ngày: Mar 2014
Bài gửi: 2
: |
Trích:
|
|
![]() |
![]() |
![]() |
|
|