- à, anh tlm..., hình em vẽ là để minh họa so sánh với mạch của thớt xem led của thớt nó là dạng quét trực tiếp hay biết đâu nó qua ic mở rộng thêm chân ( ví như 74hc595) chẳng hạn...
cho em hỏi led 7 đoạn arduino
Collapse
X
-
Ôi khó đấy bạn phoxom113 khi tay không bắt giặc à. Hi
Như #30 bác meomuop có nói thì việc đđọc 7 chân tín hiệu nếu là mức 0 thì sẽ phải làm ngược lại xíu.
Nếu 3 led của bạn chính xác là A chung thì 3 chân A đó được kích và quét qua 3 trans như hình bác mèo minh họa thì 7 chân kia sẽ là các chân K riêng lẻ và được quét qua ic nào đó. Việc đọc lúc này sẽ là đọc mức 0. Nhưng vd nếu đọc mức 0 cụ thể thì sẽ có trường hợp trans của led đó chưa kích và sẽ k có điện qua A và về K của led đó => 7 chân tín hiệu lúc này sẽ là 0. Nếu led đó hiển thị nghĩa là có điện từ A về K của led đó => các chân không tham gia tạo số sẽ là mức 1. =>=>=> tại sao ta k kết hợp đọc mức cao của A và mức cao tại các chân K (các chân K không tham gia tạo số sẽ là mức cao) và đảo lại trạng thái tín hiệu lấy dc từ 7 chân này mà xuất led?
Ý của em là vậy và cách diễn đạt cũng hơi lủng củng. Bác nào đọc thì hiểu dùm và cho em ý kiến xem ạ.
Còn như cuối thư bác mèo nói thì cái khung sườn là vậy, việc bồi đắp cho vừa thì phải tùy chủ thớt thôi à!
Chúc bạn thành công.
Comment
-
Anh @thang... trường hợp a nói thì 3 tran sẽ thay nhau dẫn toàn thời gian ạ. Nếu còn chưa yên tâm thì anh câu cho 7 con trở vài kilo ôm từ chân tín hiệu lên vcc. Khi ấy mà mcu chưa xuất tín hiệu mức 0 thì 7 chân này sẽ là mức 1. Về vấn đề thư cuối thì cũng hông hẳn đâu ạ. Chỉ là vấn đề chính đã định hướng xong sẽ ko nói lại thôi ạ...
Comment
-
-
đây là mạch mẫu.
em viết code như vậy không biết có đúng không nhưng khi hiện Serial em thấy các chân analog nó nhảy số liên tục từ 200>1000, các chân digital em làm việc khác rồi. chỉ có thể sử dụng analog để đọc a,b,c,e,f,g là cái chân tương ứng A,B,C,E,F,G em bỏ chân D của led 7 đoạn, các pro xem giúp em.
void setup()
{
Serial.begin(9600);
pinMode(A0, INPUT);
pinMode(A1, INPUT);
pinMode(A2, INPUT);
pinMode(A3, INPUT);
pinMode(A4, INPUT);
pinMode(A5, INPUT);
pinMode(3, INPUT);
pinMode(4, INPUT);
pinMode(5, INPUT);
pinMode(buttoncong, OUTPUT);
}
void demso()
{
int a=0;
int b=0;
int c=0;
int e=0;
int f=0;
int g=0;
val1=digitalRead(3); // tin hiệu led hàng đơn vị
val2=digitalRead(4);
val3=digitalRead(5);
if(val1==HIGH)
{
b=analogRead(A0);
c=analogRead(A1);
a=analogRead(A2);
e=analogRead(A3);
f=analogRead(A4);
g=analogRead(A5);
if (b<300 && c<300 && e<300 && f<300 && g>300 && a<300) // 300 là số cho đại
{
dvi=0 ;
}
if (b<300 && c<300 && e>300 && f>300 && g>300 && a>300)
{
dvi=1;
}
if (b<300 && c>300 && e<300 && f>300 && g<300 && a<300)
{
dvi=2;
}
if (b<300 && c<300 && e>300 && f>300 && g<300 && a<300)
{
dvi=3;
}
if (b<300 && c<300 && e>300 && f<300 && g<300 && a>300)
{
dvi=4;
}
if (b>300 && c<300 && e>300 && f<300 && g<300 && a<300)
{
dvi=5;
}
if ( a<300 && b>300 && c<300 && e<300 && f<300 && g<300)
{
dvi=6;
}
if (b<300 && c<300 && e>300 && f>300 && g>300 && a<300)
{
dvi=7;
}
if ((b<300) && (c<300) && (e<300) && (f<300) && (g<300) && (a<300))
{
dvi=8;
}
if ((b<300) && (c<300) && (e>300) && (f<300) && (g<300) && (a<300))
{
dvi=9;
}
Serial.print("dvi:");
Serial.println(dvi);
}3 Photos
Comment
Bài viết mới nhất
Collapse
-
-
bởi bqvietĐám UPS cửa cuốn đời cổ vẫn chạy 1 biến áp sắt từ vừa để hạ áp điện lưới nạp bình điện, vừa để kích áp bình điện thành sóng vuông đầu ra đấy thôi. Kiểu tiết kiệm này đã có từ mấy chục năm nay. Sơ đồ đại loại như link
https://www.homemade-circuits.com/si...rchargerchang/...-
Channel: Nguồn!
06-09-2026, 16:49 -
-
bởi dinhthuong92Không biết nó thiết kế kiểu gì mà dùng chung được cuộn cảm L cho cả mạch Buck hạ áp để sạc pin và Boost nâng áp cho Led. Muốn vẽ mạch để xem mà nhiều linh kiện quá, e không kham nổi!
Bác nào có sơ đồ xin up lên cho mọi người tham khảo nhé!...-
Channel: Nguồn!
04-09-2026, 11:09 -
-

Comment