Bài Tập Lớn Điện Tử Số Mạch Báo Thức Đếm Lùi

16 1.2K 13
Bài Tập Lớn Điện Tử Số Mạch Báo Thức Đếm Lùi

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Mạch báo thức đếm lùiĐặt báo thức rồi đếm lùi về 0 Xử lý khi có báo thức: Ring, Silence, Snooze,…

BÀI TẬP LỚN MÔN ĐIỆN TỬ SỐ Bài 6: Mạch Đồng Hồ Báo Thức Đếm Lùi GV: Nguyễn Trung Hiếu Danh sách Sinh Viên thực hiện: Dương Văn Hải_B14DCVT077 Trương Văn Huy_ B14DCVT263 Đỗ Tuấn Đạt_B14DCVT134 Nguyễn Huy Khánh_B14DCVT080 I.ĐẶT VẤN ĐỀ Ngày nay, thiết bị điện tử cho phép thực nhiều công việc sống khoa học Trong thời đại bùng nổ công nghệ kỹ thuật nay, để việc tính toán thời gian cho công việc, người ta sử dụng mạch điện tử để chạy thời gian cách xác II PHUƠNG ÁN THIẾT KẾ 1.Mô tả hoạt động hệ thống Đặt thời gian chạy, ấn star để bắt đầu đếm lùi, đếm có chuông thông báo 2.Phương án thiết kế Sử dụng mạch số tạo xung với thạch anh ic AT89C52 tạo mod đếm, led đoạn hiển thị thời gian, chuông dùng để báo thức III SƠ ĐỒ KHỐI Thạch Anh XUNG CLOCK Vi xử lí AT89C52 P3.7 P2.0-P2.7 Ma trận led Đoạn Hiển thị Giây Loa P1.4-P1.7 P1.0-P1.3 Set incr reset star Transistor IV.Thực mạch điện Khối tạo xung( Thạch anh) Thạch anh gọi băng tinh, không tan thành nước, trông suốt pha lê, có đặc tính đáng ý: Nó mát lạnh ta cầm lên tay Bởi từ xưa, để kiểm tra xem đồ thật hay đồ giả, thợ kim hoàn thường áp vào má xem có lạnh không Thạch anh điện tử: linh kiện làm tinh thể đá thạch anh mài phẳng xác Linh kiện thạch anh làm việc dựa hiệu ứng áp điện Hiệu ứng có tính thuận nghịch Khi áp điện áp vào mặt thạch anh, bị biến dạng Ngược lại, tạo sức ép vào bề mặt đó, phát điện áp Những tinh thể thạch anh sử dụng chúng có tính chất “áp điện”, có nghĩa chúng chuyển dao động khí thành điện áp ngược lại, chuyển dao động khí thành xung điện áp Tính chất áp điện Jacques Curie phát năm 1880 từ chúng sử dụng vào mạch điện tử tích chất hữu ích này.Một đặc tính quan trọng tinh thể thạch anh tác động dạng học đến chúng (âm thanh, sóng nước ) vào tinh thể thạch anh chúng tạo điện áp dao động có tần số tương đương với mức độ tác động vào chúng, chúng ứng dụng nhiều lĩnh vực Chẳng hạn kiểm soát rung động động xe để kiểm soát hoạt động chúng 2.Khối vi điều khiển ( AT89C52) Vi điều khiển AT89C52 vi xử lý 8bit chế tạo theo công nghệ CMOS với 8KB nhớ chương trình (bộ nhớ dạng Flash) đọc ghi 1000 lần.Nếu bạn muốn nhớ chương trình lớn hơn, sử dụng AT89C54, AT89C58 với nhớ chương trình 16K, 32K 89C52có 40 chân, cổng vào (P0,P1, P2, P3), cổng gồm chân (tương ứng với 8bit byte), có chức nhận xuất liệu Riêng cổng P3 cổng đặc biệt, thêm chức khác nhận ngắt, nhận truyền liệu nối tiếp Sơ đồ chân 8051: - Từ chân 32->39: Cổng vào 0, tương ứng với chân P0_7 > P0_0 (8bit) - Từ chân 1->8: Cổng vào - Từ chân 21 -> 28: Cổng vào - Từ chân 10->17: Cổng vào - Chân 40 chân 20: Cấp nguồn cho VĐK Chân 40 bạn nối với +5V chân 20 nối với mass - Chân 18 chân 19 (XTAL XTAL 1): Nối với dao động thạch anh (crystal) nhằm tạo xung nhịp cho Vi điều khiển Hai chân chân bạn nối với đầu thạch anh Ngoài ra, chân, bạn nối với tụ 33pF (là loại tụ gốm, nhỏ) xuống mass để bù nhiệt ổn định hoạt động cho VĐK - Chân (RST): Dùng để Reset VĐK Khi chân đưa lên mức áp cao khoảng thời gian từ chu kỳ máy (chu kỳ máy nói sau) trở lên VĐK reset đưa tình trạng lúc ban đầu Chân bạn nối với điện trở 8,2K, nối với nút ấn đưa lên nguồn +5V Khi nhấn nút, chân số đưa lên mức áp cao reset cho VĐK - Chân PSEN: Bạn nối lên +5V để thị sử dụng chương trình từ ROM Sơ đồ khối Sơ đồ mô 3.Khối hiển thị (LED Thanh 7SEG-MPX4-CA) Các đầu ABCDEFG nối với P2.0-P2.6 Các đầu 1234 nối từ P1.0-P1.3 (qua transistor) 4.Khối chuông Chân P3.7 nối vào chuông 5.Khối điều khiển (set, reset, incr, star) 6.Khối pause 7.Toàn Mạch V Sử dụng Code chạy #include sbit dig_ctrl_4=P1^0; sbit dig_ctrl_3=P1^1; sbit dig_ctrl_2=P1^2; sbit dig_ctrl_1=P1^3; sbit reset=P1^7; sbit start=P1^6; sbit incr=P1^5; sbit set=P1^4; sbit pause=P3^3; sbit buzzer_pin=P3^7; sbit relay=P3^6; int sel_seg_to_incr=0; int ret_seg_to_incre=0; int recent_incr_seg; int begin; unsigned char dig_disp=0; int min2=0; int min1=0; int sec2=0; int sec1=0; int p; int avi=0; char dig_val[10]={0x40,0xF9,0x24,0x30,0x19,0x12,0x02,0xF8,0x00,0x10 void delay(int a) { int i; for(i=0;i=0) { while(min1>=0) { while(sec2>=0) { while(sec1>=0) { p=1; while(min2==0&&min1==0&&sec2==0&&sec1==0&&reset! =0&&begin==0) { if(p==1) { buzzer_pin=0; delay(); buzzer_pin=1; p++; relay=0; } } if(reset==0 || begin==1) { dig_ctrl_4=1; dig_ctrl_3=1; dig_ctrl_2=1; dig_ctrl_1=1; resetfn(); } while(avi==1&&start==1); avi=0; delay(20); sec1 ; } sec1=9; sec2 ; } sec1=9; sec2=5; min1 ; } sec1=9; sec2=5; min1=9; min2 ; } min2=5; } }

Ngày đăng: 09/06/2016, 11:48

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan