1. Trang chủ
  2. » Giáo Dục - Đào Tạo

ĐỒ án VI điều KHIỂN đề tài tìm HIỂU cấu TRÚC GPIO của MSP430 THIẾT kế MẠCH tạo HIỆU ỨNG TRÊN 16 LED đơn

26 148 2

Đ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

Thông tin cơ bản

Định dạng
Số trang 26
Dung lượng 1,52 MB

Nội dung

TRƯỜNG ĐẠI HỌC CẦN THƠ KHOA CÔNG NGHỆ BỘ MÔN TỰ ĐỘNG HÓA ĐỒ ÁN VI ĐIỀU KHIỂN ĐỀ TÀI: TÌM HIỂU CẤU TRÚC GPIO CỦA MSP430-THIẾT KẾ MẠCH TẠO HIỆU ỨNG TRÊN 16 LED ĐƠN... Thiết kế phần cứn

Trang 1

TRƯỜNG ĐẠI HỌC CẦN THƠ KHOA CÔNG NGHỆ

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

ĐỒ ÁN VI ĐIỀU KHIỂN

ĐỀ TÀI: TÌM HIỂU CẤU TRÚC GPIO CỦA MSP430-THIẾT

KẾ MẠCH TẠO HIỆU ỨNG TRÊN 16 LED ĐƠN.

NHÓM 5

Nguyễn Khắc Nguyên Nguyễn Hữu Cảnh B1709064

Trương Văn Cường B1709065 Trần Vũ Luân B1709091

Trang 2

MỤC LỤC

I.GIỚI THIỆU ĐỀ TÀI 3

a Nội dung 3

b.Các tính năng 3

c.Phương pháp thực hiện 3

II.GPIO 3

III.THỰC HIỆN 4

a.Mô hình hệ thống 4

i Mô tả sơ lược hệ thống: 4

ii Sơ đồ khối hệ thống mạch điện 4

b Thiết kế phần cứng mạch điện: 5

i Sơ lược hoạt động của mạch điện: 5

ii Mạch điện mô phỏng phần cứng: 5

iii Thiết kế chi tiết 6

c Thiết kế phần mềm điểu khiển 6

i Chức năng phần mềm: 6

ii Sơ đồ chính: 7

7

iii Sơ đồ chương trình con: 8

iv Đoạn code chương trình 15

3.kết quả thực hiện 22

a Mô hình thực tế 22

b phần cứng mạch điện 22

c Kết quả 23

d Ưu nhược điểm của hệ thống 24

e Các hướng phát triển 24

4 Tài liệu tham khảo 24

5 Phụ lục 24

a Quá trình thực hiện đề tại 24

b Danh sách các thành viên và bảng phân chia công việc 24

Trang 3

I.GIỚI THIỆU ĐỀ TÀI

a Nội dung

Đề tài: Tìm hiểu cấu trúc GPIO của MSP430-thiết kế mạch tạo

hiệu ứng trên 16 led đơn

Mục tiêu: Hiểu được chức năng, cách sử dụng GPIO và thiết kế

mạch tạo hiệu ứng trên 16 led đơn (6 hiệu ứng)

 Khi nhấn phím 4: dịch 2 led xen kẻ

 Khi nhấn phím 5: chớp tắt 8 led xen kẻ

 Khi nhấn phím 6: các led sang dần tắt dần

c.Phương pháp thực hiện

-Lập trình chức năng GPIO cho chip MSP430 sử dụng button, để điều

khiển trạng thái hoạt động của 16 LED đơn,thông qua 2 IC 74HC595

-Sử dụng 3 chân P1.0,P1.1,P1.2 của chip MSP430G2553 kết nối với 3 chân SCK,CLK,DATA của IC 74HC595,ghép 2 IC 74HC595 với nhau

để kết nối với 16 LED đơn Sử dụng 6 chân P2.0-P2.5 của chip MSP430G2553 nhận dữ liệu vào, kết nối với button

II.GPIO

 Giới thiệu:

-GPIO là viết tắt General Purpose Input Output ( Cổng đầu vào, ra với mục đích cơ bản) nó là các chân đầu ra, đầu vào đa chức năng

-Số Port tùy thuộc vào loại MCU: 1- 12 Port

-Mỗi bit của port(port pin) có thể điều khiển độc lập

-Pin vào có thể tạo ra tín hiệu ngắt(Ext interupt)

 Một số thanh ghi thường được sử dụng:

 Thanh ghi cấu hình vào/ra cho port pin

PxDIR.y = 0: bit thứ y của Px là INPUT

PxDIR.y = 1: bit thứ y của Px là OUTPUT

Trang 4

 Thanh ghi điều khiển port pin:

PxOUT.y = 0: bit thứ y của Px là 0

PxOUT.y = 1: bit thứ y của Px là 1

 Thanh ghi PxIN: đọc trạng thái port pin:

PxIN: chứa trạng thái logic đọc vào của Px

 Thanh ghi PxREN: thiết lập điện trợ kéo nội bên trong MCU cho các pin Input:

PxREN.y = 1: bật điện trở kéo tại pin y

PxREN.y = 0: tắt điện trở kéo tại pin y

 Thanh ghi PxIE: cho phép ngắt port pin (đối với chân là Input):

PxIE.y = 1: cho phép ngắt tại pin y của Px

PxIE.y = 0: không phép ngắt tại pin y của Px

 Thanh ghi PxIES: thiết lập cạnh ngắt của tín hiệu( cạnh lênh hoặc cạnh xuống):

PxIES.y = 1: cho phép ngắt cạnh xuống

PxIES.y = 0: cho phép ngắt cạnh lên

 Thanh ghi PxIFG: chứa cờ ngắt (trạng thái tác động của tín hiệu):

PxIFG.y = 1: một ngắt đang chờ xử lý tại pin thứ y

PxIFG.y = 0: không có ngắt (không có tín hiệu tác động)

Trang 5

b Thiết kế phần cứng mạch điện:

i Sơ lược hoạt động của mạch điện:

Cấp nguồn cho mạch và nạp dữ liệu vào MSP430G2553 Nối chân port 1 ra IC ghi dịch 74HC595 kết nối các ngõ ra của IC ra 16 led Nối Port 2 với 6 nút ấn, sau đó tác động vào nút ấn điều khiển trạng thái led

ii Mạch điện mô phỏng phần cứng:

Trang 6

iii Thiết kế chi tiết

1 Khối xử lí trung tâm

 Xử lý tín hiệu thông qua IC ghi dịch

 Thông số mạch điện: Nguồn, ngõ/ra vào IC, nhận tính hiệu từ nút nhấn

 Kết nối:

+ Chân P1.0,P1.1,P1.2 kết nối với 3 chân CK, Data, Latch

+ Q0 đến Q7 của IC kết nối với led

+ Mách nối tiếp 2 IC (Q7’ nối DS)

2 Khối hiển thị:

 Hiển thị hiệu ứng

 Nhận tính hiểu ngõ ra của IC

 Kết nối:

+ Đầu dương nối điện trở ra IC

+ Đầu âm nối GND

3 Khối điều khiển:

 Tác động bằng nút nhấn

 Ngõ vào tác động vào các Port của MSP

 Kết nối với PORT 2 từ bit 0 đến bit 5

c Thiết kế phần mềm điểu khiển

i Chức năng phần mềm:

Viết code lập trình cho MSP430 bằng phần mềm IAR

Trang 7

ii Sơ đồ chính:

Trang 8

iii Sơ đồ chương trình con:

 Hiệu ứng 1: Chóp tắt

Trang 9

 Hiệu ứng 2: Dịch tắt 1 led

Trang 10

 Hiệu ứng 3: Dịch sáng 2 led

Trang 11

 Hiệu ứng 4:Dịch sáng 2 led xen kẻ

Trang 12

 Hiệu ứng 5: 8 Led sáng tắt xen kẻ

Trang 13

Hiệu ứng 6: Led sáng dần tắt dần

Trang 14

 Tạo xung CK:

 Tạo xung chốt:

 Lear bit:

Trang 15

iv Đoạn code chương trình

#include "msp430g2553.h"

// khai bao IO

#define CK BIT0 //khai bao CK =P1.0

#define DATA BIT1 // DATA=P1.1

#define LATCH BIT2 // LATCH=P1.2

Trang 16

P2OUT |= 0x3f; // keo dien tro len cho cac port p2.0-p2.5 P2REN |= 0x3f; // bat dienn tro keo cho port p2.0-p2.5 // -khai bao ngat port 2 -

P2IE |= 0x3f; // cho phep ngat tai P2.0-P2.5 P2IES |= 0x3f; // ngat canh xuong

Trang 17

P2IFG |= 0x3f; // xoa co ngat truoc khi vao vong lap chuong trinh

_BIS_SR(GIE); // cho phep ngat toan cuc GIE // vong lap chuong trinh chinh

while(1) { } // end while } // end main // dinh nghia vector ngat

#pragma vector = PORT2_VECTOR interrupt void Port2(void)

mot_led_tat_dich();

} if((P2IN & K3)==0 ) {

dich2led();

} if( (P2IN & K4)==0 ) {

dich2();

} if( (P2IN & K5)==0) {

Trang 18

chop_tat_8led_xen_ke();

} if( (P2IN & K6)==0 ) {

sang_dan_tat_dan();

} } void chot() {

P1OUT|=LATCH; //Set P1.2=1 delay_cycles(15000);

P1OUT&=~LATCH; // clear P1.2=0 delay_cycles(15000);

} void xung_ck() {

P1OUT|=CK; // Set P1.0=1 delay_cycles(15000);

P1OUT&=~CK; // clear P1.0=0 delay_cycles(15000);

} void xoa() { P1OUT&=~DATA; // clear p1.1=0 for (int i =0;i<17;i++)

{ xung_ck(); // du lieu xung 1, 0 se duoc dua vao IC }

chot(); // du lieu xung 1, 0 dua ra ngo ra IC }

Trang 19

// cac hieu ung // HIEU UNG 1 void chop_tat() { for(int i=0;i<4;i++) { for(int i=0;i<17;i++) { xung_ck();

P1OUT|=DATA;

} chot();

for(int i=0;i<17;i++) { xung_ck();

P1OUT&=~DATA; }

chot();

} } // HIEU UNG 2 void mot_led_tat_dich() { P1OUT|=DATA;

for(int i=0;i<17;i++){

xung_ck();

} chot();

for(int i=0;i<4;i++){

P1OUT&=~DATA; xung_ck();

chot();

for(int i=0;i<17;i++){ P1OUT|=DATA;

Trang 20

xung_ck();

chot();

}}}

// HIEU UNG 3 void dich2led() { for(int i=0;i<4;i++) { P1OUT|=DATA;

for(int i=0;i<2;i++) {

xung_ck();

} chot();

for(int i=0;i<9;i++) { P1OUT&=~DATA; for(int i=0;i<2;i++) { xung_ck();

} chot();

}}}

// HIEU UNG 4

void dich2() { for(int i=0;i<8;i++) { P1OUT|=DATA;

for(int i=0;i<2;i++) { xung_ck();

} chot();

P1OUT&=~DATA; for(int i=0;i<2;i++) { xung_ck();

Trang 21

} chot();

} xoa();

} // HIEU UNG 5 void chop_tat_8led_xen_ke(){ for (int i=0;i<4;i++){

P1OUT|=DATA;

for (int i=0;i<9;i++){

xung_ck();

} chot();

P1OUT&=~DATA;

for(int i=0;i<9;i++){

xung_ck();

} chot();

xoa();

} } // HIEU UNG 6 void sang_dan_tat_dan(){ for(int i=0;i<4;i++){

for (int i=0;i<17;i++){

P1OUT|=DATA;

xung_ck();

chot();

} for(int i=0;i<17;i++){

Trang 22

P1OUT&=~ DATA;

xung_ck();

chot();

} } }

Trang 23

 IC 74hc595: Tăng thêm ngõ ra của MSP

 Led và nút nhấn: Tác động vào MSP và led sáng tắt theo hiệu ứng

c Kết quả

Chương trình thực hiện được với các hiệu ứng đã đặt ra:

Trang 24

 Khi nhấn phím 1: chớp tắt

 Khi nhấn phím 2: một led tắt dịch

 Khi nhấn phím 3: dịch sáng 2 led

 Khi nhấn phím 4: dịch 2 led xen kẻ

 Khi nhấn phím 5: chớp tắt 8 led xen kẻ

 Khi nhấn phím 6: các led sáng dần tắt dần

d Ưu nhược điểm của hệ thống

 Ưu điểm: chương trình hoạt động tốt , đáp ứng được các yêu cầu đề ra

 Nhược điểm: các led còn bị nhiễu do cấp nguồn

https://huynhgiaublog.com/kienthucdientu-chipdieukhienmsp430-chucnangio-5 Phụ lục

a Quá trình thực hiện đề tại

i Kế hoạch thời gian: khoảng 2 tuần

ii Những khó khăn và thuận lợi trong quá trình thực hiện

 Trương Văn Cường: Viết code mô phỏng

 Trần Vũ Luân: Tìm tài liệu soạn file word

6.Trả lời câu hỏi

a.Nguyễn Hữu Cảnh

Câu hỏi: cách kết nối mở rộng port ra 16 led đơn

Trang 25

Trả lời: Dùng 2 ic 74hc595 để mở rộng port : Sử dụng 3 chân P1.0,P1.1,P1.2 của chip MSP430G2553 kết nối với 3 chân SCK,CLK,DATA của IC

b Trương Văn Cường

Câu hỏi:chỉ ra chương trình đưa dữ liệu ra ngoài led đơn

Trả lời : code tạo xung để đưa dữ liệu vào ic

code dưa dữ liệu ra led đơn

c Trần Vũ Luân

Câu hỏi: chỉ ra đoạn code thực hiện phím nhấn và 1 hiệu ứng bất kì

Trang 26

Trả lời: sử dụng phương pháp dung ngắt để đọc phím nhấn tác động thấp Code xử lí phím nhấn

Code xử lí hiệu ứng chớp tắt:

Ngày đăng: 25/01/2022, 10:38

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w