Lập trình game với kit MSP430G255

36 145 1
Lập trình game với kit MSP430G255

Đ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

Trường Đại Học Bách Khoa Hà Nội Viện Điện Tử - Viễn Thông ====o0o==== BÁO CÁO ĐỒ ÁN I Đề tài: Lập trình game với kit MSP430G255 Giảng viên hướng dẫn: ThS Trần Hải Nam Nhóm sinh viên thực hiện: Họ tên Mssv Lớp Vũ Xuân Phong 20143438 Điện tử 03 – K59 Nguyễn Thành Công 20140507 Điện tử 09 – K59 Trần Đức Giang Huy 20146342 CN Điện tử 02 - K59 Nguyễn Như Đồng 20146191 CN Điện tử 01 – K59 Nguyễn Trọng Hiếu 20155560 CN Điện tử 02 – K60 Hà Nội, Tháng 12 năm 2017 Bảng Phân Công Công Việc Nội dung công việc - Lập trình điều khiển Người đảm nhận Vũ Xuân Phong - Báo cáo - Tìm hiểu Kit Lauchpad Nguyễn Thành Cơng MSP430G2553 - Báo cáo - Tìm hiểu Kit Lauchpad Trần Đức Giang Huy MSP430G2553 - Báo cáo - Tìm hiểu hình LCD NOKIA Nguyễn Như Đồng 5110 - Báo cáo - Tìm hiểu Joystick - Báo cáo Nguyễn Trọng Hiếu MỤC LỤC LỜI MỞ ĐẦU Chương I Phân Tích Đề Tài Phân tích đề tài, sơ đồ khối Chi tiết điều khiển khối 2.1 Kit launch pad Msp430G2553 2.2 Màn hình LCD Nokia 5110 2.3 Nút chuyển hướng Joystick .12 Chương II Lập trình điều khiển 13 Lưu đồ thuật tốn chương trình 13 Lập trình với Energia 14 Chi tiết khối code chương trình .15 3.1 Các cấu trúc tạo .15 3.2 Khởi tạo rắn mồi .15 3.3 Thuật toán vẽ rắn 16 3.4 Khối điều khiển 20 3.5 Khối di chuyển .22 3.6 Khỗi xử lý xự kiện 23 3.7 Khối thực việc vẽ điểm và vẽ số mạng lên LCD 26 3.8 Khối chương trình 27 Chương Chạy thử hiệu chỉnh 29 Một số hình ảnh chạy thử 29 Đánh giá kết đạt 30 Những khó khăn gặp phải 30 KẾT LUẬN 32 0|Page DANH MỤC HÌNH VẼ Hình 1.1 Sơ đồ khối chung cho hệ thống Hình 1.2 Sơ đồ chân vi điều khiển MSP430G2553 Hiǹ h 1.3 Kit Launch Pad MSP430G2553 Hiǹ h 1.4 Cấ u trúc điể m ảnh LCD Nokia 5110 .9 Hiǹ h 1.5 Cách thức vẽ LCD Nokia 5110 Hình 1.6 Module Joystick .12 Hình 2.1 Lưu đồ thuật tốn chương trình .13 Hình 2.2 Giao diên Energia 14 Hình 3.1 Hình chương trình chạy thử 29 Hình 3.2 Hình chương trình chạy thử 29 Hình 3.3 Hình chương trình chạy thử 30 1|Page LỜI MỞ ĐẦU Xuất từ năm đầu thập niên 1960, hệ thống nhúng dần trở thành ngành phát triển mạnh mẽ lĩnh vực công nghệ thông tin (CNTT), với ứng dụng rộng rãi công nghiệp đời sống Hệ thống nhúng (embedded system) định nghĩa hệ thống chuyên dụng, thường có khả tự hành thiết kế tích hợp vào hệ thống lớn để thực chức chuyên biệt Khác với máy tính đa năng, hệ thống nhúng thường thiết kế thực chức định có tốc độ cao Hệ thống nhúng bao gồm thiết bị phần cứng phần mềm, thực chip nhúng, vi xử lí, vi điều khiển Trong nội dung Đồ án I với hướng dẫn Thầy Trần Hải Nam, chúng em thực hành việc lập trình nhúng kit MSP430G2553 kết hợp với hình LCD NOKIA 5110 nút chuyển bốn hướng Joystick MSP430 dòng vi điều khiển hãng TI ( Texas Instruments) sản xuất, có kiến trúc RISC thiết kế đặc biệt cho siêu lượng thấp MSP430 sử dụng nguồn thấp tích hợp nhiều ngoại vi thơng minh Vi điều khiển sử dụng nội dung Đồ án I họ MSP430G2553 Ngôn ngữ sử dụng để thực Đồ án I Energia dựa ngôn ngữ C C++ với thư viện hàm sẵn có phong phú sử dụng trình dịch MSPGCC Trong trình thực Đồ án I, nhờ hướng dẫn Thầy Trần Hải Nam, chúng em có nhìn tổng quan ngun lý hoạt động Kit Lauchpad MSP430G2553, hình LCD NOKIA 5110 nút nhấn bốn hướng Joystick, từ áp dụng vào thực đề tài Đồ án I Chúng em xin gửi lời cảm ơn đến Thầy Trần Hải Nam 2|Page Chương I Phân Tích Đề Tài Phân tích đề tài, sơ đồ khối Đề tài Đồ án I theo hướng dẫn Thầy Trần Hải Nam thực game nhỏ Kit MSP430G2553 Nhóm chúng em lực chọn thực game rắn (game snake) kết hợp với nút chuyển hướng Joystick hình hiển thị LCD Nokia 5110 Vi điều khiển đọc tín hiệu điều khiển dạng analog từ Joystick sử dụng ADC (Analog Digital Convert) để chuyển đổi thành tín hiệu số, ứng với giá trị tương ứng vi điều khiển thực vẽ lên hình LCD Nokia 5110 ( di chuyển rắn hình) Đồng thời vi điều khiển thực cập nhật điểm mạng người chơi thực vẽ lại lên hình, sau lần có thay đổi Hình 1.1 Sơ đồ khối chung cho hệ thống Trong đó: Người chơi thực điều khiển trực tiếp thơng qua Joystick, Joystick gửi tín hiệu điều khiển cho vi điều khiển MSP430G2553, vi điều khiển thực xử lý tín hiệu vẽ lại hình LCD Vi điều khiển MSP430G2553 đảm nhận chức xử lý tín hiệu từ Joystick vẽ lên hình LCD NOKIA 5110 Đồng thời thực 3|Page thuật tốn bao gồm luật trò chơi, cập nhật điểm mạng cho người chơi LCD Nokia 5110 thực việc hiển thị việc di chuyển rắn, mồi, điểm mạng người chơi Màn hình Lcd vẽ lại sau lần có thay đổi Chi tiết điều khiển khối 2.1 Kit launch pad Msp430G2553 MSP430 họ vi điều khiển cấu trúc RISC 16-bit sản xuất công ty Texas Instruments MSP chữ viết tắt “MIXED SIGNAL MICROCONTROLLER” Là dòng vi điều khiển siêu tiết kiệm lượng, sử dụng nguồn thấp, khoảng điện áp nguồn cấp từ 1.8V – 3.6V MSP430 kết hợp đặc tính CPU đại tích hợp sẵn module ngoại vi Đặc biệt Chíp MSP 430 giải pháp thích hợp cho ứng dụng yêu cầu trộn tín hiệu Những đặc tính dòng MSP 430 bao gồm: • Điện áp nguồn: 1.8V – 3.6 V • Mức tiêu thụ lượng cực thấp: • Chế độ hoạt động: 270 μA 1MHz, 2,2 V • Chế độ chờ: 0.7 μA • Chế độ tắt (RAM trì): 0.1 μA • Thời gian đánh thức từ chế độ Standby nhỏ 1μs • Cấu trúc RISC-16 bit, Thời gian chu kỳ lệnh 62.5 ns • Cấu hình module Clock bản: • Tần số nội lên tới 16 MHz với hiệu chỉnh tần số +- 1% • Thạch anh 32 KHz • Tần số làm việc lên tới 16 MHz • Bộ cộng hưởng 4|Page • Nguồn tạo xung nhịp bên • Điện trở bên ngồi • Timer_A 16 bit với ghi hình, ghi so sánh độ rộng 16 bit • Timer_B 16 bit với ghi hình, ghi so sánh độ rộng 16 bit • Giao diện truyền thơng nối tiếp: • Hỗ trợ truyền thơng nối tiếp nâng cao UART, tự động dò tìm tốc độ Baud • Bộ mã hóa giải mã IrDA (Infrared Data Associatio) • Chuẩn giao tiếp động SPI • Chuẩn giao tiếp I2C • Bộ chuyển đổi ADC 10 bit, 200 ksps với điện áp tham chiếu nội, Lấy mẫu chốt Tự động quét kênh, điều khiển chuyển đổi liệu • Hai khuếch đại thuật tốn (hoạt động) định cấu hình (Đối với MSP 430x22x4) • Bảo vệ sụt áp Hình 1.2 Sơ đồ chân vi điều khiển MSP430G2553 5|Page Chip MSP430 có kích thước nhỏ go ̣n, chỉ 20 chân đố i với kiể u chân DIP Bao gồ m port IO (hay GPIO general purprose input/ output : cổng nhập xuất chung) Port : có chân từ P1.0 đến P1.7 tương ứng với chân từ 2-7 14 , 15 Port : gồm có chân P2.0 – P2.7 ứng với chân – 13 , 18,19 6|Page Bảng Chức chân của chip MSP430G2553 - Chân số chân cấp nguồn Vcc (ký hiệu chip DVcc), nguồn cho chip cấp mức 3,3V, cấp nguốn cao q mức chip hoạt động sai hay cháy chip - Chân 20 chân nối cực âm (0V), chân khơng có đặc biệt - Chân reset : Chính chân số 16 RST, bạn học PIC thấy chân reset có ký hiệu MCLR, bạn để ý thấy dấu gạch ngang có nghĩa chân tích cực mức thấp Mục đích việc reset nhằm cho chương trình chạy lại từ đầu - Port I/O: Port 1: có chân từ P1.0 đến P1.7 tương ứng với chân từ 2-7 14 , 15 7|Page - Hàm thực vẽ cột 48 điểm ảnh lên LCD: void drawColum(int x){ int i = 0; while (i < 48) { // Thực chuyển giá trị điểm ảnh thành byte để vẽ lên LCD if (drawLcd[i] != || drawLcd[i + 1] != || drawLcd[i + 2] != || drawLcd[i + 3] != || drawLcd[i + 4] != || drawLcd[i + 5] != || drawLcd[i + 6] != || drawLcd[i + 7] != 0){ char aByte = drawLcd[i] | drawLcd[i + 1] 0?heart:0; gotoXY(49,0); Write(heart); gotoXY(56,0); for (int index = 0; index < 7; index++) { LcdWrite(LCD_D, life[index]); } } • Biến kiểm tra isChange, kiểm tra giá trị điểm thay đổi vẽ lên LCD • Các biến a, b, c sử dụng để lưu giá trị điểm 3.8 Khối chương trình - Hàm setup(): Chỉ chạy lần, cài đặt LCD Nokia 5110 khởi tạo giá trị ban đầu cho rắn void setup(void) { pinMode(LED, OUTPUT); LcdInitialise(); LcdClear(); khoiTao(snake); 27 | P a g e } - Hàm loop(): vòng lặp chạy liên tục, chạy qua khối chương trình void loop(void) { LcdClear(); drawSnake(snake); xuLy(snake); drawPoint(point,heart); dieuKhien(snake); chuyenDong(snake); ketThucGame(snake); delay(deLay); } 28 | P a g e Chương Chạy thử hiệu chỉnh Một số hình ảnh chạy thử Hình 3.1 Hình chương trình chạy thử Hình 3.2 Hình chương trình chạy thử 29 | P a g e Hình 3.3 Hình chương trình chạy thử Đánh giá kết đạt Trong trình thực Đồ án I, chúng em tìm hiểu Kit Msp430G2553, cách thức hoạt động hình LCD Nokia 5110 nút chuyển bốn hướng Joystick, từ thực lập trình điều khiển Energia Đề tài “Lập trình game Snake với kit Msp430G2553” thực chức di chuyển rắn, rắn ăn mồi, cập nhật điểm mạng Nhưng bên cạnh có hạn chế, việc vẽ rắn di chuyển phức tạp khiến cho nhớ sử dụng lớn dẫn đến việc kích thước rắn có 20 đốt Giá trị đọc vào từ Joystick giải biến thiên nên khiến việc điều khiển rắn khó khăn Những khó khăn gặp phải Q trình tìm hiểu Kit Launchpad MSP430G2553, hình LCD Nokia 5110 có tài liệu Cách thưc hiển thị hình LCD Nokia 5110 phức tạp, lần phải vẽ tối thiểu 1byte tương đương với điểm ảnh, việc vẽ rắn di 30 | P a g e chuyển khó khăn Bên cạnh đó, nhớ vi điều khiển MSP430G2553 hạn chế (16KB) 31 | P a g e KẾT LUẬN Mặc dù đề tài Đồ án I khơng hồn thành mong đợi từ ban đầu, chúng em gặp phải nhiều lỗi trình thực Nhưng bên cạnh đó, chúng em học thêm nhiều điều mẻ Kit Launch Pad MSP430G2553, cách thức mà hình LCD Nokia 5110 Joystick hoạt động Cũng việc củng cố thêm kiến thức giải thuật lập trình Trong trình thực Đồ án I, chúng em nhận hướng dẫn nhiệt tình từ Thầy Trần Hải Nam, nhờ chúng em dễ dàng vấn đề tìm hiểu thực nội dung đề tài Chúng em chân thành cảm ơn Thầy 32 | P a g e TÀI LIỆU THAM KHẢO Web: http://energia.nu/Reference_Index.html http://www.msp430launchpad.com/2012/08/using-nokia-lcd-library.html http://linhkien69.vn/chu-de-nokia-5110-lcd-graphic-84x48-huong-dan-giao-tiep-vatao-anh-graphic_n57966_g723.aspx http://arduino.vn/bai-viet/930-joystick-nut-nhan-da-huong http://codientu.org/threads/6566/ 33 | P a g e ... bô ̣ ADC của Kit có giá tri ̣từ – 1024 12 | P a g e Chương II Lập trình điều khiển Lưu đồ thuật tốn chương trình Hình 2.1 Lưu đồ thuật tốn chương trình 13 | P a g e Lập trình với Energia Hình... vi xử lí, vi điều khiển Trong nội dung Đồ án I với hướng dẫn Thầy Trần Hải Nam, chúng em thực hành việc lập trình nhúng kit MSP430G2553 kết hợp với hình LCD NOKIA 5110 nút chuyển bốn hướng Joystick... khối Đề tài Đồ án I theo hướng dẫn Thầy Trần Hải Nam thực game nhỏ Kit MSP430G2553 Nhóm chúng em lực chọn thực game rắn (game snake) kết hợp với nút chuyển hướng Joystick hình hiển thị LCD Nokia

Ngày đăng: 13/01/2019, 15:03

Từ khóa liên quan

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

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

Tài liệu liên quan