PIC Vietnam

Go Back   PIC Vietnam > Microchip PIC > Các ngôn ngữ lập trình khác (CCS C, HT PIC,...)

Tài trợ cho PIC Vietnam
Trang chủ Đăng Kí Hỏi/Ðáp Thành Viên Lịch Bài Trong Ngày Vi điều khiển

Trả lời
 
Ðiều Chỉnh Xếp Bài
Old 22-06-2009, 02:02 AM   #1
crazy_baby
Nhập môn đệ tử
 
Tham gia ngày: Nov 2008
Bài gửi: 2
:
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;

}
}
crazy_baby vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 22-06-2009, 09:53 AM   #2
hopeman
Đệ tử 6 túi
 
hopeman's Avatar
 
Tham gia ngày: Jul 2007
Bài gửi: 146
:
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]
__________________
mạch nạp - kit phát triển - linh kiện điện tử www.PNLabvn.com
hopeman vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 22-06-2009, 10:16 AM   #3
cskiller
Đệ tử 4 túi
 
Tham gia ngày: Aug 2008
Bài gửi: 89
:
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.
__________________
Quang báo RG/RGB 6/8/12/16 bits màu
Phone No: 0905.034.086
Email: lmquyen@gmail.com
cskiller vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 17-08-2009, 11:26 AM   #4
honed
Nhập môn đệ tử
 
honed's Avatar
 
Tham gia ngày: Aug 2009
Bài gửi: 1
:
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.
honed vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Trả lời


Quyền Sử Dụng Ở Diễn Ðàn
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is Mở
Smilies đang Mở
[IMG] đang Mở
HTML đang Tắt

Chuyển đến


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


Được sáng lập bởi Đoàn Hiệp
Powered by vBulletin®
Page copy protected against web site content infringement by Copyscape
Copyright © PIC Vietnam