8051 ĐH GIAO THÔNG VẬN TẢI TP HỒ CHÍ MINH Lớp DV12 LỜI NÓI ĐẦU Kỹ thuật vi điều khiển hiện nay rất phát triển, nó được ứng dụng vào rất nhiều lĩnh vực sản xuất công nghiệp, tự động hóa, trong đời sống[.]
ĐH.GIAO THƠNG VẬN TẢI TP.HỒ CHÍ MINH Lớp: DV12 LỜI NÓI ĐẦU Kỹ thuật vi điều khiển phát triển, ứ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 tích hợp lại có khả lập trình để đ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 Led 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ì em mong góp ý thầy cô bạn ĐO VÀ KHỐNG CHẾ NHIỆT ĐỘ ĐH.GIAO THƠNG VẬN TẢI TP.HỒ CHÍ MINH Lớp: DV12 NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN ĐO VÀ KHỐNG CHẾ NHIỆT ĐỘ ĐH.GIAO THÔNG VẬN TẢI TP.HỒ CHÍ MINH Lớp: DV12 MỤC LỤC Lời nói đầu Mục lục Phần I:Giới thiệu chung 1.Giới thiệu chung 2.Đặc điểm chung 3.Sơ đồ chân 89S52 .5 4.Chip ADC0804 5.IC Cảm biến nhiệt LM35 10 Các linh kiện khác 14 Phần II: Thiết kế thi cơng Mục đích, u cầu đề tài 15 Sơ đồ nguyên lý .15 Sơ đồ mạch in 16 Chương trình phần mềm .16 Giải thích chương trình 22 Phần III: Kết Luận ĐO VÀ KHỐNG CHẾ NHIỆT ĐỘ ĐH.GIAO THÔNG VẬN TẢI TP.HỒ CHÍ MINH Lớp: DV12 Phần I: Giới thiệu chung Giới thiệu chung Bộ vi điều khiển viết tắt Micro-contronller, mạch tích hợp chíp lập trình được, dùng để điều khiển hoạt động hệ thống Theo tập lệnh người lập trình, vi điều khiển tiến hành đọc, lưu trữ thông tin, xử lý thông tin, đo lường thời gian tiến hành đọc mở cấu Trong thiết bị điện điện tử dân dụng, vi điều khiển, điều khiển hoạt động tivi, máy giặt, đầu đọc laser, điện thoại Trong hệ thống sản xuất tự động, vi điều khiển sử dụng robot, dây chuyền tự động Các hệ thống thơng minh vai trị vi điều khiển quan trọng Đặc điểm chung IC vi điều khiển 8052 thuộc họ MCS51 có đặc điểm sau : -8 kbyte ROM (được lập trình nhà sản xuất có 8052 ) -256 byte RAM -4 Port I/0 bit -3 định thời 16 bit -Giao tiếp nối tiếp -64 KB không gian nhớ chương trình mở rộng -64 KB khơng gian nhớ liệu mở rộng - Một vi xử lí(thao tác bit đơn) -210 bit địa hoá -Bộ nhân/chia 4us ĐO VÀ KHỐNG CHẾ NHIỆT ĐỘ ĐH.GIAO THƠNG VẬN TẢI TP.HỒ CHÍ MINH Lớp: DV12 Sơ đồ chân 89S52 Sơ đồ sơ đồ bố trí chân 8052 Ta thấy 40 chân có 32 chân dành cho cổng P0, P1, P2 P3 với cổng có chân Các chân cịn lại dành cho nguồn VCC, đất GND, chân dao động XTAL1 XTAL2, tái lập RST, cho phép chốt địa ALE, truy cập địa , cho phép cất chương trình XTAL1, XTAL2, RST Trong chân chân VCC , GND, họ 8031 8051 sử dụng Hay nói cách khác chúng phải nối hệ thống làm việc mà không cần biết vi điều khiển thuộc họ 8051 hay 8031 Còn hai chân khác ALE sử dụng chủ yếu hệ thống dựa 8031 Chức chân sau: -Port (P0.0-P0.7) Port bao gồm chân , chức xuất nhập thi Port Bus đa hợp địa liệu, chức địa sử dụng AT89S52 giao tiếp với thiết bị ngồi có kiến trúc Bus (8255) -Port (P1.0-P1.7) Chức Port chức xuất nhập, Port xuất nhập theo byte theo bit giống Port khác 89S52 ĐO VÀ KHỐNG CHẾ NHIỆT ĐỘ ĐH.GIAO THƠNG VẬN TẢI TP.HỒ CHÍ MINH Lớp: DV12 Ngồi chân P1.5, P1.6, P1.7 dùng để nạp ROM theo tiêu chuẩn ISP, chân P1.0 P1.1 dùng cho Timer -Port (P2.0-P2.7) Port Port đa hợp địa liệu -Port (P3.0-P3.7) Mỗi chân Port ngồi chức xuất nhập cịn có chức đặc biệt khác 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 phát cho Port nối tiếp P3.2 INT0 Ngắt P3.3 INT1 Ngắt P3.4 T0 Ngõ vào Timer/counter P3.5 T1 Ngõ vào Timer/counter P3.6 WR Xung nghi nhớ liệu P3.7 RD Xung đọc nhớ liệu ĐO VÀ KHỐNG CHẾ NHIỆT ĐỘ ĐH.GIAO THÔNG VẬN TẢI TP.HỒ CHÍ MINH Lớp: DV12 -PSEN ( Program store enable) PSEN chân điều khiển cho phép nhớ chương trình mở rộng, nối đến chân OE EPROM phép đọc bytes mã lệnh - ALE (Addres latch enable) ALE tín hiệu để chốt địa vào nghi bên nửa đầu chu kỳ nhớ Sau đường Port dùng để xuất nhập nửa sau chu kỳ nhớ Các xung tín hiệu ALE có tốc độ 1/6 lần tần số đao động thạch anh sử dụng nguồn xung nhịp cho hệ thống -EA (External access) EA thường mắc lên mức cao (+5V) mức thấp (GND) Nếu mức cao, vi điều khiển thi hành chương trình từ ROM nội Nếu mức thấp chương trình thi hành từ nhớ mở rộng - RST (Reset) Ngõ vào RST chân ngõ reset 89S52 Khi tín hiệu đưa lên mức cao chu kỳ máy nghi vi điều khiển tải giá trị thích hợp để khởi động hệ thống -XTAL1,XTAL2 AT89S52 có dao động chip, thường nối với dao động thạch anh có tần số lớn 33MHz, thơng thường 12MHz -VCC,GND +5 có dải điện áp từ 4V đến 5.5V AT89S52 dùng nguồn chiều 20 10 V Vin( Vc D Vin( k +) D 4.Chip ADC0804 c -)A D PO Vref D đến GN 1 T D CLK /2 đèn 10k D D ADC0804 R 4 D LEDs CLK 11 D 150p in C W F R Thườn S INT D ĐO VÀ KHỐNG CHẾ NHIỆT ĐỘ R D g mở R GN D START ĐH.GIAO THƠNG VẬN TẢI TP.HỒ CHÍ MINH ĐO VÀ KHỐNG CHẾ NHIỆT ĐỘ Lớp: DV12 ĐH.GIAO THÔNG VẬN TẢI TP.HỒ CHÍ MINH Lớp: DV12 Chip ADC0804 chuyển đổi tương tự sang số Chip có điện áp ni +5V độ phân giải bit Ngồi độ phân giải thời gian chuyển đổi tham số quan trọng đánh giá ADC Thời gian chuyển đổi định nghĩa thời gian mà ADC cần để chuyển đầu vào tương tự thành số nhị phân Đối với ADC0804 thời gian chuyển đổi phụ thuộc vào tần số đồng hồ cấp tới chân CLKR CLK IN không bé 110s Các chân ADC0804 có chức sau: a)CS (Chip Select) - chọn chip Là chân chọn chip, đầu vào tích cực mức thấp sử dụng để kích hoạt chip ADC804 Để truy cập ADC0804 chân phải mức thấp b)RD (Read) - đọc Đây tín hiệu vào, “tích cực mức thấp” Các ADC chuyển đổi đầu vào tương tự thành số nhị phân giữ ghi RD sử dụng để có liệu chuyển đổi tới đầu ADC0804 Khi CS = có xung cao-xuống-thấp áp đến chân RD liệu dạng số bit đưa tới chân liệu D0 - D7 Chân RD coi cho phép đọc c)WR (Write) - ghi Thực ra, tên xác “Bắt đầu chuyển đổi” Đây chân vào “tích cực mức thấp” dùng để báo cho ADC0804 bắt đầu trình chuyển đổi Nếu CS = WR tạo xung cao-xuống-thấp ADC0804 bắt đầu tiến hành chuyển đổi giá trị đầu vào tương tự Vin số nhị phân bit Lượng thời gian cần thiết để chuyển đổi thay đổi phụ thuộc vào tần số đưa đến chân CLK IN CLK R Khi việc chuyển đổi liệu hồn tất chân INTR ADC0804 hạ xuống thấp d)CLK IN CLK R ĐO VÀ KHỐNG CHẾ NHIỆT ĐỘ ĐH.GIAO THÔNG VẬN TẢI TP.HỒ CHÍ MINH Lớp: DV12 CLK IN chân vào, nối tới nguồn đồng hồ đồng hồ sử dụng để tạo thời gian Tuy nhiên 0804 có tạo xung đồng hồ chip Để dùng đồng hồ (cũng gọi đồng hồ riêng) 804 chân CLK IN CLK R nối tới tụ điện điện trở hình 12.5 Trong trường hợp tần số đồng hồ xác định biểuthức: Giá trị thông thường đại lượng R = 10k, C= 150pF tần số nhận f = 606kHz, thời gian chuyển đổi 110s e) INTR (Interrupt) Ngắt hay gọi “kết thúc việc chuyển đổi’ Đây chân tích cực mức thấp Bình thường, chân trạng thái cao việc chuyển đổi hồn tất xuống thấp để báo cho CPU biết liệu chuyển đổi sẵn sàng để lấy Sau INTR xuống thấp, cần đặt CS = gửi xung caoxuống-thấp tới chân RD để đưa liệu f) Vin (+) Vin (-) Đây hai đầu vào tương tự vi sai, V in = Vin (+) - Vin (-) Thông thường Vin (-) nối xuống đất Vin (+) dùng làm đầu vào tương tự chuyển đổi dạng số g)VCC Là chân nguồn ni +5v Chân cịn dùng làm điện áp tham chiếu đầu vào Vref/2 (chân 9) để hở h) Vref/2 Chân điện áp đầu vào dùng làm điện áp tham chiếu Nếu chân hở (khơng nối) điện áp đầu vào tương tự cho ADC804 nằm dải đến +5v (giống chân VCC) Tuy nhiên, có nhiều ứng dụng mà đầu vào tương tự áp đến Vin khác với dải đến 5v Chân Vref/2 dùng để thực điện áp đầu vào có dải khác với - 5V Ví dụ, dải đầu vào tương tự cần ĐO VÀ KHỐNG CHẾ NHIỆT ĐỘ 10 ĐH.GIAO THÔNG VẬN TẢI TP.HỒ CHÍ MINH Lớp: DV12 Dịng ngược: 15mA Điện áp VS=4V-30V Điện áp 10mV/ 0C -Điện áp Vref/2 liên hệ với dải Vin Phối hợp tín hiệu sơ đồ khối phối ghép LM35 với 8051 Xét trường hợp nối LM35 tới ADC 804 Sự thay đổi trở kháng phải chuyển thành điện áp để sử dụng cho các, ADC 804 có độ phân dải bít với tối đa 256 bước (28) LM35 (hoặc ML34) tạo điện áp 10mV cho thay đổi nhiệt độ 10C nên ta tạo điều kiện Vin ADC 804 tạo Vout = 2560mV (2,56V) cho đầu đầu thang đo vậy, nhằm tạo Vout đầy thang 2,56V cho ADC 804 ta cần đặt điện áp Vref/2 = 1,28V Điều làm cho Vout ADC 804 đáp ứng trực tiếp với nhiệt độ hiển thị LM35 Bảng: Nhiệt độ Nhiệt độ (0C) Vin (mV) Vout (D7 – D0) 0 0000 0000 10 0000 0001 20 0000 0010 30 0000 0011 10 100 0000 1010 ĐO VÀ KHỐNG CHẾ NHIỆT ĐỘ 12 ĐH.GIAO THƠNG VẬN TẢI TP.HỒ CHÍ MINH 30 Lớp: DV12 300 805 0001 1110 ADC80 P2 P2 P1 RD WR D0 D VCC CLK CLK R Vin(+ IN Vin() Q Q D D7 INTR CS or GN LM34 2.5 D k 10 Set to LM33 P1 P2 LM35 ) A Vref/ GND GN Q D 5V k 1.28V Q Cảm biến nhiệt ADC Vi điều khiển Hiển thị led LM35 0804 8051 đoạn Môi trường cần Điều khiển hệ điều khiển nhiệt độ thống cảnh báo Phối hợp tín hiệu nối ghép LM35 với 8051 ĐO VÀ KHỐNG CHẾ NHIỆT ĐỘ 13 ĐH.GIAO THƠNG VẬN TẢI TP.HỒ CHÍ MINH Lớp: DV12 Phối hợp tín hiệu thuật ngữ sử dụng rộng rãi lĩnh vực thu nhận liệu Hầu hết cảm biến đưa tín hiệu dạng điện áp, dịng điện, dung kháng trở kháng Tuy nhiên, cần chuyển đổi tín hiệu điện áp để đưa đến đầu vào chuyển đổi ADC Sự chuyển đổi (biến đổi) gọi chung phối hợp tín hiệu Phối hợp tín hiệu chuyển dịng điện thành điện áp khuyếch đại tín hiệu Ví dụ, cảm biến nhiệt thay đổi trở kháng theo nhiệt độ Sự thay đổi trở kháng cần chuyển thành điện áp để ADC sử dụng Xét trường hợp nối LM35 tới ADC0804 Vì ADC0804 có độ phân dải bit với tối đa có 256 mức (28), LM35 tạo điện áp 10mV ứng với thay đổi nhiệt độ 10C, nên ta có điều chỉnh điện áp vào chân IN cách thay đổi V ref/2 chân ĐO VÀ KHỐNG CHẾ NHIỆT ĐỘ 14 ĐH.GIAO THÔNG VẬN TẢI TP.HỒ CHÍ MINH Lớp: DV12 * Sơ đồ thời gian hoạt động: Các linh kiện khác: - Các loại điện trở, tụ điện, LED, led - Thạch anh 12Mhz để tạo dao động ĐO VÀ KHỐNG CHẾ NHIỆT ĐỘ 15 ĐH.GIAO THƠNG VẬN TẢI TP.HỒ CHÍ MINH Lớp: DV12 Phần II: thiết kế thi công Mục đích, yêu cầu đề tài: - Sơ đồ khối mạch đo nhiệt độ Nhiệt độ MẠCH ĐIỆN Khối hiển thị mơi trường Khối điều khiển - Tìm hiểu nguyên tắc hoạt động thiết bị cảm biến (cảm biến nhiệt) ứng dụng cảu thực tiễn 2.Sơ đồ nguyên lý ĐO VÀ KHỐNG CHẾ NHIỆT ĐỘ 16 ĐH.GIAO THƠNG VẬN TẢI TP.HỒ CHÍ MINH Lớp: DV12 3.Sơ đồ mạch in 4.Chương trình phần mềm #include int array[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90}; sbit rd=P3^7; //Read signal P3.7 sbit wr=P3^6; //Write signal P3.6 sbit intr= P3^5; //INTR signal P3.4 //cai dat de ADC0804 hoat dong sbit led0=P2^0; sbit led1=P2^1; sbit led2=P2^2; //dieu khien led doan sbit led3=P2^3; sbit d1=P2^4; ĐO VÀ KHỐNG CHẾ NHIỆT ĐỘ 17 ĐH.GIAO THÔNG VẬN TẢI TP.HỒ CHÍ MINH Lớp: DV12 sbit d2=P2^5; //dieu khien led vang, xanh, sbit d3=P2^6; sbit tang=P3^0; sbit giam=P3^1; sbit chedo=P3^2; sbit batdau=P3^3; sbit ketthuc=P3^4; unsigned int adc_avg,nhietdo,dc; void delay() { unsigned int i; for(i=1;i100) dc=27; } if (giam==0) // neu phim giam duoc an { ĐO VÀ KHỐNG CHẾ NHIỆT ĐỘ 19 ĐH.GIAO THƠNG VẬN TẢI TP.HỒ CHÍ MINH Lớp: DV12 while (giam==0){}//cho phim nha dc ; if (dc