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)
-   -   [Hiện tượng lạ] Tần số của PIC18F4550 tăng lên khi chạm tay vào mặt bàn?? (http://www.picvietnam.com/forum/showthread.php?t=8759)

UenX 12-04-2011 01:09 AM

[Hiện tượng lạ] Tần số của PIC18F4550 tăng lên khi chạm tay vào mặt bàn??
 
Chào các anh chị.
Học kì này em bắt đầu vào chuyên ngành, môn Hệ thống nhúng thầy yêu cầu làm cho thầy một cái "KIT", thế nên mới lọ mọ ra Nhật Tảo mua một mớ linh kiện về để thử nghiệm. Sau 1 ngày nghịch vơi con PIC18F4550, có lẽ do k có căn bản kiến thức về điện-điện tử, em gặp phải hiện tượng khó hiểu như sau :

http://www.youtube.com/watch?v=taLj4GfCNY4

• Vi điều khiển PIC18F4550, mạch tạo xung sử dụng thạch anh 12Mhz, tụ 33pf
• Mạch nạp PICKIT 2 SE.
• Lấy nguồn từ Gnd và Vdd của PICKIT 2 SE (5V) ( em có thử lấy nguồn từ một sợi cáp USB, nhưng k hiểu sao chỉ đạt được hiệu điện thế 5V trong 1, 2 giây lúc mới cắm vào, sau đó bị hạ xuống khoảng 2V ( cắm đèn led vào thì led chớp sáng 4,5 lần khi windows nhận dạng thiết bị, sau 2 giây thì báo lỗi k nhận ra thiết bị, led chỉ còn sáng mờ mờ )

• Sử dụng PORTB để điều khiển một led 7 đoạn chớp tắt liên tục, với code HT PIC C18 như sau:

#include <htc.h>

void init(void)
{
// port directions: 1=input, 0=output
TRISB = 0b00000000;
}
int counter=0;
void main(void)
{
init();
while(1)
{
counter = (counter==0)?1:0;
PORTB= (counter==0)?0b00000000:0b11111111;
_delay(25000);
}

}

==> K hiểu sao khi nạp xuống mạch và chạy thì led chớp tắt rất chậm ( tần số nhỏ, khoảng 3 giây một lần) Và khi chạm tay vào mặt bàn ( chân chạm đất ) thì LED bỗng chớp tắt nhanh hơn, bàn tay càng tiếp xúc nhiều thì LED chớp tắt càng nhanh ! ( PICKIT2SE và testboard đều không tiếp xúc trực tiếp với mặt bàn )

• Khi em thử thay nguồn bằng một pin sạc 3.9 Volt thì cũng xảy ra hiện tượng tương tự ( khi chạm tay vào phần mặt bàn gần chỗ đặt pin, hoặc chạm tay lên pin ( có bọc một lớp giấy cứng ).


Rất mong được mọi người giải thích và giúp em cách khắc phục trường hợp này !

(PS: Và cũng cho em xin vài lời khuyên để đảm bảo an toàn cho PIC, hôm qua em sơ ý cắm ngược chân nguồn, PIC rất nóng, hôm nay thì có dấu hiệu chân RB5 hi sinh, khi nối dây từ chân này tới 1 chân của led 7 đoạn thì mạch ở trên k hoạt động, rút dây ra thì mạch lại chạy bình thường ?? )

Lần đầu post bài nên còn dài dòng và lủng củng, mong mọi người bỏ qua. Em xin cảm ơn nhiều ạ.

namqn 12-04-2011 11:41 AM

Sơ đồ mạch thử nghiệm của bạn ra sao?

Hiện tượng bạn mô tả giống với các triệu chứng của một mạch bị thả nổi chân MCLR.

Thân,

UenX 12-04-2011 12:23 PM

1 Attachment(s)
Trích:

Nguyên văn bởi namqn (Post 43866)
Sơ đồ mạch thử nghiệm của bạn ra sao?
Hiện tượng bạn mô tả giống với các triệu chứng của một mạch bị thả nổi chân MCLR.
Thân,

Cảm ơn anh.
chân MCLR em có nối với Vdd qua một điện trở 10k, sơ đồ mạch thì rất đơn giản như sau :

http://www.picvietnam.com/forum/atta...1&d=1302581264

Tối qua em sử dụng file hex của bạn em dịch từ code CCS này (có phần configuration bits) thì k còn hiện tượng nhiễu như trên nữa (code HTPIC của em thì k có bit cấu hình nào cả )

#include <18f4550.h>
#device *=16 adc=8
#FUSES NOWDT, HS, NOPUT, NOPROTECT, NODEBUG, NOBROWNOUT,NOLVP, NOCPD, NOWRT
#use delay(clock=12000000)
#byte TRISD = 0xf95
#byte PORTD = 0xf83
int16 count1;

void main()
{
while(1)
{
Output_B(0);
delay_ms(1000);
Output_B(255);
delay_ms(1000);
}
}

Tuy nhiên delay tạo ra là 4s chứ k phải 1s như trong code.

UenX 12-04-2011 03:04 PM

Em vừa tìm kiếm với từ khóa "PIC18f4550 MCLR float" và tình cờ tìm được một trường hợp tương tự với hiện tượng em đang gặp phải :
Strange behavior of circuit [PIC18f4550]

Họ đưa ra giải pháp như sau :

Let's assume that you are using the 40 pin version of PIC18F4550 and a +5V supply:

(1) Connect a 10K resistor from MCLR to +5v
(2) Disable LVP (low voltage programming) configuration bit IN YOUR CODE

3) Connect a 0.1uF ceramic capacitor across each VDD / VSS pair.
4) Ensure that BOTH VDD pins are connected to +5V and BOTH VSS pins are connected to 0V
5) Connect 0.22uF ceramic capacitor from Vusb to 0v

Em đã thử tắt bit LVP trong phần config của PICKIT 2 Programmer và mạch k còn hiện tượng nhiễu như trên nữa ! Đồng thời chân RB5 trở lại hoạt động bình thường, k còn hiện tượng "khi nối dây từ RB5 tới 1 led trong LED 7 đoạn thì LED 7 đoạn bị tắt, khi rút dây này ra thì các led khác mới sáng lại" nữa )

Vẫn còn vài vấn đề với HTPIC, việc set Configuration Bits, tốc độ delay, em sẽ tiếp tục tìm hiểu và giải quyết.

Tạm thời kết luận : Hiện tượng nhiễu do cơ thể người và các chân của PIC hoạt động k bình thường có thể do chân MCLR bị thả nổi ( k được nối vào VDD qua 1 trở 10K-33K) hoặc cấu hình cho PIC chưa phù hợp ( cụ thể ở đây là bit LVP - Low Voltage Programming )

Cảm ơn anh namqn và mọi người !


Múi giờ GMT. Hiện tại là 04:01 AM.

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