AI có lòng hảo tâm cho em xin sơ đồ nguyên lý của mạch đồng hồ số dùng 6 led 7đoạn (giờ,phút,giây) và ic at89c52 có sw điều chình giờ .Em xin chân thành cảm ơn nhiều nhiều.
Thông báo
Collapse
No announcement yet.
Các anh cho em xin mạch đồng hồ số đc ko ạ
Collapse
X
-
Bạn hãy tham khảo 2 code này, chỉ là CT đếm hoạt động giống đồng hồ chứ ko đúng như yêu cầu của bạnAttached FilesNhớ quá khứ buồn rơi nước mắt.
Nhìn tương lai lạnh buốt sống lưng.
Y!M: nhamdtk4.
Comment
-
Cái code "dong ho" thì mình ko rõ vì đấy là bài bạn mình làm, còn "clock" thì mô phỏng trong hợp ngữ (trình dịch) ấy nó chạy đúng. Có lẽ là do proteus nó ko mô phỏng đúng được bạn thử ráp mạch thật rồi nạp vào xem sao.Nhớ quá khứ buồn rơi nước mắt.
Nhìn tương lai lạnh buốt sống lưng.
Y!M: nhamdtk4.
Comment
-
-
Cái này đôn giản mún làm chơi bạn mua đồng hồ đeo tay loại 10k đó! Về lắp thêm mạch trans rùi chạy hà! Đơn giản vô cùng! Bạn chịu khó search trong diễn đàn nhé! Tại mình o nhớ nó ở đâu!Thiên đường xuất hiện ở những nơi có tình yêu!
Mèo con's blog:
Comment
-
Nguyên văn bởi hieuhht Xem bài viếtThank
nhưng mình muốn làm bằng VDK 8052
Ai có sơ đồ lắp ráp thi cho mìnhAttached Files
Comment
-
Nguyên văn bởi hieuhht Xem bài viếtAI có lòng hảo tâm cho em xin sơ đồ nguyên lý của mạch đồng hồ số dùng 6 led 7đoạn (giờ,phút,giây) và ic at89c52 có sw điều chình giờ .Em xin chân thành cảm ơn nhiều nhiều.
Đây là sơ đồ nguyên lí
Đây là mạch đem đi in
Đây là code viết bằng C (cho 89s52) (chạy ok)
HTML Code:#include <AT89x52.h> #include <intrins.h> //Dinh nghia I/O #define LED_DATA P0 #define key1 P2_3 #define key2 P2_2 #define key3 P2_1 #define key4 P2_0 #define LED1 P2_7 #define LED2 P2_6 #define LED3 P2_5 #define LED4 P2_4 //Khai bao cac chuong trinh con void setup_timer(void); void quet_phim(void); void delay(unsigned int number); //Khai bao bien unsigned char code bang_ma[10]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90}; unsigned char count1,count2,sec,h1,h2,m1,m2; char hour,minute; //Ham khai bao dung ngat timer void setup_timer(void) { TMOD=0x11; TH1=0xec; TL1=0x77; TH0=0x3C; TL0=0xAF; ET1=1; ET0=1; EA=1; TF1=0; TR1=1; TF0=0; TR0=1; } //Ham ngat timer0 dung de tao clock void T0_ISR(void) interrupt 1 { TR0=0; TH0=0x3C; TL0=0xAF; count1++; if(count1==20) { count1=0; sec++; } if(sec==60) { sec=0; minute++; } if(minute==60) { minute=0; hour++; } if(hour==24) hour=0; TF0=0; TR0=1; } //Ham ngat timer1 dung de quet void T1_ISR(void) interrupt 3 { TR1=0; TH1=0xEC; //5000us TL1=0x77; count2++; LED1=1; LED2=1; LED3=1; LED4=1; if(count2==1) { LED_DATA=bang_ma[h1]; LED1=0; } if(count2==2) { LED_DATA=bang_ma[h2]; LED2=0; } if(count2==3) { LED_DATA=bang_ma[m1]; LED3=0; } if(count2==4) { LED_DATA=bang_ma[m2]; LED4=0; count2=0; //Khoi dong lai bien dem } TF1=0; TR1=1; } //Ham quet phim void quet_phim(void) { if(key1==0) //Neu phim duoc an key1=0 { while(key1==0); //Chong nay phim delay(30); //Chong soc dien hour++; if(hour>23) hour=0; } if(key2==0) //Neu phim duoc an key2=0 { while(key2==0); //Chong nay phim delay(30); //Chong soc dien hour--; if(hour<0) hour=23; } if(key3==0) //Neu phim duoc an key3=0 { while(key3==0); //Chong nay phim delay(30); //Chong soc dien minute++; if(minute>59) minute=0; } if(key4==0) //Neu phim duoc an key4=0 { while(key4==0); //Chong nay phim delay(30); //Chong soc dien minute--; if(minute<0) minute=59; } } //Dinh nghia ham delay void delay(unsigned int number) { unsigned char j; unsigned int i; for(i=0;i<=number;i++) { for(j=0;j<=100;j++) {} } } //Chuong trinh chinh void main(void){ count1=0; count2=0; sec=0; hour=19; h1=hour/10; h2=hour%10; minute=36; m1=minute/10; m2=minute%10; setup_timer(); while(1) { quet_phim(); m1=minute/10; m2=minute%10; h1=hour/10; h2=hour%10; } }
Sơ đồ nguyên lí thì bạn mắc thêm 8 LED vào Port 1
HTML Code:#include <AT89x52.h> #include <intrins.h> #include "global.h" //Khai bao cac chuong trinh con void setup_timer(void); void quet_phim(void); void delay(unsigned int number); //Khai bao bien unsigned char code bang_ma[10]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90}; unsigned char count1,count2,sec,h1,h2,m1,m2; char hour,minute; //Ham khai bao dung ngat timer void setup_timer(void) { TMOD=0x11; TH1=0xec; TL1=0x77; TH0=0x3C; TL0=0xAF; ET1=1; ET0=1; EA=1; TF1=0; TR1=1; TF0=0; TR0=1; } //Ham ngat timer0 dung de tao clock void T0_ISR(void) interrupt 1 { TR0=0; TH0=0x3C; TL0=0xAF; count1++; if(count1==20) { count1=0; sec++; } if(sec==60) { sec=0; minute++; } if(minute==60) { minute=0; hour++; } if(hour==24) hour=0; TF0=0; TR0=1; } //Ham ngat timer1 dung de quet void T1_ISR(void) interrupt 3 { TR1=0; TH1=0xEC; //5000us TL1=0x77; count2++; LED1=1; LED2=1; LED3=1; LED4=1; if(count2==1) { LED_DATA=bang_ma[h1]; LED1=0; } if(count2==2) { LED_DATA=bang_ma[h2]; LED2=0; } if(count2==3) { LED_DATA=bang_ma[m1]; LED3=0; } if(count2==4) { LED_DATA=bang_ma[m2]; LED4=0; count2=0; //Khoi dong lai bien dem } quet_phim(); m1=minute/10; m2=minute%10; h1=hour/10; h2=hour%10; TF1=0; TR1=1; } //Ham quet phim void quet_phim(void) { if(key1==0) //Neu phim duoc an key1=0 { while(key1==0); //Chong nay phim delay(30); //Chong soc dien hour++; if(hour>23) hour=0; } if(key2==0) //Neu phim duoc an key2=0 { while(key2==0); //Chong nay phim delay(30); //Chong soc dien hour--; if(hour<0) hour=23; } if(key3==0) //Neu phim duoc an key3=0 { while(key3==0); //Chong nay phim delay(30); //Chong soc dien minute++; if(minute>59) minute=0; } if(key4==0) //Neu phim duoc an key4=0 { while(key4==0); //Chong nay phim delay(30); //Chong soc dien minute--; if(minute<0) minute=59; } } //Dinh nghia ham delay void delay(unsigned int number) { unsigned char j; unsigned int i; for(i=0;i<=number;i++) { for(j=0;j<=100;j++) {} } } //Chuong trinh chinh void main(void){ count1=0; count2=0; sec=0; hour=19; h1=hour/10; h2=hour%10; minute=36; m1=minute/10; m2=minute%10; setup_timer(); while(1) { LED_1=0;delay(125); LED_2=0;delay(125); LED_3=0;delay(125); LED_4=0;delay(125); LED_5=0;delay(125); LED_6=0;delay(125); LED_7=0;delay(125); LED_8=0;delay(125); P3=0xFF;delay(125); LED_8=0;delay(125); LED_7=0;delay(125); LED_6=0;delay(125); LED_5=0;delay(125); LED_4=0;delay(125); LED_3=0;delay(125); LED_2=0;delay(125); LED_1=0;delay(125); P3=0xFF;delay(125); LED_1=0;delay(125); LED_2=0;delay(125); LED_3=0;delay(125); LED_4=0;delay(125); LED_5=0;delay(125); LED_6=0;delay(125); LED_7=0;delay(125); LED_8=0;delay(125); P3=0xFF;delay(125); LED_1=0;delay(125); LED_8=0;delay(125); LED_2=0;delay(125); LED_7=0;delay(125); LED_3=0;delay(125); LED_6=0;delay(125); LED_4=0; LED_5=0;delay(250); P3=0xFF;delay(125); LED_1=0;delay(250); LED_2=0;delay(250); LED_3=0;delay(250); LED_4=0;delay(250); LED_5=0;delay(250); LED_6=0;delay(250); LED_7=0;delay(250); LED_8=0;delay(250); P3=0xFE;delay(500); LED_1=0;delay(250); LED_2=0;delay(250); LED_3=0;delay(250); LED_4=0;delay(250); LED_5=0;delay(250); LED_6=0;delay(250); LED_7=0;delay(250); P3=0xFC;delay(500); LED_1=0;delay(250); LED_2=0;delay(250); LED_3=0;delay(250); LED_4=0;delay(250); LED_5=0;delay(250); LED_6=0;delay(250); P3=0xF8;delay(500); LED_1=0;delay(250); LED_2=0;delay(250); LED_3=0;delay(250); LED_4=0;delay(250); LED_5=0;delay(250); P3=0xF0;delay(500); LED_1=0;delay(250); LED_2=0;delay(250); LED_3=0;delay(250); LED_4=0;delay(250); P3=0xE0;delay(500); LED_1=0;delay(250); LED_2=0;delay(250); LED_3=0;delay(250); P3=0xC0;delay(500); LED_1=0;delay(250); LED_2=0;delay(250); P3=0x80;delay(500); LED_1=0;delay(500); LED_1=0;LED_2=0;LED_3=0;LED_4=0;delay(125); P3=0xFF;delay(125); LED_5=0;LED_6=0;LED_7=0;LED_8=0;delay(125); P3=0xFF;delay(250); LED_5=0;LED_6=0;LED_7=0;LED_8=0;delay(125); P3=0xFF;delay(125); LED_1=0;LED_2=0;LED_3=0;LED_4=0;delay(125); P3=0xFF;delay(250); LED_1=0;LED_2=0;LED_3=0;LED_4=0;delay(125); P3=0xFF;delay(125); LED_5=0;LED_6=0;LED_7=0;LED_8=0;delay(125); P3=0xFF;delay(250); LED_5=0;LED_6=0;LED_7=0;LED_8=0;delay(125); P3=0xFF;delay(125); LED_1=0;LED_2=0;LED_3=0;LED_4=0;delay(125); P3=0xFF;delay(250); P3=0xFF;delay(500); P3=0x00;delay(1000); } }
Comment
-
Nguyên văn bởi Mr_se7en Xem bài viết89S52 hay 89C51 con nào cũng xài như nhau. Đây là mạch đồng hồ mình tham khảo anh em trên diễn đàn ve rồ làm mạch luôn, hơi tốn tiền 1 tí ( con 12c887 khoảng 60K) nhưng mà chạy giờ rất tốt và chính xác. bạn chỉ cần bắt tay vào làm nữa là ok. Mạch led là 8 con nhưng bạn cứ bỏ 2 con ra không cần ráp, (bỏ con thứ 3 và 6 ra từ trái sang). làm đi rồi mình giúp!
bạn dùng phần mềm ji để đọc vậy, sao mình dùng orcad 10.5 mà chỉ thấy phần mạch in ko thấy sơ đồ nguyên lý đâu cả còn proteus 7.2 thì ko đọc đcLast edited by hieuhht; 02-06-2009, 11:33.
Comment
Bài viết mới nhất
Collapse
-
Trả lời cho Kiểm tra biến ápbởi lamvu0677nhân tiện cho mình hỏi thêm về cái phần test hipot (cao áp),là để kiểm tra độ bền cách điện giưa các cuộn dây,mà thấy thông số test thường ở mức 4kvac,vậy nếu mấy con fail đó xài bình thường vẫn dduocj phải không ạ,vì điện mình làm gì lên tới mức đó
-
Channel: Điện tử dành cho người mới bắt đầu
10-11-2024, 08:52 -
-
Trả lời cho Kiểm tra biến ápbởi lamvu0677máy đo số vòng thì cty có ,mà nó to quá,tưởng có máy nào gọn gọn bỏ túi được thì tiện hơn,vì đi lại nhiều...
-
Channel: Điện tử dành cho người mới bắt đầu
10-11-2024, 08:47 -
-
bởi tmcodonMình thấy diễn đàn có chuyên mục quảng cáo rồi mà. Bạn đóng góp để mở luồng riêng
-
Channel: Hướng dẫn sử dụng diễn đàn
09-11-2024, 13:36 -
-
bởi Nicole08Xin chào mọi người, tôi đã sử dụng Flashforge Inventor 2 được gần 5 năm và rất hài lòng với nó, nhưng tuần trước đã xảy ra sự cố. Có vẻ như động cơ bước đưa sợi in vào đầu nóng đã bị hỏng. Mọi thứ khác có vẻ ổn trên máy...
-
Channel: Điện tử dành cho người mới bắt đầu
09-11-2024, 12:55 -
Comment