Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 17 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
17
Dung lượng
705,77 KB
Nội dung
Dt2-k9 BỘ CÔNG THƢƠNG TRƢỜNG ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI KHOA : ĐIỆN TỬ ĐỒ ÁN MÔN HỌC ĐỀ TÀI: THIẾT KẾ BỘ ĐO VÀ KHỐNG CHẾ NHIỆT ĐỘ HIỂN THỊ LÊN MÀN HÌNH MÁY VI TÍNH “Nhiệt độ khống chế đặt phím nhấn, thao tác khống chế mô 3led với màu khác nhau, sai số cho phép ± 10C” Giáo viên hướng dẫn: Nguyễn Anh Dũng Sinh viên thực hiện: 1.Mai Xuân Minh 2.Tạ Xuân Thế Minh – Thế LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Dt2-k9 LỜI NÓI ĐẦU Kỹ thuật vi điều khiển phát triển, đƣợc ứng dụng vào nhiều lĩnh vực sản xuất cơng nghiệp, tự động hóa, đời sống nhiều lĩnh vực khác So với kỹ thuật số kỹ thuật vi điểu khiển nhỏ gọn nhiều đƣợc tích hợp lại có khả lập trình đƣợc để điều khiển Nên tiện dụng động Với tính ƣu việt vi điều khiển phạm vi đồ án nhỏ này, em dùng vdk để đo khống chế nhiệt độ, đồng thời cho hiển thị lên hình máy vi tính Mục đích đề tài hƣớng đến: tạo bƣớc đầu cho sinh viên thử nghiệm ứng dụng vdk thực tiễn để từ tìm tịi, phát triển nhiều ứng dụng khác đời sống ngày cần đến Việc thực xong đồ án môn học kiến thức học, số sách tham khảo số nguồn tài liệu khác nên không tránh khỏi thiếu sót Vì nhóm mong đƣợc góp ý thầy cô bạn Minh – Thế LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Dt2-k9 Mục lục trang Lời nói đầu Mục lục Chƣơng I>Tổng quan thiết kế phần cứng cho đồ án I sơ đồ khối tổng quát II Các vi mạch sử dụng khối nguyên lý hoạt động khối Chƣơng II >Lập trình cho vi điều khiển 14 sơ đồ giải thuật 14 code lập trình Minh – Thế LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Dt2-k9 CHƢƠNG 1:TỔNG QUAN THIẾT KẾ PHẦN CỨNG CHO ĐỒ ÁN I SƠ ĐỒ KHỐI TỔNG QUÁT 1.sơ đồ KHỐI CHUYỂN ĐỒI TƢƠNG TỰ => SỐ KHỐI HIỂN THỊ:MVT KHỐI XỬ LÝ TRUNG TÂM: 8051 KHỐI ĐIỀU KHIỂN (khống chế) KHỐI CẢM BIẾN ĐẦU RA ỨNG DỤNG (điều khiển lò nhiệt, cảnh báo,…) Minh – Thế LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Dt2-k9 2> sơ đồ nguyên lý II CÁC VI MẠCH CHÍNH SỬ DỤNG TRONG ĐỒ ÁN 1.trong khối cảm biến: có LM35; 2.Trong khối chuyển đổi: ADC 0804; 3.Trong khối xử lý trung tâm: AT89C52; 4.khối hiển thị : hình máy tính 5.Khối điều khiển (khống chế): hệ thống phím nhấn 6.đầu ứng dụng: (đơn giản) led hiển thị III CẤU TẠO VÀ NGUYÊN LÝ HOẠT ĐỘNG CƠ BẢN CỦA TỪNG VI MẠCH 1> Cảm biến nhiệt LM35 1.1 Nguyên lý hoạt động chung IC đo nhiệt độ Minh – Thế LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Dt2-k9 IC đo nhiệt độ mạch tích hợp nhận tín hiệu nhiệt độ chuyển thành tín hiệu điện dƣới dạng dịng điện hay điện áp Dựa vào đặc tính nhạy bán dẫn với nhiệt độ, tạo điện áp dòng điện tỷ lệ thuận với nhiệt độ tuyệt đối Đo tín hiệu điện ta biết đƣợc giá trị nhiệt độ cần đo Sự tác động nhiệt độ tạo điện tích tự lỗ trống chất bán dẫn Bằng phá vỡ phân Minh – Thế LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Dt2-k9 tử, bứt electron thành dạng tự di chuyển qua vùng cấu trúc mạng tinh thể tạo xuất lỗ trống Làm cho tỷ lệ điện tử tự lỗ trống tăng lên theo quy luật hàm mũ với nhiệt độ +LM135, LM35 Ngõ điện áp Độ nhạy 10mv/10C Sai số cực đại 1,50C nhiệt độ lớn 1000C Phạm vi sử dụng :00 C=>1000 C 3> chuyển đổi tƣơng tự-số: ADC 0804; a, cấu tạo ADC 0804 chuyển đổi tƣơng tự số Gồm có 20 chân DB0-DB7: chân liệu RD: lối vào đọc WR :lối vào ghi INTR: lối ngắt CLKR/CLKIN: lối vào điều khiển xung nhịp VIN: lối vào analog dƣơng b, sơ đồ c, tính tốn cân chỉnh Chọn điện trở R6 tụ C1 cho dao động ADC0804 R6=10k Ω C1=15pf 256 Có đầu số: N= xVin.; d, nguyên lý hoạt động ¾ DB0- DB7: lối số, liệu chuyển đổi xuất 8bit Bộ biến đổi có độ phân giải 5/256 ¾ RD :là chân điều khiển đọc liệu RD=0: có liệu lối RD=1: khơng có liệu lối ¾ WR: bình thƣờng mức logic cao, lối vào đƣợc kéo xuống mức thấp, sau lại trở mức cao để bắt đầu trình chuyển đổi Minh – Thế LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Dt2-k9 ¾ INTR: lối ngắt biến đổi A/D sƣờn xung âm đƣợc tạo lên chân trình chuyển đổi kết thúc Lối thƣờng đƣợc sử dụng để tạo ngắt vi điều khiển cho liệu chuyển đổi đƣợc đọc ¾ ADC 0804 chứa dao động bên cần có tụ điện 1điện trở bên nối chân CLKR CLKIN để khởi động dao động ¾ VIN chân lối vào điện áp tƣơng tự ¾ Bít ADC phải có điện trở kéo lên, lối điều khiển chân khơng có sẵn điện trở kéo lên Khối giao tiếp với máy tính qua max232 Chức truyền liệu biến đổi đƣợc lên máy tính thơng qua max232 CÁC BƢỚC CỦA QUÁ TRÌNH CHUYỂN ĐỔI Đặt WR =RD=0; Bắt đầu biến đổi Đặt WR=1, trễ( )ms Phát điểm kết thúc trình biến đổi INTR xuống mức thấp Đọc liệu từ DB0=>DB7 4> vi điều khiển AT89C52; a, cấu tạo chức khối AT89S52 • CPU( CPU centralprocessing unit) bao gồm: Thanh ghi tích lũy A; Thanh ghi tích lũy phụ B; Đơn vị logic học (ALU); Thanh ghi từ trạng thái chƣơng trình; Minh – Thế LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Dt2-k9 Bốn băng ghi; Con trỏ ngăn xếp • Bộ nhớ chƣơng trình( ROM) gồm 8Kbyte Flash • Bộ nhớ liệu( RAM) gồm 256 byte • Bộ UART, có chức truyền nhận nối tiếp • Timer/Counter 16 bit thực chức định thời đếm kiện • Khối điều khiển ngắt với nguồn ngắt nguồn ngắt • Bộ lập trình( ghi chƣơng trình lên Flash ROM) cho phép ngƣời sử dụng nạp chƣơng trình cho chíp mà khơng cần nạp chun dụng • Bộ chia tần số với hệ số chia 12 • cổng xuất nhập với 32 chân b, chức chân AT89C52 Port 0( P0.0=>P0.7) Port gồm chân, chức xuất nhập, port bus đa hợp liệu địa chỉ( AD0-AD7), chức đƣợc sử dụng 89c52 giao tiếp với thiết bị có kiến trúc Bus nhƣ vi mạch nhớ, mạch PIO… Port 1( P1.0=>P1.7) Chức Port chức xuất nhập nhƣ Port khác Port1 xuất nhập theo bit theo byte Port 2( P2.0=>P2.7) Port chức cổng vào/ra nhƣ Port byte cao bus địa sử dụng nhớ Minh – Thế LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Dt2-k9 Port Mỗi chân Port ngồi chức xuất nhập cịn có chức riêng, cụ thể nhƣ sau: Bit Tên Chức P3.0 RXD Dữ liệu nhận cho Port nối tiếp P3.1 TXD Dữ liệu truyền cho Port nối tiếp P3.2 INT0 Ngắt bên P3.3 INT1 Ngắt P3.4 TO Ngõ vào Timer/counter0 P3.5 T1 Ngõ vào Timer/counter1 P3.6 /WR Xung ghi nhớ liệu P3.7 /RD Xung đọc nhớ liệu Chân /PSEN : chân điều khiển đọc chƣơng trình nhớ ngồi Chân ALE ALE tín hiệu điều khiển chốt địa có tần số 1/6 tần số dao động vi điều khiển Tín hiệu ALE đƣợc dùng phép vi mạch chốt bên nhƣ 7473 Chân /EA Tín hiệu /EA cho phép chọn nhớ chƣơng trình nhớ hay ngồi EA=1 thực chƣơng trình RAM nội EA=0 thực RAM RST( reset) Ngõ vào reset chân số RST=1 vi điều khiển đƣợc khởi động lại thiết lập ban đầu XTAL1, XTAL2 chân đƣợc nối song song với thạch anh tần số max=33 Mhz Để tạo dao động cho vi điều khiển Vcc, GND : cung cấp nguồn nuôi cho vi điều khiển cấp qua chân 20 40 c, sơ đồ AT89C52 mạch Minh – Thế 10 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Dt2-k9 d, nguyên lý hoạt động +Chân đƣợc nối với mạch reset Khi nhấn SW1 vi điều khiển đƣợc khởi động lại từ đầu +điện trở băng: có tác dụng làm điện trở kéo lên nguồn + chân 18-19 đƣợc nối // với thạch anh 12Mhz mạch có nhiệm vụ tạo dao động cho vi điều khiển +chân P2.4=>P2.7 điều khiển led Khi nhiệt độ đo đƣợc vƣợt qua khoảng nhiệt độ khống chế đèn led sáng + chân P1.0=>P1.7 giao tiếp với ADC0804 Cổng P0 có nhiệm vụ đọc nhiệt độ thu đƣợc từ chuyển đổi +P3.0=>P3.1 giao tiếp với max232 để truyền liệu hiển thị lên máy tính +P3.5, P3.7 lần lƣợt nối với INTR /RD /WR ADC0804 Nhiệm vụ điều khiển hoạt động chuyển đổi số - tƣơng tự +P3.2=> P3.3 dùng để nối với phím nhấn Có tác dụng để thực thao tác khống chế nhiệt độ cần đo Minh – Thế 11 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Dt2-k9 6> phím nhấn điều khiển (khống chế) a, sơ đồ mạch b, chức năng: dùng để thiết lập nhiệt độ khống chế SW2 (đƣợc nối với INT0 ) phím dùng để đặt nhiệt độ khống chế SW3 (đƣợc nối với INT1) phím dùng để tăng giảm nhiệt độ khống chế SW1 (đƣợc nối với 9) phím dùng để làm phím reset 7> ứng dụng điều khiển a, sơ đồ mạch b, chức năng: hiển thị nhiệt độ đo đƣợc so sánh với nhiệt độ khống chế Nếu t0 đo > t0khống chế max led sáng Nếu t0 đoLẬP TRÌNH CHO VI ĐIỀU KHIỂN I>sơ đồ giải thuật Chƣơng trình START NẠP GIÁ TRỊ ĐẦU Tăng t0 đặt T0 đo > t0 max Hiển thị cảnh báo Đọc ADC Giảm t0 đặt T0 đo code chƣơng trình #include #include sbit led0=P2^0; sbit led1=P2^1; sbit led2=P2^2; sbit led3=P2^3; sbit led_do=P2^4; // nhiet moi truong < nhiet khong che sbit led_vang=P2^5; // nhiet moi truong = nhiet khong che sbit led_xanh=P2^6; // nhiet moi truong > nhiet khong che sbit led_trang=P2^7; sbit adc_intr=P3^5; sbit adc_wr=P3^6; sbit adc_rd=P3^7; int ngat0,ngat1,tong; unsigned char chuc,donvi,nhiet_do,dien_ap,khong_che,i,k; unsigned char M[10]={0x30,0x31,0x32,0x33,0x34,0x35,0x36,0x37,0x38,0x39}; void delay(unsigned int n) // ham tre { unsigned int j; for(j=0;j=0 && nhiet_do=10 && nhiet_do Cảm biến nhiệt