báo cáo mạch đếm giờ

42 324 0
báo cáo   mạch đếm giờ

Đ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ỤC LỤC Trang web tham khảo : 42 A PHẦN MỞ ĐẦU Đặt vấn đề Xuất phát từ xu hội nhập toàn cầu hoá Việc tiếp nhận công nghệ khoa học kỹ thuật yếu tố khách quan tất yếu để khẳng định hưng thịnh quốc gia nói chung đơn vị lĩnh vực nói riêng, giáo dục không nằm quy luật đó, việc ứng dụng khoa học kỹ thuật giáo dục thể lớn mạnh trưởng thành công công nghiệp hóa đại hóa Hiện có nhiều ứng dụng khoa học triển khai học tập giảng dạy nhiên nhiều hạn chế hầu hết thiết bị triển khai hầu hết sản phẩm thị trường chi phí cao thiếu tính chủ động sửa chữa lắp đặt triển khai Do thiết kế thiệt bị tính phục vụ thi thực hành trường đại học ứng dụng thiết thực với chi phí thấp hơn, đồng thời với vai trò trường kỹ thuật có sẵn linh kiện công cụ thực hành, chủ động chế tạo phục vụ nhu cầu lắp đặt sử dụng Thực tế trình thi thực hành hay thi vấn đáp, trình coi thi quản lý thời gian thi gặp nhiều khó khăn để khắc phục cải tiến vấn dề thi việc ứng dụng thiết bị báo tự động thông minh giải vấn đề đặt nâng cao chất lượng thi Phân tích đề tài Trước tiên phải xác định rõ đặc điểm yêu cầu toán Đặc điểm: - Thiết bị báo sử dụng kiểm tra thực hành, thi vấn đáp trường Đại Học Kỹ Thuật - Hậu Cần CAND - Thiết bị có khả chỉnh lại - Thiết bị có khả dừng tạm thời Yêu cầu: - Hệ thống làm việc ổn định - Có khả đưa vào ứng dụng thực tế Với thực tế toán phải thiết kế thành phần bản: - Hệ thống điều khiển - Màn hình hiển thị đèn báo (chuông báo) - Hệ thống bàn phím Phạm vi đề tài phương hướng mở rộng Do thời gian đề tài có hạn, kiến thức chuyên ngành điều kiện sở vật chất phục vụ cho việc nghiên cứu hạn chế nên đề tài thiết kế thiết bị tính phục vụ thi thực hành kiểm tra vấn đáp nghiên cứu phục vụ cho kiểm tra thực hành thi vấn đáp Trường Đại học Kỹ thuật Hậu cần CAND Phương hướng mở rộng đề tài: - Hiện tại, đề tài nghiên cứu để áp dụng Trường Đại Học Kỹ Thuật - Hậu Cần CAND Đề tài nghiên cứu thêm để áp dụng cho tất trường đại học, cao đẳng, trung cấp có môn thi vấn đáp thực hành phạm vi nước - Thiết kế Module điều chỉnh quét phím ma trận giao tiếp bàn phím máy tính lập trình thời gian theo ý muốn khoa, trường - Xây dựng hệ thống đèn báo kèm theo chuông báo không dây sử dụng thu phát sóng B PHẦN NỘI DUNG CHƯƠNG KHẢO SÁT QUY TRÌNH THI THỰC HÀNH VÀ THI VẤN ĐÁP TẠI TRƯỜNG ĐẠI HỌC KT - HC CAND 1.1 Khảo sát quy trình thi 1.1.1 Đối tượng điều tra Các học phần, môn học khoa: K2( Khoa Công Nghệ Thông Tin), K3( Khoa Điện Tử Viên Thông), K1( Khoa Mật Mã Và An ninh Thông Tin), K4 ( Khoa Thư Lưu Trữ) môn: B4( Bộ Môn Tiếng Anh) 1.1.2 Thống kê mô tả đối tượng điều tra a Khảo sát khoa điện tử viễn thông ( K3 ) Khoa K3 tổ chức thi thực hành vấn đáp học phần: vật liệu linh kiện điện tử, kỹ thuật vi xử lý, multimedia, hệ thống viễn thông, hệ thống thông tin quang, hệ thống đàm, hệ thống thông tin di động… phòng thực hành nhà 301, 302, 303 nhà D Quy trình thi khoa K3 tổ chức theo kế hoạch sau: Một phần thi kéo dài 30 Phút bao gồm: - Phần bốc đề: Học viên bốc thăm giáo viên chấm thi lựa chọn ngẫu nhiên số đề thi đưa - Phần chuẩn bị học viên theo nội dung đề thi cho trước: thời gian 10 phút - Phần trả lời câu hỏi( Thực hành trả lời theo yêu cầu giáo viên chấm thi): thời gian 20 phút - Kết thúc phần thi b Khảo sát khoa công nghệ thông tin ( K2 ) Khoa K2 tổ chức thi thực hành với máy tính phòng máy 402 nhà D6,402,403 nhà D4 gồm học phần: hệ điều hành, thực tập sở, lập trình web, thiết kế đánh giá hiệu mạng máy tính, bảo trì hệ thống máy tính… Một phần thi kéo dài 30 đến 40 phút tùy theo thi thực hành thi hết học phần bao gồm: - Phần bốc đề học viên - Phần chuẩn bị học viên: Thời gian 20 đến 30 phút - Phần chấm điểm đặt câu hỏi thêm giáo viên chấm thi: Thời gian 10 phút (Lưu ý: Trong thời gian làm xảy cố dừng thời gian làm để sửa chữa máy tính bị lỗi ) - Kết thúc phần thi c Khảo sát môn môn tiếng anh ( B4 ) Các học phần thi thực hành bao gồm: tiếng anh II, tiếng anh chuyên ngành I, tiếng anh chuyên ngành II Một phần thi thực hành tiến hành thời gian 35 phút bao gồm: - Học viên bốc đề: Học viên bốc ngẫu nhiên số đề thi đưa - Học viên vị trí chuẩn bị câu trả lời: thời gian 15 phút - Giáo viên gọi học viên lên làm thi - Học viên trả lời theo topic bốc( Giáo viên hỏi thêm câu hỏi theo topic học viên bốc): Thời gian 20 phút - Kết thúc thi d Khảo sát khoa mật mã an ninh thông tin ( K1 ) Các học phần thi thực hành: tin học văn phòng, máy mã thoại, vv Một phần thi thực hành phòng mật mã bao gồm quy trình sau: - Giáo viên phát đề cho học viên - Học viên làm theo yêu cầu đề thi yêu cầu: Thời gian 20 phút - Giáo viên chấm thi chấm thời gian học viên thục hành - Kết thúc phần thi e Khảo sát khoa văn thư lưu trữ ( K4 ) Khoa K4 tổ chức thi thực hành máy tính với học phần: kỹ thuật soạn thảo văn máy tính, nghiệp vụ lưu trữ, quản trị văn phòng vv, tính thời gian theo quy trình sau: - Giáo viên phát đề cho học viên học viên bốc đề thi - Học viên làm thi: thời gian kiểm tra 20 phút, thời gian thi hết học phần 30 phút - Học viên rời khỏi vị trí làm bài, giáo viên chấm thi 1.2 Kết khảo sát Qua khảo sát khoa môn nhóm tổng hợp quy trình thi khoa, môn vấn lấy ý kiến theo bảng biểu sau: Khoa – Bộ Môn Quy Trình Thi Thời Gian Tổng Thời gian thi Phần bốc đề K3 Khoa điện tử viễn thông Phần chuẩn bị 10 phút Phần làm thi 20 phút 30 phút Ghi Trong trình thực hành dụng cụ thiết bị có cố thí sinh tạm dừng thời gian thi Kết thúc thi Phần bốc đề K2 Khoa công nghệ thông tin Phần làm thi 20-30 phút Phần chấm thi trả lời câu hỏi thêm 10 phút giáo viên Học viên bốc đề Học viên vị trí chuẩn bị câu trả 15 phút lời 30-40 phút Trong thời gian thi máy tính bị lỗi học viên dừng thi để giáo viên sửa lỗi máy, tiếp tục thi sau máy hoạt động bình thường trở lại Bộ môn tiếng anh Phút Giáo viên gọi học viên lên làm thi Học viên trả lời theo topic bốc 20 phút (Trả lời câu hỏi thêm giáo viên) Giáo viên phát đề cho học viên học viên bốc đ ề thi K4 Khoa văn thư lưu trữ Học viên làm 20 phút thi 20-30 phút Học viên rời khỏi vị trí làm bài, giáo viên chấm thi K1 Khoa mật mã an ninh thông tin Thời gian kiểm tra 20 phút, thời gian thi hết học phần 30 phút Giáo viên phát đề cho học viên Học viên làm theo yêu cầu đề thi kết hợp giáo viên chấm thi 20 phút học viên làm 20 phút Trong trình thi thiết bị gặp cố học viên tạm dừng phần thi, sau sửa chữa, học viên tiếp tục làm Kết thúc thi 1.3 Xây dựng phương án Sau trình nghiên cứu khảo sát quy trình thi khoa, môn nhận thấy kì thi khoa môn lại có yêu cầu hình thức khác môn thi lại có quy trình thi khác chia theo khoảng thời gian khác Từ thực tế đó, với yêu cầu ứng dụng vào thực tế phục vụ trình thi cử trường, nâng cao hiệu đào tạo định lựa chọn phương pháp dùng vi điều khiển kết hợp sử dụng ngôn ngữ lập trình để thay đổi khoảng thời gian quy trình thi phù hợp với kỳ thi khoa môn đảm bảo tính ứng dụng linh hoạt trình sử dụng thiết bị báo CHƯƠNG THIẾT KẾ HỆ THỐNG 2.1 Sơ đồ tổng quát 2.1.1 Sơ đồ khối: Khối nguồn Thông báo Nút nhấn Vi SỬ LÝ AT89C52 Hiển Thị LCD 16x2 Hình 2.2.1: Sơ đồ khối 2.1.2 Chức khối - Khối nguồn: Cung cấp nguồn nuôi tất linh kiện mạch Khối điều chỉnh: Chức khối sử dụng ngắt 89C52 để yêu cầu việc điều chỉnh time theo ý người sử dụng, cài đặt time ban đầu cho đồng hồ Tác động phím bấm (BUTTON) - Khối đèn báo: Khối gồm có LED, đèn sáng có mức điện áp thay đổi liên tục chân vi điều khiển - Khối hiển thị: Khối thực chất LCD 16x2 để hiển thị time thông tin mà lập trình viên cần hiển thị - Khối xử lý (vi điều khiển AT89C52): Vi điều khiển 89C52 trung tâm xử lý thông tin mạch Cụ thể : AT89C52 đảm nhiệm việc đọc thời gian, chuyển đổi liệu qua lại RTC với LCD để hiển thị lên LCD Điều khiển LCD Kiểm tra phím bấm Điều khiển đèn LED 2.2 Các linh kiện sử dụng mạch 2.2.1 Giới thiệu AT89C52 AT89C52 họ IC vi điều khiển hãng Atmel sản xuất Các sản phẩm AT89C52 thích hợp cho ứng dụng điều khiển Việc xử lý byte toán số học cấu trúc liệu nhỏ thực nhiều chế độ truy xuất liệu nhanh RAM nội Tập lệnh cung cấp bảng tiện dụng lệnh số học bit gồm lệnh nhân lệnh chia Nó cung cấp hổ trợ mở rộng chip dùng cho biến bit kiểu liệu riêng biệt cho phép quản lý kiểm tra bit trực tiếp hệ thống điều khiển AT89C52 cung cấp đặc tính chuẩn như: 8Kbyte nhớ đọc xóa lập trình nhanh (EPROM), 128 Byte RAM, 32 đường I/O, TIMER/ COUNTER 16 Bit, vectơ ngắt có cấu trúc mức ngắt, Port nối tiếp bán song công, mạch dao động tạo xung Clock dao động ON-CHIP Các đặc điểm chip AT89C52 tóm tắt sau: - KByte nhớ lập trình nhanh, có khả tới 1000 chu kỳ ghi/xoá - Tần số hoạt động từ: 0Hz đến 24 MHz - Timer/counter 16 Bit - 128 Byte RAM nội - Port xuất /nhập I/O bit - Giao tiếp nối tiếp - 64 KB vùng nhớ mã - 64 KB vùng nhớ liệu ngoại - bit cho hoạt động nhân chia a Sơ đồ khối AT89C52 Sơ đồ chân AT89C52 AT89C52 b Mô tả chân AT89C52 Mặc dù thành viên họ 89C52 (ví dụ 8751, 89S52, 80C51, DS5000) có kiểu đóng vỏ khác nhau, chẳn (Quad Flat Pakage) dạng chip chân đỡ LCC (Leadless Chip Carrier) chúng có 40 chân cho chức khác vào I/O, đọc RD giới hạn hai hàng chân DIP (DualIn - LinePakage), dạng vỏ dẹt vuông QPF, ghi WR, địa chỉ, liệu ngắt Cần phải lưu ý số hãng cung cấp phiên 89C52 có 20 chân với số cổng vào cho ứng dụng yêu cầu thấp Tuy nhiên hầu hết nhà phát triển sử dụng chíp đóng vỏ 40 chân với hai hàng chân DIP nên ta tập trung mô tả phiên Hình 2.2.1.b1 Sơ đồ AT89C52 Chức chân AT 89C52 - Port 0: từ chân 32 đến chân 39 (P0.0 ÷ P0.7) Port có chức năng: thiết kế cỡ nhỏ không dùng nhớ mở rộng có chức đường IO, thiết kế lớn có nhớ mở rộng kết hợp bus địa bus liệu - Port 1: từ chân đến chân (P1.0 ÷ P1.7) Port port IO dùng cho giao tiếp với thiết bị bên cần - Port 2: từ chân 21 đến chân 28 (P2.0 ÷ P2.7) Port port có tác dụng kép dùng đường xuất/nhập byte cao bus địa thiết bị dùng nhớ mở rộng - Port 3: từ chân 10 đến chân 17 (P3.0 ÷ P3.7) Port port có tác dụng kép Các chân port có nhiều chức năng, có công dụng chuyển đổi có liên hệ đến đặc tính đặc biệt AT89C52 bảng sau: Bit Tên Chức chuyển đổi P3.0 RXD Ngõ vào liệu nối tiếp P3.1 TXD Ngõ xuất liệu nối tiếp P3.2 INT0 Ngõ vào ngắt cứng thứ P3.3 INT1 Ngõ vào ngắt cứng thứ P3.4 T0 Ngõ vào TIMER/ COUNTER thứ P3.5 T1 Ngõ vào TIMER/ COUNTER thứ P3.6 WR Tín hiệu ghi liệu lên nhớ P3.7 RD Tín hiệu đọc nhớ liệu - PSEN (Program store enable): PSEN tín hiệu ngõ có tác dụng cho phép đọc nhớ chương trình mở rộng thường nối đến chân OE Eprom cho phép đọc byte mã lệnh PSEN mức thấp thời gian AT89C52 lấy lệnh Các mã lệnh chương trình đọc từ Eprom qua bus liệu, chốt vào ghi lệnh bên AT89C52 để giải mã lệnh Khi AT89C52 thi hành chương trình ROM nội, PSEN mức cao - ALE (Address Latch Enable): Khi AT89C52 truy xuất nhớ bên ngoài, Port có chức bus địa liệu phải tách đường liệu địa Tín hiệu ALE chân thứ 30 dùng làm tín hiệu điều khiển để giải đa hợp 10 LS1 SPEAKER SPEAKER +220V +12V RL1 D1 12V DIODE Q1 BC547 R1(2) Hình 3.2.5 Sơ đồ khối chấp hành 3.3 Sơ đồ nguyên lý Từ thiết kế khối ta thiết kế sơ đồ nguyên lý cụ thể hình 3.3: 28 Hình 3.3 Sơ đồ nguyên lý - Khi đảm bảo cấp nguồn cho mạch ổn định, mạch hoạt đông sau: Ban đầu khởi động thực việc đọc liệu từ AT89C52 hiển thị khung thời gian chuẩn bị thời gian thực hành lên LCD - Kế tiếp có ngắt gọi đến tức tác động vào phím CAI DAT lần thứ để điều chỉnh thời gian chuẩn bị (Tăng, Giảm) cho vi điều khiển, vi điều khiển điều khiển việc tăng hay giảm time (phút, giây), theo ý muốn người sử dụng, cách nhấn phím TANG phím GIAM CAI DAT xong thời gian chuẩn bị ấn CAI DAT lần thứ để cài đặt thời gian thực hành, vấn đáp sau ấn CAI DAT lần thứ để chạy thời gian cài đặt, hình LCD hiển thị thời gian theo time cài đặt hoạt động 29 - Trong trình time hiển thị LCD mà ta thấy vi điều khiển thực hiển việc trễ thời gian giây (lặp lại việc trễ time ), vi điều khiển lặp lại việc trễ time đến thời gian cài đặt nhảy tới chương trình báo chuông đổ chuông báo hay báo đèn, thời gian chuông dài hay ngắn thay đổi code, người lập trình thiết lập, thiết lập mốc thời gian theo ý muốn, cụ thể kết thúc lượt thi đèn sáng 5s - Sau thí sinh thi xong người coi thi bấm phím LAP LAI để lặp lại khung thời gian cài đặt cho thí sinh 30 CHƯƠNG 4: THIẾT KẾ PHẦN MỀM 4.1 Phần mềm dùng chuyên đề • Proterus 7.7 SP2 4.2 Chương trình cho vi điều khiển #include #define RS P2_7 #define RW P2_6 #define EN P2_5 #define D4 P2_3 #define D5 P2_2 #define D6 P2_1 #define D7 P2_0 #define Set P1_0 #define Up P1_1 #define Down P1_2 #define Rep P1_3 #define Loa P1_4 unsigned int cb_sec, cb_min, vd_sec, vd_min, cb_time, vd_time, time, scb_time, svd_time; unsigned char set = 0,nhay = 0, count = 0,count1 = 0, speak = 0, flag = 0, enable = 0; /************delay*************/ void delay(unsigned int time1) { while(time1 ); } void delay_ms(unsigned int time1) { unsigned int i,j; for(i = 0; i < time1; i++) 31 for(j = 0; j < 125; j++); } /*************LCD 16x2***********/ void write_cmd(unsigned char Data) { RS = 0; RW = 0; D4 = (Data&0x10)>0?1:0; D5 = (Data&0x20)>0?1:0; D6 = (Data&0x40)>0?1:0; D7 = (Data&0x80)>0?1:0; EN = 1; delay(40); EN = 0; D4 = (Data&0x01)>0?1:0; D5 = (Data&0x02)>0?1:0; D6 = (Data&0x04)>0?1:0; D7 = (Data&0x08)>0?1:0; EN = 1; delay(40); EN = 0; } void write_char(unsigned char Data) { RS = 1; RW = 0; D4 = (Data&0x10)>0?1:0; D5 = (Data&0x20)>0?1:0; D6 = (Data&0x40)>0?1:0; 32 D7 = (Data&0x80)>0?1:0; EN = 1; delay(40); EN = 0; D4 = (Data&0x01)>0?1:0; D5 = (Data&0x02)>0?1:0; D6 = (Data&0x04)>0?1:0; D7 = (Data&0x08)>0?1:0; EN = 1; delay(40); EN = 0; } void lcd_init(void) { write_cmd(0x02); write_cmd(0x28); write_cmd(0x0c); write_cmd(0x06); write_cmd(0x01); } void write_str(char const *str) { while(*str) { write_char(*str); str++; } } 33 void move(unsigned char a,unsigned char b) { unsigned char vitri[3] = {0,0x80,0xc0}; write_cmd(vitri[a]+b); } void lcd_numb(char numb) { write_char(numb/10+48); write_char(numb%10+48); } void Keypad(void) // Kiem tra phim nhan { if(Rep==0) { delay_ms(100); while(Rep==0); delay_ms(100); cb_time = scb_time; vd_time = svd_time; time = cb_time; cb_min = cb_time/60; cb_sec = cb_time%60; vd_min = vd_time/60; vd_sec = vd_time%60; enable = 1; } if(Set==0) { delay_ms(100); 34 while(Set==0); delay_ms(100); set++; if(set>=5) { set=0; cb_time = cb_min*60 + cb_sec; vd_time = vd_min*60 + vd_sec; scb_time = cb_time; svd_time = vd_time; time = cb_time; enable = 1; } } if(Up==0) { delay_ms(100); while(Up==0); delay_ms(100); if(set==1) { if(cb_min == 59) cb_min = 0; else cb_min++; } if(set==2) { if(cb_sec == 59) cb_sec = 0; else cb_sec++; } if(set==3) { 35 if(vd_min == 59) vd_min = 0; else vd_min++; } if(set==4) { if(vd_sec == 59) vd_sec = 0; else vd_sec++; } } if(Down==0) { delay_ms(100); while(Down==0); delay_ms(100); if(set==1) { if(cb_min == 0) cb_min = 59; else cb_min ; } if(set==2) { if(cb_sec == 0) cb_sec = 59; else cb_sec ; } if(set==3) { if(vd_min == 0) vd_min = 59; else vd_min ; } if(set==4) { 36 if(vd_sec == 0) vd_sec = 59; else vd_sec ; } } } void ngatTimer0(void) interrupt { TR0=0; TF0=0; TH0=0x3C; TL0=0xAF; if(count1++ > 5) { count1 = 0; if(set!=0) flag = 1; if(nhay++>4) nhay = 0; } if(speak!=0) { Loa = 1; speak ; if(speak == 0) { Loa=0; speak=0; } } TR0=1; } void ngatTimer1(void) interrupt { 37 TR1=0; TF1=0; TH1=0x3C; TL1=0xAF; if(enable == 1) count++; if(count >= 20 && cb_time == && vd_time !=0) { flag = 1; count = 0; time ; vd_time = time; vd_min = vd_time/60; vd_sec = vd_time%60; if(vd_time == 0) { speak = 100; enable = 0; } } if(count >= 20 && cb_time !=0) { flag = 1; count = 0; time ; cb_time = time; cb_min = cb_time/60; cb_sec = cb_time%60; if(cb_time == 0) { time = vd_time; 38 speak = 60; } } TR1=1; } /***********Display LCD**********/ void DisplayLCD() { move(1,9); if(set==1 && nhay==1) {write_str(" "); else lcd_numb(cb_min); move(1,12); if(set==2 && nhay==1) {write_str(" "); } else lcd_numb(cb_sec); move(2,9); if(set==3 && nhay==1) {write_str(" "); } else lcd_numb(vd_min); move(2,12); if(set==4 && nhay==1) {write_str(" "); } else lcd_numb(vd_sec); } void Mode_Init(void) { TMOD = 0x11; IE = 0x8A; IP = 0x08; TF0 = 0; TF1 = 0; TR0 = 1; TR1 = 1; Loa = 0; 39 } scb_time = 5; svd_time = 10; enable = 0; } /************ CHUONG TRINH CHINH *************/ void main() { Mode_Init(); lcd_init(); delay(500); write_str(" -Chuan Bi -"); move(2,0); write_str(" Van Dap "); delay_ms(2000); write_cmd(0x01); delay_ms(10); write_str("Time CB: 00:00"); write_cmd(0xC0); write_str("Time VD: 00:00"); while(1) { Keypad(); if(flag == 1) { DisplayLCD(); flag = 0; } } } 40 C KẾT LUẬN Qua thời gian thực hiện, hướng dẫn nhiệt tình thầy Hồ Anh Phúc Chúng cố gắng hoàn thành đề tài thời gian quy định Trong đề tài này, thực công việc sau: - Khảo sát quy trình thi thực hành vấn đáp trường Đại Học Kỹ Thuật Hậu Cần CAND - Thiết kế phân tích sơ đồ khối - Giới thiệu vi điều khiển AT89C52 - Thiết kế mạch - Thiết kế chương trình cho vi điều khiển Sản phẩm mạch báo có tính ứng dụng cao, thiết kế đơn giản, mang lại hiệu thiết thực cho kỳ thi Sau thời gian nghiên cứu, gặp nhiều khó khăn kiến thức, tài liệu thời gian song nhóm nghiên cứu không ngừng cố gắng để hoàn thành đề tài Tuy không cho sản phẩm thực tế thiết kế đề tài cho thấy khả chế tạo ứng dụng cao Bản thiết kế đơn giản phụ thuộc nhiều vào lập trình, khả đáp ứng nhu cầu thực tế hạn hẹp mong tương lai thiết kế mở rộng sản phẩm phục vụ tất kỳ thi vấn đáp trường Trong trình nghiên cứu, trình làm báo cáo, khó tránh khỏi sai sót, mong thầy, cô đồng chí bỏ qua Đồng thời trình độ lý luận kinh nghiệm thực tiễn hạn chế nên báo cáo tránh khỏi thiếu sót, mong đóng góp ý kiến thầy, cô đồng chí để học hỏi thêm nhiêu kiến thức hoàn thành tốt báo cáo Xin chân thành cám ơn ! 41 D DANH MỤC TÀI LIỆU THAM KHẢO 1, Cấu trúc-lập trình – Ghép nối ứng dụng vi điều khiển_TS Nguyễn Mạnh Giang 2, Giáo trình AT89C52_DKS 3, Giáo trình vi điều khiển 89C52 4, Vi điều khiển với lập trình C_Ngô Diên Tập Trang web tham khảo : http://www.keil.com/forum/8186/ http://vagam.dieukhien.net http://vidieukhien.net http://www.89C52projects.net/forum-t7082-0.html 42 [...]... từng khối như sau: 3.2.1 Khối nguồn Nguồn cung cấp cho toàn mạch là +5v dc Hình 3.2.1a Nguồn 5V 24 Ngoài ra có thể sử dụng mạch nguồn sử dụng vi mạch ổn áp 7805 với dòng 0.5 Mạch nguồn được thiết kế như sau: D2 c o n n e c to r + S2 c o n g ta c d io d e c a u C1 100uF 1 U4 V IN GND 1 2 3 - 2 J1 VOUT 3 LM 7805 VCC D1 LED power R2 220 Hình 3.2.1b Mạch nguồn ổn áp 7805 Đối với role ta sử dụng nguồn nuôi... trong mạch xuất hiện áp ngược từ cuộn dây sinh ra Relay dùng để điều khiển chuông điện Sử dụng chuông điện 220V 27 LS1 SPEAKER SPEAKER +220V +12V RL1 D1 12V DIODE Q1 BC547 R1(2) Hình 3.2.5 Sơ đồ khối chấp hành 3.3 Sơ đồ nguyên lý Từ những thiết kế từng khối như trên ta thiết kế một sơ đồ nguyên lý cụ thể như hình 3.3: 28 Hình 3.3 Sơ đồ nguyên lý - Khi đã đảm bảo cấp nguồn cho các mạch ổn định, mạch. .. thấy thì vi điều khiển luôn thực hiển việc trễ thời gian từng giây một (lặp lại việc trễ time ), khi vi điều khiển lặp lại việc trễ time đến thời gian đã cài đặt thì nhảy tới chương trình báo chuông và đổ chuông báo hay báo đèn, thời gian chuông dài hay ngắn có thể thay đổi trên code, là do người lập trình thiết lập, thiết lập mốc thời gian theo ý muốn, cụ thể là khi kết thúc một lượt thi thì đèn sẽ sáng... CGRAM ( ở chế độ ghi) hoặc dùng để chứa dữ liệu từ 2 vùng RAM này gửi ra cho MPU (ở chế độ đọc) - Cờ báo bận BF: (Busy Flag) Khi đang thực thi các hoạt động bên trong, LCD bỏ qua mọi giao tiếp với bên ngoài và bật cờ BF( thông qua chân DB7 khi có thiết lập RS=0, R/W=1) lên để cho biết nó đang “bận” - Bộ đếm địa chỉ AC: (Address Counter) Khi một địa chỉ lệnh được nạp vào thanh ghi IR, thông tin được nối... địa chỉ CGRAM Thiết lập địa chỉ DDRAM Đọc cờ báo bận và địa chỉ CGRAM / DDRAM Ghi CGRAM / DDRAM Đọc CGRAM / DDRAM 0 0 0 0 1 1 0 0 0 1 0 1 0 0 1 BF 0 1 1 D L N F C CGRAM address DDRAM address CGRAM/ DDRAM address Write data Read data 19 B Thiết lập độ dài của dữ liệu, số dòng và font chữ 40us Thiết lập địa chỉ CGRAM 40us Thiết lập địa chỉ DDRAM 40us Đọc cờ báo bận và địa chỉ của CGRAM hoặc DDRAM( tùy... bValue); void LCD_PrHexInt (INT iValue); CHƯƠNG 3 : THIẾT KẾ MẠCH 3.1 Thuật toán Bắt Đầu ` v Lấy data từ AT86C52 Hiển thị lên LCD Dò phím SET Cbmin= yes yes Dò phím SET Cbsec= yes Dò phím SET vdmin= 23 Set phút chuẩn bị Set giây chuẩn bị Set phút vấn đáp yes Dò phím SET vdsec= No Dò phím lặp lại yes No Chạy trễ Cbtime Set giây vấn đáp Up yes BÁO ĐÈN Tăng ô nhớ lên 1 Chạy trễ vdtime Đặt gt cho RTC Đặt... (Address Counter) Khi một địa chỉ lệnh được nạp vào thanh ghi IR, thông tin được nối trực tiếp cho 2 vùng RAM (việc chọn lựa vùng RAM tương tác đã được bao hàm trong mã lệnh) Sau khi ghi vào (đọc từ) RAM, bộ đếm AC tự động tăng lên (giảm đi) 1 đơn vị Bộ nhớ LCD Vùng RAM hiển thị 17 DDRAM: (Display Data RAM) b Mã lệnh của LCD HD4480 Mã lệnh Lệnh Xóa màn hình Đưa con trỏ về vị trí đầu Thiết lập chế độ Bật tắt... không mong muốn đến một chân port khi chế độ nghỉ kết thúc bằng reset, lệnh tiếp theo yêu cầu chế độ nghỉ không nên là lệnh ghi đến chân port hoặc đến bộ nhớ ngoài Chế độ nguồn giảm Trong chế độ này, mạch dao động ngừng hoạt động và lệnh yêu cầu chế độ nguồn giảm là lệnh sau cùng được thực thi RAM trên chip và các thanh ghi chức năng đặc biệt vẫn duy trì các giá trị của chúng cho đến khi chế độ nguồn... đổi RAM trên chip Việc reset không nên xảy ra (chân reset ở mức tích cực) trước khi Vcc được khôi phục lại mức điện áp bình thường và phải kéo dài trạng thái tích cực của chân reset đủ lâu để cho phép mạch dao động hoạt động trở lại và đạt trạng thái ổn định Trạng thái của các chân trong thời gian tồn tại chế độ nghỉ và chế độ nguồn giảm được cho trong bảng sau: Bộ nhớ AL E PSE N PORT O PORT 1 PORT... cho ta thêm một số đặc trưng nữa của AT89C51 như sau Khi bit khoá 1 LB1 được lập trình, mức logic ở chân được lấy mẫu và được chốt trong khi reset Nếu việc cấp nguồn cho chip không có công dụng reset, mạch chốt được khởi động bằng một giá trị ngẫu nhiên và giá trị này được duy trì cho đến khi có tác động reset Điều cần thiết là giá trị được chốt của phải phù hợp vơi mức logic hiện hành ở chân này Các

Ngày đăng: 20/06/2016, 10:48

Từ khóa liên quan

Mục lục

  • Trang web tham khảo :

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

Tài liệu liên quan