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)
-   -   [help] Pic 16F877A quét led ma trận 8x8 ko chay.... (http://www.picvietnam.com/forum/showthread.php?t=29587)

hoangex 12-07-2012 10:29 PM

[help] Pic 16F877A quét led ma trận 8x8 ko chay....
 
Tình hình của em là mới nghiên cứu về Pic 16F877A, em dùng quét led 8x8, dùng portB để quét hàng, portD để quét cột. Nhưng xảy ra hiện tượng là cứ khi tới code làm 64 led sáng hết là pic giữ nguyên trạng thái đó luôn, tức là 64 led sáng hết rùi ko chạy nữa. Nhưng khi em nối 1 chân bất kỳ trong portB lên Vcc qua 1 con trở khoang 220ohm thì nó lại chạy bình thường và liên tục. Mong được các anh chị hướng dẫn cách khắc phục. Em viết 1 code đơn giản chạy thử thế này cũng ko dc, em dung CCS ạ!!

#include <16f877a.h>
#include <def_877a.h>
#device *=16 ADC=8
#FUSES NOWDT, HS, NOPUT, NOPROTECT, NODEBUG, NOBROWNOUT, NOLVP, NOCPD, NOWRT
#use delay(clock=12000000)

void main()
{

trisb=0x00;
portb=0x00;
trisd=0x00;
portd=0x00;


while (1)
{
{
portb=0xff;
portd=0x00;
}
delay_ms(1000);
{
portb=0x00;
portd=0x00;
}
delay_ms(1000);
{
portb=0xff;
portd=0x00;
}
delay_ms(1000);
{
portb=0x00;
portd=0x00;
}
delay_ms(1000);
{
portb=0xf0;
portd=0x00;
}
delay_ms(1000);
{
portb=0xF;
portd=0x00;
}
delay_ms(1000);
{
portb=0xff;
portd=0xF0;
}
delay_ms(1000);
{
portb=0xFF;
portd=0xF;
}
delay_ms(1000);
{
portb=0x00;
portd=0x00;

}
delay_ms(1000);
}

nickyshadow 13-07-2012 10:02 AM

mình chưa đọc code của bạn, với lại mình cũng chỉ là dân mới vào nghề thôi, cái mà bạn nói là nỗi port B lên VCC qua một điện trở thì gọi là điện trở theo (pull-up resistor). Mình thấy cái bộ kit thực hành pic của mình port nào cũng có điện trở treo cả. với lại hồi mình còn làm 8051 thì port 0 muốn xuất dữ liệu phải thêm điện trở treo vào mới đc. cái này thì mình không biết tại sao, chỉ biết là phải làm như vậy thôi. Còn cái vấn đề mà bạn nói chạy được nửa chừng rồi không chạy nữa có thể là do thiếu dòng. Mình làm quang báo trên module led 16x32 dùng thêm các id đệm dòng, ic dịch bit với ic giải mã 138, ban đầu mình dùng chung nguồn với kit thì nó cũng bị tình trạng tương tự với bạn, sau mình mua nguồn riêng để làm thì không sao!
Vài chia sẻ cùng bạn, thân!


Múi giờ GMT. Hiện tại là 08:48 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