You are on page 1of 9

TRƯỜNG ĐẠI HỌC CẦN THƠ

BỘ MÔN TỰ ĐỘNG HÓA



----- -----

Báo cáo
Tìm hiểu về UART và cảm
biển nhiệt LM35

CÁN BỘ GIẢNG DẠY NHÓM 7


Nguyễn Khắc Nguyên Phạm Văn Tý B1509424
Nguyễn Võ Minh Quân B1509527
Trần Huỳnh Phụng B1709103
1.

Tháng 11/2019
I/ MỤC TIÊU
-Tìm hiểu về UART và cảm biển nhiệt LM35
-Thiết kế mạch giao tiếp và truyền giá trị nhiệt độ của LM35 từ MSP430G2553 về PC

II/ NỘI DUNG


1. Tìm hiểu về UART:
UART (Universal Asynchronous Receive/Transmit) là chuẩn giao tiếp truyền nhận dữ
liệu không đồng bộ. Đây là chuẩn giao tiếp phổ biến và dễ sử dụng , thường dùng trong
giao tiếp giữa vđk với nhau hoặc với các thiết bị khác

 Cách hoạt động:


Hai thiết bị giao tiếp UART với nhau thông qua hai đường dẫn RX( read) và TX
(transmit)
Vì là giao tiếp không đồng bộ nên hai thiết bị phải được cài đặt thống nhất về khung
truyền
- Start bit: báo hiệu quá trình truyền dữ liệu.
- Data bits: dữ liệu cần giao tiếp, thường là 8 bit.
- Parity bit: bit kiểm tra chẵn lẻ, dùng để phát hiện lỗi.
-Stop bit: báo hiệu kết thúc một frame dữ liệu. Có thể tùy chọn 1 hoặc 2 bit.
-IDLE : trạng thái nghỉ , phải ở mức cao

 Ứng dụng: -Giao tiếp IC với IC, giữa máy tính với IC và thiết bị ngoại vi
2. Cảm biến nhiệt độ LM35
LM35 là một cái cảm biến nhiệt độ giá rẻ (tầm 26k) thường được tiêu dùng mang thể
được sử dụng để đo nhiệt độ (theo ° C). Nó với thể đo nhiệt độ chính xác hơn so với
một điện trở nhiệt (thermistor) cùng tầm giá. Cảm biến này tạo ra điện áp có đầu ra cao
hơn các cặp nhiệt điện và có thể ko cần điện áp đầu ra được khuếch đại. LM35 có điện
áp đầu ra tỷ lệ thuận có nhiệt độ Celsius. Hệ số tỷ lệ là .01V / ° C.

LM35 có độ chuẩn xác hơn kém 0,4 ° C ở nhiệt độ phòng bình thường và hơn kém 0,8
° C trong khoảng 0 ° C đến + 100 ° C. Một đặc tính quan trọng hơn của cảm biến này
là rằng nó chỉ thu được 60 microamps từ nguồn cung ứng và có khả năng tự sưởi ấm
thấp.
Một số tính chất của cảm biến LM35:
 Đầu ra của cảm biến này thay đổi diễn tả tuyến tính.
 Điện áp o / p của cảm biến IC này tỉ lệ với nhiệt độ Celsius.
 Điện áp hoạt động từ -55˚ đến + 150˚C.
 Được vận hành dưới 4 tới 30 vôn.

Các ứng dụng của cảm biến nhiệt độ LM35


 Đo nhiệt độ của một môi trường đặc biệt và các áp dụng HVAC
 Kiểm tra nhiệt độ pin
 Cung cấp thông tin về nhiệt độ của một linh kiện điện tử khác

III/ HƯỚNG GIẢI QUYẾT ĐỀ TÀI

1. Đề xuất hướng giải quyết


-Mô tả ý tưởng: Khi cắm Kit LaunchPad MSP430G2553 vào máy tính thì sẽ nhận Kit
LaunchPad là một cổng Com ảo. Khi cấp điện MSP430 nhận giá trị điện từ LM35 và
biến đổi thành tín hiệu số (ADC) , sau đó xử lí tín hiệu thành giá trị nhiệt độ và hiển
thị trên PC thông qua UART
-Mục tiêu: hiển thị đúng giá trị nhiệt độ từ LM35 trên PC
2. Cách tiếp cận và phương pháp thực hiện
- Phân tích bài toán thực tế.
- Thiết kế và lập trình.
- Cài đặt phần mềm lập trình
- Lắp mạch thực tế và chạy thử.
- Dựa vào ứng dụng và hiệu chỉnh cho phù hợp.
3. Thiết kế phần cứng
a. Sơ đồ khối

b. Các bước thực hiện


-kết nối lm35 với msp430g2553:
VCC: cấm vào nguồn vcc trên msp430g2553
GND: cấm vào gnd trên msp430g2553
OUT: cấm vào port p1.6
-Liên kết msp430g2553 với PC: Dùng USB mini
4. Thiết kế phần mềm
-chức năng: nhận tín hiệu điện từ lm35 sau đó biến đổi thành dữ liệu số xử lí và
truyền về PC
-Lưu đồ giải thuật:

5. Kết quả dự kiến


Đọc được giá trị dữ liệu từ LM35 và hiển thị trên PC
6. Dự trù vật tư thiết bị
- Laptop(PC) có các phần mềm cần thiết
- Kit MSP430G2553
- Cảm biến nhiệt độ lm35
- Dây bus kết nối
- Cáp USB mini
IV/ KẾT QUẢ THỰC HIỆN
1. Chương trình

#include "msp430g2553.h"
#include "UART.h"
#include <intrinsics.h>
#include <string.h>
#include <stdio.h>
unsigned long nhietdo;
void main( void )
{
// Stop watchdog timer to prevent time out reset
WDTCTL = WDTPW + WDTHOLD;
BCSCTL1 = CALBC1_1MHZ;
DCOCTL = CALDCO_1MHZ;
ADC10CTL0=SREF_1+ADC10SHT_2+REFON+ADC10ON+ADC10IE;
__delay_cycles(30);
ADC10CTL1=INCH_6;
ADC10AE0=0x40;

UART_Init();
P1DIR |= 0x01; // P1.0 output
CCTL0 = CCIE; // CCR0 interrupt enabled
TACCR0 =32768;
TACTL = TASSEL_1 + MC_1 + ID_1; // SMCLK, contmode
_BIS_SR(GIE);
// __enable_interrupt();
while(1)
{
nhietdo=(unsigned long)(ADC10MEM*1.5*100)/1023;
ADC10CTL0|=ENC+ADC10SC;
__delay_cycles(1000000); //1s
UART_Write_String("Nhiet do la:");
UART_Write_Int(nhietdo);
UART_Write_Char(10);
}
}
#pragma vector=ADC10_VECTOR
__interrupt void ADC10_ISR(void)
{__bic_SR_register_on_exit(CPUOFF);}
2. Mạch thực tế

3. Phần mềm giao tiếp UART

-Sau khi cắm kit MSP430G2553, máy tính nhận cổng COM ảo: COM18
-Thiết đặt thông số giao tiếp UART cho phần mềm Termite 3.4

-Chạy thử
TÀI LIỆU THAM KHẢO
- Giáo trình Vi điều khiển MSP430 ĐHCT ( thầy Lương Vinh Quốc Danh và thầy Trần
Hữu Danh)
- Ví dụ Code trong quá trình thực tập môn Lập trình Vi điều khiển –MSP430. Giảng
viên hướng dẫn: Nguyễn Khắc Nguyên
- Link:
Phần mềm IAR:
https://drive.google.com/drive/folders/1tGQLQbBbFS7pD_5TtQGETqW8Wx6KMZEO
Phần mềm TERMITE 3.4
https://www.freewarefiles.com/Termite_program_61676.html
Datasheet
https://datasheet4u.com/datasheet-pdf/NationalSemiconductor/LM35/pdf.php?id=49860
https://www.alldatasheet.com/datasheet-pdf/pdf/465770/TI1/MSP430G2553.html
PHỤ LỤC

You might also like