. NỘI DUNG BÁO CÁO I.GIỚI THIỆU CHUNG: • Đề tài: Cảnh báo nhiệt độ đơn giản • Hướng giải quyết vấn đề: Dùng MSP430G2553 làm khối xử lý. Sử dụng cảm biến LM35 để đo nhiệt độ. Sử dụng SIM900A để gửi báo động đến Phone hoặc gọi trực tiếp đến cứu hỏ (phải đăng ký với cứu hoả) bằng cách nhắn tin và gọi liên tục. Led đơn và speaker có nhiệm vụ báo động tại chỗ. Lcd hiển thị nhiệt độ hiện tại và nhiệt độ ngưỡng cảnh báo. Có nút ấn tăng giảm nhiệt độ ngưỡng Nút ngừng ngay lập tức báo động Nút reset vi điều khiển II. GIẢI PHÁP THIẾT KẾ : 1. Sơ đồ khối : 2. Phân tích chức năng và nhiệm vụ của các khối 2.1 . Khối nguồn : Khối nguồn được lấy từ nguồn ổn định 5V cung cấp cho toàn mạch, đồng thời tạo ra nguồn ổn định 3,3 cung cấp cho MSP430g2553 hoạt động.
Trang 1TRƯỜNG ĐẠI HỌC CẦN THƠ KHOA CÔNG NGHỆ
BÁO CÁO ĐỒ ÁN KĨ THUẬT VI XỬ LÝ
GVHD: TRẦN HỮU DANH
ĐỀ TÀI:
Cảnh báo nhiệt độ đơn giản
Sinh viên thực hiện:
Bành Phú Cường Mssv: B1509299
Trang 2A NỘI DUNG BÁO CÁO
I.GIỚI THIỆU CHUNG
II GIẢI PHÁP VÀ THIẾT KẾ :
Trang 3A NỘI DUNG BÁO CÁO
I.GIỚI THIỆU CHUNG:
• Đề tài:
Cảnh báo nhiệt độ đơn giản
• Hướng giải quyết vấn đề:
Dùng MSP430G2553 làm khối xử lý
Sử dụng cảm biến LM35 để đo nhiệt độ
Sử dụng SIM900A để gửi báo động đến Phone hoặc gọi trực tiếp đến cứu
hỏ (phải đăng ký với cứu hoả) bằng cách nhắn tin và gọi liên tục
Led đơn và speaker có nhiệm vụ báo động tại chỗ
Lcd hiển thị nhiệt độ hiện tại và nhiệt độ ngưỡng cảnh báo
Có nút ấn tăng giảm nhiệt độ ngưỡng
Nút ngừng ngay lập tức báo động
Nút reset vi điều khiển
II GIẢI PHÁP THIẾT KẾ :
Trang 42.2 KHỐI BÁO ĐỘNG:
LED VÀ SPEAKER
Led và speaker sẽ phát đi báo động bằng cách nhấp nhấy và hú liên tục đến khi
được tắt đi.
Trang 5Giới thiệu
Đây là một mô-đun không dây siêu nhỏ gọn và đáng tin cậy SIM900A là một giải pháp GSM / GPRS băng tần kép hoàn chỉnh trong mô-đun SMT có thể được nhúng trong các ứng dụng của khách hàng Giao diện tiêu chuẩn công nghiệp, SIM900A cung cấp hiệu suất GSM / GPRS 900/1800 MHz cho thoại, SMS, Dữ liệu và Fax trong một yếu tố hình thức nhỏ và tiêu thụ điện năng thấp Với cấu hình nhỏ 24mmx24mmx3mm, SIM900A có thể đáp ứng hầu hết mọi yêu cầu về không gian trong các ứng dụng của người dùng, đặc biệt là cho nhu cầu thiết kế mỏng
và nhỏ gọn
Đặc trưng
• Băng tần kép 900/1800 MHz
• GPRS đa khe cắm loại 10 / 8GPRS trạm di động loại B
• Tuân thủ GSM giai đoạn 2/2 + Lớp 4 (2 W @ 850/900 MHz)
• Lớp 1 (1 W @ 1800/1900 MHz)
• Điều khiển thông qua các lệnh AT ( Lệnh GSM 07,07, 07,05 và SIMCOM được tăng cường)
• Tiêu thụ điện năng thấp: 1.5mA (chế độ ngủ) '
• Nhiệt độ hoạt động: -40 ° C đến +85 ° C
• Chỉ báo trạng thái (D5) : Nó sẽ nhấp nháy liên tục bất cứ khi nào cuộc gọi đến nếu không
nó được BẬT
• Đèn LED mạng (D6) : Đèn led này sẽ nhấp nháy mỗi giây cho biết mô-đun GSM không đ
ược kết nối với mạng di động Khi kết nối được thiết lập thành công, đèn LED sẽ nhấp nháy liên tục cứ sau 3 giây
Trang 6Gửi báo động đến Phone hoặc gọi trực tiếp đến cứu hỏ (phải đăng ký với cứu hoả) bằng cách nhắn tin và gọi liên tục
2.3 KHỐI VI XỬ LÝ
MSP430G2553
Giới thiệu
MSP430G2553 là bộ vi điều khiển tín hiệu hỗn hợp công suất cực thấp với bộ định thời
16 bit tích hợp, lên đến 24 chân kích hoạt cảm ứng điện dung, bộ so sánh tương tự linh hoạt và khả năng giao tiếp tích hợp sử dụng giao diện nối tiếp phổ quát Ngoài ra, các thành viên gia đình MSP430G2553 có ADC tương tự kỹ thuật số 10 bit
Các ứng dụng điển hình bao gồm các hệ thống cảm biến chi phí thấp thu tín hiệu tương
tự, chuyển đổi chúng thành giá trị kỹ thuật số và sau đó xử lý dữ liệu để hiển thị hoặc để truyền đến hệ thống máy chủ
Tính năng, đặc điểm
Trang 72.4 KHỐI CẢM BIẾN
Giới thiệu
Nói chung, cảm biến nhiệt độ là một thiết bị được thiết kế đặc biệt để đo độ nóng hoặc lạnh của vật thể LM35 là một cảm biến nhiệt độ IC chính xác với đầu ra tỷ lệ thuận với nhiệt độ
(tính bằng ° C) Với LM35, nhiệt độ có thể được đo chính xác hơn so với nhiệt điện trở Nó cũ
ng có khả năng tự sưởi ấm thấp và không làm tăng nhiệt độ quá 0,1 ° C trong không
khí Phạm vi nhiệt độ hoạt động là từ -55 ° C đến 150 ° C Trở kháng đầu ra thấp, đầu ra tuyến
tính và hiệu chuẩn vốn có của LM35 giúp giao tiếp với mạch đọc hoặc điều khiển đặc biệt dễ dàng Nó đã tìm thấy các ứng dụng của nó về nguồn cung cấp năng lượng, quản lý pin, các thiết bị, vvnhấp vào đây cho bảng dữ liệu
Cảm biến nhiệt độ LM35
LM35 Cảm biến nhiệt độ Pinout
LM35 là một cảm biến mạch tích hợp có thể được sử dụng để đo nhiệt độ với đầu ra điện tỷ lệ với nhiệt độ (tính bằng ° C) Nó có thể đo nhiệt độ chính xác hơn so với sử dụng nhiệt điện trở Mạch cảm biến được niêm phong và không bị oxy hóa LM35 tạo ra điện áp đầu ra cao hơn cặp nhiệt điện và có thể không yêu cầu điện áp đầu ra được khuếch đại LM35 có điện áp đầu ra tỷ lệ thuận với nhiệt độ Celsius Hệ số tỷ lệ là 01V / ° C
LM35 không yêu cầu hiệu chuẩn hoặc cắt tỉa bên ngoài và duy trì độ chính xác từ +/- 0,4 ° C ở nhiệt độ phòng và +/- 0,8 ° C trong phạm vi từ 0 ° C đến + 100 ° C Một đặc tính quan trọng khác của LM35 là nó chỉ thu được 60 micro ampe từ nguồn cung cấp và có khả năng tự sưởi
ấm thấp LM35 có nhiều gói khác nhau như gói giống như bóng bán dẫn nhựa TO-92, gói kim loại có thể bán dẫn T0-46, 8- gắn bề mặt chì SO-8 gói phác thảo nhỏ
Trang 8
2.5 KHỐI HIỂN THỊ
Giới thiệu
Màn hình tinh thể lỏng
Màn hình tinh thể lỏng (LCD) là màn hình phẳng được sử dụng trong đồng hồ kỹ thuật số,
máy ảnh và nhiều máy tính cầm tay Màn hình CD sử dụng hai tấm vật liệu phân cực với dung dịch tinh thể lỏng giữa chúng Một dòng điện truyền qua chất lỏng làm cho các tinh thể thẳng hàng để ánh sáng không thể đi qua chúng Do đó, mỗi tinh thể giống như một màn trập, cho phép ánh sáng đi qua hoặc chặn ánh sáng LCD tiêu thụ ít năng lượng hơn nhiều so với màn hình LED và màn hình hiển thị khí vì chúng hoạt động theo nguyên tắc chặn ánh sáng thay vì phát ra LCD được sử dụng trong TV màn hình phẳng, điện thoại thông minh, màn hình máy tính, đồng hồ kỹ thuật số, v.v
LCD có thể được chế tạo ở các kích thước khác nhau, chẳng hạn như
8x1,8x2,10x2,16x1,16x2,16x4,20x2,20x4,24x2,30x2,32x2,40x2, v.v Ví dụ: lấy LCD 16x2 có nghĩa
là nó có thể hiển thị 16 ký tự trên mỗi dòng và có 2 dòng như vậy Tất cả các màn hình LCD này đều thực hiện các chức năng tương tự như ký tự hiển thị, số, ký tự đặc biệt Ký tự ASCII, v.v Lập trình của chúng cũng giống nhau vì tất cả chúng đều có cùng 14 chân (0-13) hoặc 16 chân (0 đến 15)
Pin Mô tả của LCD
Tất cả các màn hình LCD có 14 hoặc 16 chân Hãy xem chúng sau đây
• GND hoặc VSS: Mặt đất hoặc 0V
• VCC hoặc VDD: Điện áp cung cấp 5V
• VEE: Điều chỉnh độ tương phản thông qua một điện trở thay đổi
Trang 9• RS: Đăng ký chọn Nói chung, mỗi Lcd có hai loại thanh ghi là Đăng ký lệnh và Đăng
ký dữ liệu Khi RS = 0 hoặc thấp, Đăng ký lệnh được chọn và Khi RS = 1 hoặc cao, Đă
ng ký dữ liệu được chọn
Pin Mô tả của LCD
• R / W: Đọc / Ghi Khi RW = 1 , dữ liệu được đọc từ Lcd và Khi RW = 0 , ghi dữ liệu vào Lcd
• EN: Cho phép gửi dữ liệu vào các chân dữ liệu khi có xung cao đến thấp
• Tám chân dữ liệu (DB0 đến DB7): Chân 8 dữ liệu này mang dữ liệu hoặc lệnh 8 bit từ
một đơn vị bên ngoài như bộ điều khiển vi mô
• Led +: Đèn nền của màn hình LCD nên được kết nối với Vcc hoặc 5V
• Led-: Đèn nền của màn hình LCD nên được kết nối với Gnd hoặc 0V
III LINH KIỆN :
Trang 10Vi xử lý MSP430G2553
LM35 Module SIM900a Sim card của nhà mạng bất kỳ
Điện trở SPEAKER LED Nút bấm Công tắc
VI THIẾT KẾ:
1 SƠ ĐỒ NGUYÊN LÝ
MSP430G2553 SPEALER VÀ LED
LCD
SIM900A
NGUỒN CÁC NÚT ĐIỀU KHIỂN
LM35
Trang 112 Thiết kế phần cứng
Trang 123 Thiết kế phần mềm và lưu đồ thuật toán
Trang 134 CODE
Main.c
#include "msp430g2553.h"
Trang 14P2DIR |= (BIT5 + BIT4); //OUT led speaker
P1DIR |=(BIT1 + BIT3 + BIT4 + BIT5 + BIT6 + BIT7); //out LCD
P2IFG &= ~(BIT1+BIT2);
// Khai bao dien tro keo len tai P2.1 và P2.2
P2REN |= BIT0 + BIT1;
P2OUT |= BIT0 + BIT1;
Trang 15nguyen= (int) so/1; //lay phan nguyen
le = (int)((so - nguyen)*10000); //lay phan le cua tp
ftoa(chuoi,nguyen-2,le); // chuyen no sang chuoi\
Trang 17#define LCM_DIR P1DIR
#define LCM_OUT P1OUT
//
// Define symbolic LCM - MCU pin mappings
// We've set DATA PIN TO 4,5,6,7 for easy
translation
//
#define LCM_PIN_RS BIT1 // P1.5
#define LCM_PIN_EN BIT3 // P1.4
#define LCM_PIN_D7 BIT7 // P1.0
#define LCM_PIN_D6 BIT6 // P1.1
#define LCM_PIN_D5 BIT5 // P1.2
#define LCM_PIN_D4 BIT4 // P1.3
#define LCM_PIN_MASK ((LCM_PIN_RS |
LCM_PIN_EN | LCM_PIN_D7 | LCM_PIN_D6 | LCM_PIN_D5 | LCM_PIN_D4))
Trang 18// This is the function that must be called
// whenever the LCM needs to be told to
// scan it's data bus
Trang 19// Send a byte on the data bus in the 4 bit mode
// This requires sending the data in two chunks
// The high nibble first and then the low nible
Trang 20// set High Nibble (HN) -
// usefulness of the identity mapping
// apparent here We can set the
Trang 21// set Low Nibble (LN) -
// usefulness of the identity mapping
// apparent here We can set the
// DB7 - DB4 just by setting P1.7 - P1.4
// using a simple assignment
//
LCM_OUT &= (~LCM_PIN_MASK);
LCM_OUT |= ((ByteToSend & 0x0F) << 4);
if (IsData == TRUE)
{
Trang 24//
// Routine Desc:
//
// Clear the screen data and return the
// cursor to home position
Trang 25// // Clear display, return home
//
// Parameters:
//
Trang 26// set the MSP pin configurations
// and bring them to low
//
LCM_DIR |= LCM_PIN_MASK;
LCM_OUT &= ~(LCM_PIN_MASK);
//
// wait for the LCM to warm up and reach
// active regions Remember MSPs can power // up much faster than the LCM
Trang 27//
LCM_OUT &= ~LCM_PIN_RS;
LCM_OUT &= ~LCM_PIN_EN;
LCM_OUT = 0x20;
PulseLcm();
//
// set 4-bit input - second time
// (as reqd by the spec.)
Trang 30-void send_str(char chuoi[])