BAI BAO CAO VXL

18 353 13
BAI BAO CAO VXL

Đ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

ĐẠI HỌC CẦN THƠ KHOA CÔNG NGHỆ BỘ MÔN ĐIỆN TỬ VIỄN THƠNG Báo Cáo Vi Xử Lí ĐỀ TÀI THIẾT KẾ MẠCH HIỂN THỊ THỜI GIAN THỰC TRÊN LCD DÙNG VI ĐIỀU KHIỂN MSP430 GVHD: Thầy TRẦN HỮU DANH Nhóm: sáng thứ SVTH: ĐẶNG VŨ MINH DŨNG NGUYỄN PHAN NGỌC THANH KHIẾT LÝ SƠN BẢO 1090915 1080857 1091004 GIỚI THIỆU ĐỀ TÀI: • Hiển thị thời gian thực LCD có nghĩa thị thời gian tuyệt đối mà ngày người sử dụng, tình giây, phút, giờ, thứ, ngày, tháng, năm đồng hồ Đây đề tài thực với loại vi xử lí MSP430G2452 dòng vi xử lí tiết kiệm lượng hãng Texas Instruments • Ngồi chức chúng em tích hợp mở rộng chức khác đồng hồ bấm giây, hẹn báo thức, đo hiển thị nhiệt độ môi trường lên LCD, cảnh báo nhiệt độ nhiệt độ vượt giá trị dặt trước, với tùy chỉnh người dùng NỘI DUNG BÁO CÁO Sơ đồ khối Giới thiệu cấu tạo chức loại linh kiện Giới thiệu cách thức giao tiếp linh kiện Ghép nối phần cứng Lưu đồ giải thuật lập trình cho mạch Code chương trình Một số vướng mắc đồ án Kết đạt hướng cải tiến tích hợp SƠ ĐỒ KHỐI Hình Sơ đồ khối - Khối chính: bao gồm khối điều khiển, khối hiển thị, khối real time, khối chuyển đổi I2C khối nút nhấn - Khối mở rộng: bao gồm hệ thống báo hiệu, khối cho cảm biến nhiệt độ - Ngồi khối nguồn GIỚI THIỆU LINH KIỆN Vi xử lý: MSP430G2452PDIP Hình Vi xử lí msp430g2452 • • • • • • • • • • • IC thuộc họ msp430 Texas Instuments Điện áp nguồn 1.8V – 3.3V Cấu trúc RICS-16bit, nhớ 8KB flash, 256B RAM IC có 16 ngõ I/O, 2chân nguồn, 1TEST, 1RESET Tần số nội 16MHz Thạch anh 32MHz Timer_A 16bit Giao tiếp chuẩn I2C Giao tiếp đồng SPI Bộ chuyển đổi ADC 10 bit, 200ksps Ngơn ngữ hỗ trợ lập trình C, Assembly Chip xử lý thời gian thực: DS1307 Hình Chip DS1307 DS1307 chip đồng hồ thời gian thực (RTC : Real-time clock), khái niệm thời gian thực dùng với ý nghĩa thời gian tuyệt đối mà người sử dụng, tình giây, phút, giờ…DS1307 sản phẩm Dallas Semiconductor (một công ty thuộc Maxim Integrated Products) Chip có ghi 8-bit chứa thời gian là: giây, phút, giờ, thứ (trong tuần), ngày, tháng, năm Ngồi DS1307 có ghi điều khiển ngõ phụ(Control) 56 ghi trống dùng RAM Hình Cách mắc DS1307 • X1 X2: ngõ kết nối với thạch anh 32.768KHz làm nguồn tạo dao động cho chip • VBAT: cực dương nguồn pin 3V nuôi chip GND: chân mass chung cho pin 3V Vcc Vcc: nguồn cho giao diện I2C, thường 5V dùng chung với vi điều khiển • Chú ý Vcc không cấp nguồn VBAT cấp DS1307 hoạt động (nhưng không ghi đọc được) SQW/OUT: ngõ phụ tạo xung vuông (Square Wave / Output Driver), tần số xung tạo lập trình Như chân không liên quan đến chức DS1307 đồng hồ thời gian thực, bỏ trống chân nối mạch SCL SDA đường giao xung nhịp liệu giao diện I2C Màn hình hiển thị: Text LCD(16x2) Hình Text LCD 16x2 Text LCD loại hình tinh thể lỏng nhỏ dùng để hiển thị dòng chữ số bảng mã ASCII Không giống loại LCD lớn, Text LCD chia sẵn thành ô ứng với ô hiển thị ký tự ASCII Cũng lý thị ký tự ASCII nên loại LCD gọi Text LCD LCD 16x2 loại có dòng dòng hiển thị tối đa 16 ký tự Text LCD có cách giao tiếp nối tiếp (như I2C) song song Hình Các chân text LCD 16x2 • • • • • • • Chân chân chân nguồn, nối với GND nguồn 5V Chân chân chỉnh độ tương phản RS (chân số 4): Chân lựa chọn ghi R/W chân số 5: Chân lựa chọn việc đọc ghi EN (chân số 6): Chân cho phép LCD hoạt động (Enable) D0 => D7 (chân số đến chân 14) 8bit giao tiếp liệu Chân A(Anode), chân K(Kathode) nối nguồn LED cho LCD PCA9517 • Là IC chuyển đổi mức logic để giao tiếp I2C với hai thiết bị có mức logic khác (3.3v5v) • VCCA: 0.9V -> 5.5V • VCCB: 2.7V -> 5.5V • Có thể đáp ứng cho giao tiếp I2C có tần số lên đến 400kHz • Nhiệt độ giới hạn từ -40oC đến 85oC Hình Hình dạng PCA9517 Các sử dụng: mắc vi xử lý phía bên B Pca9517, phía bên A mắc DS1307 minh họa hình Hình Cách mắc PCA9517 IC nguồn 3.3volt LM1117 Hình Hình ảnh LM1117 Cảm biến nhiệt độ DS18B20 • Có thể đo nhiệt độ khoảng -55 -> +125 °C • Với khoảng nhiệt độ -10°C to +85°C độ xác ±0.5°C • Có chức cảnh báo nhiệt độ vượt giá trị cho trước Hình 10 Hình ảnh DS18B20 Các đặc điểm kỹ thuật cảm biến DS18B20: • Sử dụng giao diện dây nên cần có chân để truyền liệu • Điện áp sử dụng : – 5.5 V, • Có thể cấu hình mã hóa nhiệu độ từ – 12 bit số bit lớn độ xác cao • Thời gian chuyển đổi nhiệt độ tối đa 750ms cho mã hóa 12 bit • Dòng tiêu thụ chế độ nghỉ cực nhỏ • Mỗi cảm biến có mã định danh 64 bit chứa nhớ ROM chip (on chip), giá trị nhị phân khắc tia laze • Nếu cấu hình cho DS18B20 theo 9,10,11,12 bit ta có độ xác tương ứng : 0.5°C , 0.25°C ,0.125°C, 0.0625°C.Theo mặc định nhà sản xuất khơng cấu hình chế độ chuyển đổi tự cấu hình 12 bit • Khi bắt đầu chuyển đổi nhiệt độ chân DQ kéo xuống mức thấp chuyển đổi xong mức cao.Như ta vào tượng để xác định chuyển đổi xong nhiệt độ Ngồi có linh kiện khác • IC nhạc Um66 • Loa, transistor • Tụ điện, điện trở, … CÁCH THỨC GIAO TIẾP GIỮA CÁC THIẾT BỊ Giao tiếp LCD vi điều khiển: + Giao tiếp 8bit: Để sử dụng mode bit, tất lines liệu LCD từ D0 đến D7 (từ chân đến chân 14) phải nối với PORT chip điều khiển bên Ưu điểm phương pháp giao tiếp liệu ghi đọc nhanh đơn giản chip điều khiển cần xuất nhận liệu PORT Tuy nhiên, phương pháp có nhược điểm tổng số chân dành cho giao tiếp LCD nhiều, tính ln chân điều khiển cần đến 11 đường cho giao tiếp LCD + Giao tiếp 4bit: LCD cho phép giao tiếp với điều khiển theo chế độ bit Trong chế độ này, chân D0, D1, D2 D3 LCD không sử dụng (để trống), có chân từ D4 đến D7 kết nối với chip điều khiển Ưu điểm lớn phương pháp tối thiểu số lines dùng cho giao tiếp LCD Tuy nhiên, việc đọc ghi 4bit tương đối khó khăn đọc ghi liệu bit Giao tiếp vi điều khiển với chip xử lý thời gian thực Giao tiếp chuẩn I2C: Đây giao tiếp phát triển Philips Semiconductor gọi bus I2C (Inter-Intergrated Circuit) Tất chip có tích hợp tương thích với I2C có thêm giao diện tích hợp Chip để truyền thơng trực tiếp với thiết bị tương thích I2C khác Việc truyền liệu nối hai hướng bit thực thi theo chế độ sau: Chuẩn (Standard)—100 Kbits/sec Nhanh (Fast)—400 Kbits/sec Tốc độ cao (High speed)—3.4 Mbits/sec Đường bus thực truyền thông nối tiếp I2C gồm hai đường đường truyền liệu nối tiếp SDA đường truyền nhịp xung đồng hồ nối tiếp SCL SDA- Serial Data: đường liệu nối tiếp, tất thông tin địa hay liệu truyền đường theo thứ tự bit Chú ý chuẩn I2C, bit có trọng số lớn (MSB) truyền trước nhất, đặc điểm ngược lại với chuẩn UART SCL –Serial Clock: đường giữ nhịp nối tiếp TWI (I2C) chuần truyền thơng nối tiếp đồng bộ, cần có đường tạo xung giữ nhịp cho trình truyền/nhận, xung đường giữ nhịp SCL, bit liệu đường SDA lấy mẫu (sample) Dữ liệu nối tiếp đường SDA lấy mẫu đường SCL mức cao chu kỳ giữ nhịp, đường SDA không đổi trạng thái SCL mức cao Chân SDA đổi trạng thái SCL mức thấp Giao tiếp thiết bị có mức điện áp 3.3Volt với 5Volt Dùng IC PCA9517 để chuyển đổi giao tiếp I2C DS1307 với Msp430 Minh họa hình bên dưới: Hình 11 Giao tiếp I2C Giao tiếp dây (1-wire protocol) : phương thức truyền nhận liệu nối tiếp dây liệu, bit liệu truyền hết chuỗi bit, sợi dây gắn nhiều thiết bị giao tiếp tất truyền nhận liệu dây nhỏ gọn tiết kiệm • Mỗi cảm biến nhiệt độ DS1820 có dãy mã 64 bit lưu trữ nhớ ROM từ sản xuất kỹ thuật laze Ý nghĩa 64 bit: • Tám bit mã định danh họ dây, mã DS1820 10h • 48 bit mã số xuất xưởng nhất, nghĩa cảm biến DS1820 có mã số • Tám bit cuối có ý nghĩa byte mã kiểm tra CRC (cyclic redundancy check), byte tính tốn từ 56 bit dãy mã ROM • Để truy cập lên cảm biến dây DS1820 ta phải sử dụng hai nhóm lệnh: lệnh ROM lệnh chức (function commands) nhớ, lệnh mô tả sau: • Sau thiết bị chủ (thường vi điều khiển) phát xung presence pulse,nó xuất lệnh ROM Có loại lệnh ROM, lệnh dài bit Thiết bị chủ phải đưa lệnh ROM thích hợp trước đưa lệnh chức để giao tiếp với cảm biến DS18S20 GHÉP NỐI PHẦN CỨNG Cách ghép nối • Vi xử lý MSP430G2452PDIP có 16 ngõ I/O để giao tiếp • Dùng ngõ I/O để giao tiếp với text LCD theo phương pháp giao tiếp 4bit • Dùng ngõ I/O qua IC PCA 9517 để giao tiếp I2C với chip thời gian thực DS1307 • Dùng ngõ I/O điều khiển nút nhấn để điều chỉnh chế độ cài đặt • Dùng ngõ I/O để giao tiếp dây (1 wire) với cảm biến nhiệt độ DS18B20 • Dùng ngõ I/O để điều khiển loa báo hiệu • Như dư lại ngõ I/O dùng cho cãi tiến tích hợp tương lai Mạch nguồn 3.3volt Hình 12 Mạch nguồn 3.3volt Mạch nguyên lý đầy đủ có dạng sau: Hình 13 Mạch ngun lý đầy đủ LƯU ĐỒ GIẢI THUẬT Chương trình chính: Chia làm chương trình: + Đọc DATA từ DS1307 + Hiển thị LCD + Cài đặt thời gian Chương trình mở rộng: + Đọc hiển thị nhiệt độ + Hẹn báo thức + Đồng hồ bấm giây Lưu đồ hồn chỉnh: Hình 14 Lưu đồ giải thuật Giải thích lưu đồ: • Bắt đầu, chương trình gọi chương trình đọc liệu từ DS1307 với chuẩn giao tiếp I2C đọc liệu từ DS18B20 qua giao tiếp wire, sau gọi chương trình để hiển thị giá trị: hiển thị giá trị Giờ, hiển thị giá trị Phút, hiển thị giá trị Giây, hiển thị nhiệt độ dòng LCD, hiển thị giá trị thứ, hiển thị giá trị ngày, hiển thị giá trị tháng, hiển thị giá trị năm với hiển thị biểu tượng hẹn dòng LCD Nếu phím MODE (chọn chế độ cài đặt) khơng nhấn vòng lặp chương trình chạy vơ tận Nếu phím MODE nhấn, nhảy tới chương trình cài đặt thời gian, hẹn báo thức, bấm giây tùy thuộc vào số lần nhấn phím MODE người dùng 6 CODE CHƯƠNG TRÌNH Code đọc DS1307: //DS1307 //**************************************************************** void I2C_start(void) { _P1_DIRECT->_BIT.b6 =1; _P1_DIRECT->_BIT.b7 =1; SDAOUT = 1; SCLOUT = 1; delay_1(); SDAOUT = 0; delay_1(); SCLOUT = 0; delay_1(); } void I2C_stop(void) { _P1_DIRECT->_BIT.b6 =1; _P1_DIRECT->_BIT.b7 =1; SCLOUT = 1; SCLOUT = 0; SDAOUT = 0; delay_1(); SCLOUT = 1; delay_1(); SDAOUT = 1; } unsigned char I2C_write(unsigned char dat) { _P1_DIRECT->_BIT.b6 =1; _P1_DIRECT->_BIT.b7 =1; unsigned char i; for (i=0;i

Ngày đăng: 26/12/2017, 13:37

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

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

Tài liệu liên quan