anh oi em khong biet canh dau ic vao bien quang cao anh nao biet chi cho em voi cho em so do nguyen ly thi cang tot em cam on
Thông báo
Collapse
No announcement yet.
Tutorial: Led ma trận bằng hình ảnh (completed)
Collapse
This is a sticky topic.
X
X
-
Nguyên văn bởi typhoon Xem bài viếtNếu bạn đã làm được từng đó hiệu ứng rồi và "thực sự hiểu" thì các hiệu ứng khác bạn hoàn toàn có thể tự nghĩ ra và chỉnh sửa code đôi chút là ổn thôi
còn nhiều bạn chỉ copy code rồi chỉnh đôi chút mà không hiểu rõ về bản chất nó thì rất khó để tự mình viết thêm nhiều hiệu ứng..
. khuyên bạn chỉ cần từ một hiệu ứng thôi nhưng bạn hiểu rõ cách mà bảng quang báo bạn thực hiện để tạo ra nó ra sao thì bạn sẽ làm được khá nhiều hiệu ứng khác thôi.
khi đưa dữ liệu hàng 1 từ 74hc595 ra các cột.thay vì cho hàng 1 lên mức cao,ta sẽ đưa hàng 2 .Khi đưa dữ liệu hàng 2 ra,mình cho hàng 3 lên mức cao.... cứ thế .Còn để cho chữ chạy từ trái qua phải thì phải dịch bit gì gì đó(mình vẫn chưa cho nó chạy đc) .Mình quét theo hàng mà.
Bác nào rảnh chỉ cho mình mấy từ như màn hình offscreen đi.mình đọc tới đó chẳng hiểu gì cả!!!
Comment
-
Để dịch từ trái sang phải hay từ phải sang trái thì bạn dịch byte,đưa byte đã dịch ra cột trước khi chốt,muốn vậy thì byte1<<1 byte2>>7,sau đó dùng lệnh "hoặc" (or )ghép 2 byte này lại thành byte mới,cứ vậy ghép được 3 byte (với bài toán của bác nghaiha) chốt 1 lần được hàng thứ nhất,làm như vậy với 7 hàng còn lại,ok.trang trước có cao thủ viết rồi mà.Cùng dân Haui rồi,bạn học lớp nào thế?Phạm Duy Quý
PN:0973291335
Dám nghĩ,dám nói,dám làm
Comment
-
Nguyên văn bởi haui0037 Xem bài viếtBạn nói vậy là không đúng rồi.Mình làm mạch giống bác nghaiha mà,cho chữ chạy từ trên xuống dưới ,từ dưới lên thì chỉ việc làm :
khi đưa dữ liệu hàng 1 từ 74hc595 ra các cột.thay vì cho hàng 1 lên mức cao,ta sẽ đưa hàng 2 .Khi đưa dữ liệu hàng 2 ra,mình cho hàng 3 lên mức cao.... cứ thế .Còn để cho chữ chạy từ trái qua phải thì phải dịch bit gì gì đó(mình vẫn chưa cho nó chạy đc) .Mình quét theo hàng mà.
Bác nào rảnh chỉ cho mình mấy từ như màn hình offscreen đi.mình đọc tới đó chẳng hiểu gì cả!!!
Comment
-
Nguyên văn bởi dquy05 Xem bài viếtĐể dịch từ trái sang phải hay từ phải sang trái thì bạn dịch byte,đưa byte đã dịch ra cột trước khi chốt,muốn vậy thì byte1<<1 byte2>>7,sau đó dùng lệnh "hoặc" (or )ghép 2 byte này lại thành byte mới,cứ vậy ghép được 3 byte (với bài toán của bác nghaiha) chốt 1 lần được hàng thứ nhất,làm như vậy với 7 hàng còn lại,ok.trang trước có cao thủ viết rồi mà.Cùng dân Haui rồi,bạn học lớp nào thế?
Nick của mình : haui0037 ,bạn add vào rồi chỉ cho mình mấy đường cơ bản
Comment
-
Nguyên văn bởi dquy05 Xem bài viếtĐể dịch từ trái sang phải hay từ phải sang trái thì bạn dịch byte,đưa byte đã dịch ra cột trước khi chốt,muốn vậy thì byte1<<1 byte2>>7,sau đó dùng lệnh "hoặc" (or )ghép 2 byte này lại thành byte mới,cứ vậy ghép được 3 byte (với bài toán của bác nghaiha) chốt 1 lần được hàng thứ nhất,làm như vậy với 7 hàng còn lại,ok.trang trước có cao thủ viết rồi mà.Cùng dân Haui rồi,bạn học lớp nào thế?
Từ trước tới giờ đọc tới đoạn DMem[j*3+2]=(DMem[j*3+2]<<1)|(DMem[j*3]>>7); là chịu chết luôn,không hiểu đc.
Bây giờ có hướng làm rồi.Chắc săp cho nó chạy từ trái qua phải đc rồi.hì
Thank nha!
Comment
-
Các bác kô ai chỉ giáo giúp em được sao, giúp 1 chút cũng được mà hay la em post chương trình lên các bác xem hộ vì sao nó kô chạy nha.
Code:
#include <AT89x52.h>
#define DATA P2_0//Du lieu noi tiep ra 74595
#define INPUT P2_1//Clock cho phep dich 74595
#define OUTPUT P2_2//Clock cho phep chot 74595
#define A P0_0//Dau vao A cua 74138
#define B P0_1//Dau vao B cua 74138
#define C P0_2//Dau vao C cua 74138
#define ENABLE P0_3//Tin hieu cho phep dau ra cua 74138
#define N1 100
#define HANg P0
// Day la mang du lieu cho cot
unsigned char XINCHAO[] = {156,136,112,162,72,137,130,40,138,130,47,138,130, 232,139,162,40,138,156,40,114,0,0,0};
//Khai bao cac ham con
void Scanmatrix();
void Sendbyte(unsigned char byte);
void delay(unsigned int n);
//---chuong trinh chinh--------
void main()
{
while(1)
{
Scanmatrix();
}
}
void Scanmatrix()
{
unsigned char i;
for (i=0;i<64;i++)
{
Sendbyte(XINCHAO[i]); //Gui byte thu nhat trong mang datacot ra 74595
P0=i+8;de chan ENABLE luon o muc 1 , de no co the lam viec
delay(N1);
G2 = 0;//Cam dau ra cua 74138(tuong duong voi cat nguon)
}
}
void Sendbyte(unsigned char byte)
{
unsigned char i,temp;
for (i=0;i<8;i++)
{
temp = byte & (1 << i); //Giu nguyen noi dung bit thu i
if (temp)
{
DATA = 1; //Neu noi dung bit i la 1, thi out 1 ra 74595
}
else
{
DATA = 0; //Neu noi dung bit i la 0 thi out 0 ra 74595
}
INPUT = 1;
INPUT = 0; //out ra 1 bit, phai co mot xung clock
}
OUTPUT = 1;
OUTPUT = 0;//Dich du 8 bit thi chot mot lan
}
void delay(unsigned int n)
{
unsigned int i,j;
for (i=0;i<n;i++)
for (j=0;j<100;j++);
}
Mong các bác giúp giùm em tí , em đang làm đồ án. Hjx hjxHọc hỏi là trên hết .
Comment
-
Mình không biết bạn dùng 89C52 thế nào,nhưng mình làm theo bài của bác nghaiha thì chạy ngon mà.Mình gửi cho bạn xem bài mình hiển thị chữ như của bác nghaiha trên matrix 16x64.Attached FilesLast edited by H.Hai; 19-09-2009, 10:55.YM :
Comment
-
bạn hỏi vậy có nghĩa là sao, ha hỏi lệnh đó làm việc thế nào ah. Theo mình biết thì theo nguyên tắc quét led ma trận sẽ qua 4 bước
- Đưa dữ liệu ra cột
- Bật nguồn cho hàng tương ứng
- Trễ sáng
- Tắt nguồn cho hàng tương ứng
Cái bạn đang hỏi đang rơi vào mục 4 đó bận ( nếu như bạn hỏi)
Mong các bác giúp em chút, đang làm đồ án nên phải làm phiền các bác . SrHọc hỏi là trên hết .
Comment
Bài viết mới nhất
Collapse
-
Trả lời cho Suy ngẫmbởi HTTTTHBao giờ cho đến tháng ba,
Ếch cắn cổ rắn tha ra ngoài đồng.
Hùm nằm cho lợn liếm lông,
Một chục quả hồng nuốt lão tám mươi.
Bánh đúc nuốt trẻ lên mười,
Con gà, be rượu nuốt người lao đao.
Lươn nằm cho...-
Channel: Tâm tình dân kỹ thuật
Hôm qua, 23:06 -
-
Trả lời cho Suy ngẫmbởi kehuydiet092Kehuydiet092 chào các bác!nghe bác nguyendinhvan nói em lại nhớ bài Vè nói ngược khi xưa bé học.Hùm nằm cho lợn liếm lông....ếch cắn cổ rắn tha ra ngoài đồng...
-
Channel: Tâm tình dân kỹ thuật
Hôm qua, 20:40 -
-
bởi Nexus 6PCó mạch nào điện vào là 1 viên 18650 để lái bóng led công suất, ứng dụng để thắp sáng, làm đèn pin k bác thớt...
-
Channel: Điện tử công suất
Hôm qua, 15:57 -
-
Trả lời cho Dùng MC34063 để làm driver lái led 1W, 3Wbởi Nexus 6PCảm ơn bác, sẵn bác giới thiệu giúp e mạch lái đèn led công suất chạy 1 viên 18650 để e chế đèn pin với...
-
Channel: Điện tử dành cho người mới bắt đầu
Hôm qua, 15:55 -
-
bởi HieuvtXin chào mọi người.
Cho tôi hỏi cách đọc giá trị của diode dán (T3 B1) là bao nhiêu?
mọi người xem hình và chỉ giáo.. xin cảm ơn
và đây là vị trí diode nguồn PC . có thể thay thế bằng con khách như thế nào?
...-
Channel: Điện tử dành cho người mới bắt đầu
30-05-2024, 23:54 -
-
Trả lời cho Kiểm tra biến ápbởi nguyendinhvanĐại ý là máy có các bộ phận như thế này. Nó hiệu quả với mô hình sản xuất nhỏ, nhưng cũng dễ bỏ sót nếu kỹ thuật viên làm việc không tập trung.
Trong các nhà máy lớn, hệ thống đồng hồ được thay bằng máy tính và phần mềm, nó sẽ hỗ trợ, quản lý, hỗ trợ, giám sát luôn cả kỹ thuật viên.
...-
Channel: Điện tử dành cho người mới bắt đầu
30-05-2024, 02:10 -
-
Trả lời cho Kiểm tra biến ápbởi nguyendinhvanChào mọi người,
1 e làm trong cty về biến áp
2 toàn mấy con nhỏ nhỏ,
3 làm sao để mình có thể kiểm tra nhanh số vòng dây của mỗi cuộn
4 đầu vào đầu ra của dây
có thiết bị gì nhỏ gọn hỗ trợ việc này không...-
Channel: Điện tử dành cho người mới bắt đầu
30-05-2024, 01:36 -
-
bởi Trắng bạchem đang làm cái đồ án sử dụng pid để điều khiển Động Cơ DC Servo Giảm Tốc GA25 12v/280rpm, dùng winform truyền xuống pic16f877a các thông số vận tốc, ki, kd, kp. hiện tại em đã truyền xuống được nhưng truyền xuống vài lần là giao diện...
-
Channel: Hỗ trợ học tập
28-05-2024, 23:46 -
Comment