em muốn làm thử mạch đếm số dùng 2 led 7 thanh va con 89c51(thử làm mô phỏng trên proteus thôi).em dùng con led 7 thanh thứ nhất để đếm hàng đơn vị,con thứ 2 đếm hàng chục.Hiện giờ em chưa biết phải viết ct như thế nào(làm sao để led 1 đếm đến 9 thì led2 nhảy thêm 1 đv),nếu ai biết thì giúp em với.Ct không cần quá cao siêu vì có thể có nhiều câu lệnh em chưa hoc đến,hãy viết sao cho người mới học lập trình như em biết là được và giải thích tưng câu lệnh trong đó giúp em.thank
Chương trinh c đếm số dung 89c51
Collapse
X
-
Chắc là ko phải đơn giản mà không ai muốn giúp bạn đâu, mà là bài này đã có rất nhiều trên diễn đàn rồi mà, bạn phải tìm chứ.Nguyên văn bởi viem1991 Xem bài viếtchắc em hỏi gà quá không ai muốn giúp ak.hi
Mình up lại cho bạn này.
Led 7 thanh.rar
Đếm hẳn tới 1000 luôn. Bạn ko hiểu dòng nào thì lên hỏi mọi người, chắc sẽ trả lời ngay chứ bảo mọi người giải thích từng dòng lệnh thì.....Mua bán thiết bị điện công nghiệp tại Hà Nội, toàn quốc.
http://diencongnghiep360.com/
http://tudienhathe.vn/
Comment
-
Đơn giản hoá.Bạn có 2 biến hàng hơn vị(donvi) và hàng chục(chuc).
for(chuc=0;chuc<=9;chuc++)
{
for(donvi=0;donvi<=9;donvi++){
//gọi hàm hiển thị
//delay
}
}
cái này thì chạy tít mÙ nhénvi<=9;donvi++){
//gọi hàm hiển thị
//delay
}
}
cái này thì chạy tít mÙ nhé, , ,
Comment
-
Đây chương trình của bạn đây
với bao nhiêu led thì chỉnh sửa một tý là ok.Code:#include"reg52.h" sbit Led_dv = P3^0; sbit Led_chuc = P3^1; unsigned char Ma[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90}; int a,b,c,d,k; void delay(unsigned int ms) { unsigned int i,j; for(i=0;i<ms;i++) for(j=0;j<125;j++); } void main() { int i; while(1) { for(k=0;k<=99;k++) { a=k/10; b=k%10; for(i=0;i<20;i++) { { Led_dv=1; //led dv P2=Ma[a]; delay(20); Led_dv=0; P2=0xff;//xoa data Led_chuc=1; //led chuc P2=Ma[b]; delay(20); Led_chuc=0; P2=0xff; } } } } }
Comment
-
void HIEN_THI(void) // Hàm Quet led.
{
P0=M[nghin]; // Đầu tiên, cho số hàng nghìn sáng (Đưa catot của led về 0)
P2=~0x1; // Đưa Anot của led lên 1 (xem phần cứng có cổng not)
delay_10ms(1); // Trễ một khoảng thời gian t để đủ thời gian lưu ảnh trên mắt !
P2=~0; // Tắt led hàng nghìn, chuẩn bị hiện thị led hàng trăm(để led ko bị nhấp nháy)
P0=0xFF;
P0=M[tram]; // Tương tự như với số hàng nghìn (hiện thị số hàng trăm)
P2=~0x2;
delay_10ms(1);
P2=~0;
P0=0xFF;
P0=M[chuc];
P2=~0x4;
delay_10ms(1);
P2=~0;
P0=0xFF;
P0=M[donvi];
P2=~0x8;
delay_10ms();
P2=~0;
P0=0xFF;
}
Bài trên mình viết chi tiết các hàm riêng biệt nên hơi dài dòng, tuy nhiên sẽ dễ hiểu hơn.Mua bán thiết bị điện công nghiệp tại Hà Nội, toàn quốc.
http://diencongnghiep360.com/
http://tudienhathe.vn/
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!
Hôm qua, 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 -
-
-
Trả lời cho TCL - Tập hợp các vấn đề về màn hình màu TCLbởi dtvankhoeBác nào có file rom này cho em xin em cảm ơn ạ TCL L43S6500 – TPD.RT2841.PB772
-
Channel: Điện tử truyền hình
30-08-2026, 21:08 -

Comment