PIC Vietnam

PIC Vietnam (http://www.picvietnam.com/forum/index.php)
-   Các ngôn ngữ lập trình khác (CCS C, HT PIC,...) (http://www.picvietnam.com/forum/forumdisplay.php?f=12)
-   -   sửa giùm em code này với (http://www.picvietnam.com/forum/showthread.php?t=4335)

crazy_baby 22-06-2009 02:02 AM

sửa giùm em code này với
 
em mới viết xong cái code ni , hok bít bị sai chỗ nào , mong các bro giúp giùm với .
mô tả : xuất dữ liệu ra portb , portd điều khiển hàng , cột cho ma trận led 8*8. thuật toán sử dụng matrix.
hiện tượng : led hok chạy mà đứng im hoài.
các bro giúp jum em nhanh nhanh với. thanks!!
#include<16f877a.h>
#include<def_877a.h>
#fuses HS,NOWDT,NOPROTECT,NOLVP
#device *=16 ADC=8
#use delay(clock=4000000)
int1 a[8][8];
int1 b[8],d[8];
#define PIN_B0 b[0]
#define PIN_B1 b[1]
#define PIN_B2 b[2]
#define PIN_B3 b[3]
#define PIN_B4 b[4]
#define PIN_B5 b[5]
#define PIN_B6 b[6]
#define PIN_B7 b[7]
#define PIN_D0 d[0]
#define PIN_D1 d[1]
#define PIN_D2 d[2]
#define PIN_D3 d[3]
#define PIN_D4 d[4]
#define PIN_D5 d[5]
#define PIN_D6 d[6]
#define PIN_D7 d[7]
void checkvalue(int m,n);
void main()
{
int i,j;
trisb=0x00;
trisd=0x00;
while(1){
for(i=0;i<=8;i++){
for(j=0;j<=8;j++){a[i][j]=1;
checkvalue(i,j);
delay_ms(100);
if(j==8)j=0;
}
if(i==8)i=0;
}
}

}
void checkvalue(m,n)
{
if(a[m][n]==1){
b[m]=0;
d[n]=1;
delay_ms(20);
d[n]=0;

}
}

hopeman 22-06-2009 09:53 AM

mình nghĩ là bạn ngocthanh07 phát hiện đúng đấy, rời vòng for thì cả i và j đều =9, và vì thế vòng for sẽ ko bao giờ được quyét nữa, và có lẽ đèn sẽ dừng lại ở a[8][8]

cskiller 22-06-2009 10:16 AM

Thêm 1 lỗi về Memory Segment Fault: a[][],b[],d[] chỉ khai báo mảng 8 phần tử mà lại cho phép gán a[i][j],b[n],[d[m] trong trường hợp i=j=m=n=8.

honed 17-08-2009 11:26 AM

Chương trình của bạn như vậy không thể dịch chuyển gì đâu.
Trước tiên, tôi miêu tả ý tưởng của bạn xem có phải không rồi mình sẽ viết code giúp bạn:
+ Điều khiển 01 Led 8x8. (1 màu)
+ portB nối vào hàng, portD nối vào cột.
+ Muốn chữ nối đuôi nhau chạy từ phải sang trái phải không?

==>Để chắc chắn khớp với phần cứng, đề nghị bạn post hình luôn đi, để mình dễ đường viết code. Khỏi phải sửa đi, sửa lại vì không hợp với phần cứng.


Múi giờ GMT. Hiện tại là 08:48 PM.

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