nghiên cứu và thiết kế kit phát triển đa năng sử dụng vi điều khiển avr

53 744 0
nghiên cứu và thiết kế kit phát triển đa năng sử dụng vi điều khiển avr

Đ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

SỞ KHOA HỌC VÀ CÔNG NGHỆ THÀNH ĐOÀN TP. HỒ CHÍ MINH TP. HỒ CHÍ MINH CHƯƠNG TRÌNH VƯỜN ƯƠM SÁNG TẠO KHOA HỌC VÀ CÔNG NGHỆ TRẺ X * W B B Á Á O O C C Á Á O O N N G G H H I I Ệ Ệ M M T T H H U U (Đã chỉnh sửa theo góp ý của Hội đồng nghiệm thu ngày 14 tháng 04 năm 2010) Chủ nhiệm đề tài: NGUYỄN CHÍ NHÂN Cơ quan chủ trì: TRUNG TÂM PHÁT TRIỂN KHOA HỌC VÀ CÔNG NGHỆ TRẺ TP. Hồ Chí Minh, tháng 04 năm 2010 NGHIÊN CỨU VÀ THIẾT KẾ KIT PHÁT TRIỂN ĐA NĂNG SỬ DỤNG VI ĐIỀU KHIỂN AVR v M M Ụ Ụ C C L L Ụ Ụ C C Trang Xác nhận chỉnh sửa báo cáo nghiệm thu Thông tin đề tài i Giới thiệu iii Mục lục v Danh sách các chữ viết tắt vii Danh sách bảng vii Danh sách hình vii Phần 1: TỔNG QUAN VỀ ĐỀ TÀI 1 Phần 2: NỘI DUNG NGHIÊN CỨU Chương 1: HỌ VI ĐIỀU KHIỂN AVR 6 1.1. TỔNG QUAN VỀ VI ĐIỀU KHIỂN AVR 6 1.2. ĐẶC ĐIỂM CỦA VI ĐIỀU KHIỂN AVR 6 1.2.1. Kiến trúc RISC 6 1.2.2. Một số chip AVR 7 1.3. KI ẾN TRÚC CỦA VI ĐIỀU KHIỂN AVR 7 1.3.1. Hoạt động của AVR 7 1.3.2. Kiến trúc cơ bản bên trong của AVR 8 1.4. LỰA CHỌN VI ĐIỀU KHIỂN AVR 9 1.5. KIẾN TRÚC VI ĐIỀU KHIỂN ATMEGA32 10 1.5.1. Một số đặc tính của ATmega32 10 1.5.2. Tổ chức bộ nhớ trong AVR 11 1.5.3. Các thanh ghi chức năng 15 1.5.4. Hoạt động ngắt-Interrrupt 17 1.5.5. Hoạt động của bộ định thời-Timer/Counter 19 Chương 2: NGHIÊN CỨU CÁC KIT THÍ NGHIỆM 23 2.1. KIT THỰC T ẬP VI ĐIỀU KHIỂN LD1 23 2.2. EasyAVR Devlopment KIT và EasyPIC-PRO Development KIT 24 vi 2.3. KIT DE PIC 26 2.4. BỘ MÔ HÌNH THÍ NGHIỆM VI ĐIỀU KHIỂN (KDD-2007) 27 2.5. MÔ HÌNH THÍ NGHIỆM VI ĐIỀU KHIỂN HỌ AVR 28 Phần 3: KẾT QUẢ VÀ THẢO LUẬN Chương 1: BỘ KIT AVR HOÀN CHỈNH 30 1.1. GIỚI THIỆU BỘ KIT AVR 30 1.2. CÁC CÔNG CỤ LÀM VIỆC VỚI VI ĐIỀU KHIỂN AVR 30 1.3. CÁC YÊU CẦU TRƯỚC KHI SỬ DỤNG KIT 32 1.4. GHÉP NỐI GIỮ MÁY TÍNH VỚI KIT AVR 32 1.5. CÁC BÀI THỰC HÀNH ĐI KÈM THEO KIT AVR 34 Chương 2: MÔ HÌNH XE ĐUA TỰ HÀNH SỬ DỤNG VI ĐIỀU KHIỂN AVR 2.1. GIỚI THIỆU XE ĐUA TỰ HÀNH 37 2.2. NGUYÊN TẮC HOẠT ĐỘNG CỦA XE ĐUA TỰ HÀNH 38 KẾT LUẬN VÀ ĐỀ NGHỊ 40 TÀI LIỆU THAM KHẢO vii DANH SÁCH CÁC CHỮ VIẾT TẮT PCB Print Circuit Board RISC Reduced Intruction Set Computer CPU Central Processing Unit RTC Real Time Clock HLL Hight Level Language ALU Arithmetic Logic Unit PC Program Counter PWM Pulse Width Modulator LPM Load Program Memory ISR Interrupt Service Routine ISP In-System Programmer LCD Liquid Crystal Display T/C Timer/Counter MSB Most Significant Bit USART Universal Synchronous & Asynchronous serial Reveiver and Transmitter DANH SÁCH BẢNG Bảng P2_1.1: Các vector ngắt của ATmega32 12 Bảng P2_1.2: Các chế độ sleep của AVR 16 Bảng P2_1.3: Chọn chế độ hoạt động của timer 20 Bảng P2_1.4: Chọn chế độ so sánh đầu ra của timer 21 Bảng P2_1.5: Chế độ xung clock cho timer 21 Bảng P3_1.1: Bảng các phụ kiện đi kèm theo KIT 32 Bảng P3_1.2: Bảng cấu hình máy tính 32 DANH SÁCH HÌNH Hình P2_1.1: Kiến trúc cơ bản bên trong của vi điều khiển AVR 8 Hình P2_1.2: Sơ đồ khối của Atmega32 đã được đơn giản hóa 9 Hình P2_1.3: Tổ chức bộ nhớ chương trình của ATmega32 12 Hình P2_1.4: Tổ chức bộ nhớ dữ liệu 13 Hình P2_1.5: Tập thanh ghi 14 Hình P2_1.6: Bộ nhớ dữ liệu EEPROM 15 Hình P2_1.7: Sơ đồ thực hiện ngắt của AVR 17 Hình P2_2.1: Kit thực tập vi điều khi ển LD1 23 Hình P2_2.2: EasyPIC-PRO Development KIT 24 Hình P2_2.3: EasyAVR Devlopment KIT 25 Hình P2_2.4: KIT DE PIC 27 Hình P2_2.5: Bộ mô hình thí nghiệm vi điều khiển (KDD-2007) 28 Hình P2_2.6: Mô hình thí nghiệm vi điều khiển họ AVR 28 Hình P3_1.1: Bộ Kit AVR hoàn chỉnh 30 Hình P3_1.2: Đầu nối ISP 32 Hình P3_1.3: Cáp chuyển từ 6-PIN sang 10-PIN 33 viii Hình P3_1.4:Cổng COM ảo kết nối giữ máy tính với STK500 33 Hình P3_1.5: Chọn cấu hình STK500 trong CodeVision 34 Hình P3_1.6: Kết nối giữa KIT AVR với máy tính 34 Hình P3_2.1: Mô hình xe đua tự hành 37 Hình P3_2.2: Mô hình đường đua 38 iii GIỚI THIỆU Hiện nay vi điều khiển đã rất phổ biến ở Việt Nam. Việc thiết kế những Kit phát triển cho vi điều khiển là vấn đề ngày càng được quan tâm của nhiều nhóm tác giả. Vi điều khiển thường được dùng để xây dựng các hệ thống nhúng. Nó xuất hiện khá nhiều trong các ứng dụng như: các dây chuyền tự động loại nhỏ, các robot có chức năng đơn giản, trong máy giặt, ôtô, lò vi sóng, điện thoại, các máy tính bỏ túi v.v Việc nghiên cứu học tập kỹ thuật vi xử lý nói chung, các họ vi điều khiển nói riêng, trong đó điển hình là họ AVR là rất cần thiết cho sinh viên chuyên ngành kỹ thuật. Để có thể học tập, nghiên cứu, thiết kế tốt về các họ vi điều khiển rất cần các thiết bị thí nghiệm thực hành cũng như các công cụ trợ giúp thiết kế hệ vi điều khiển. Trước nhu cầu thực tế trên chúng tôi tiến hành nghiên cứu và thiết kế kit phát triển đa năng sử dụng vi điều khiển AVR với mục tiêu: - Nhằm phục vụ hiệu quả cho việc giảng dạy ở trường đại học đồng thời giúp cho sinh viên có cơ hội vừa học vừa thực hành môn học Vi Điều Khiển (V ĐK). - Tạo cơ hội khám phá và học hỏi cho các sinh viên, giúp sinh viên nắm bắt bài học một cách hiệu quả nhất. - Mong ước đem đến cho sinh viên một kiến thức vững chắc có thể sử dụng trong công việc hoặc trong quá trình nghiên cứu sau này. iv INTRODUCTION Currently microcontroller was very popular in Vietnam. The design development KIT for the microcontroller is a matter of growing concern of many authors. Microcontroller is often used to build embedded systems. It appears quite a lot of applications such as small automated production lines , the robot has a simple function, in washing machines, cars, microwave, phone, pocket PC, etc. The study engineering microprocessor in general, microcontroller families in particular, where typically AVR is necessary for students whose major related to engineering. To be able to study, research, and have good design of the microcontroller, we need laboratory equipment as well as practical tools to support design microcontroller. Based on actual demand, we conduct research and design development Kit which use AVR microcontroller with the aim of: - In order for effective teaching at the university also helps students with learning opportunities both practical subjects microcontroller . - Opportunity to explore and learn for students, help students grasp the lesson most effectively. - Wish to give students a solid knowledge can use at work or during the study later. 1 Phần 1: TỔNG QUAN VỀ ĐỀ TÀI 1.Tổng quan tình hình nghiên cứu Hầu hết các sản phẩm điện tử thương mại và công nghiệp trên Thế giới hiện nay đều ứng dụng vi điều khiển có kiến trúc RISC. Ở Việt Nam, nhu cầu nghiên cứu, đào tạo về vi điều khiển RISC cũng đang được quan tâm trong thời gian gần đây. Các trường đại học, trong đó các trường đầu ngành như Bách Khoa, Khoa học Tự nhiên, và mộ t số trường kỹ thuật khác đang có khuynh hướng thành lập các phòng thí nghiệm về hệ thống nhúng mà trong đó một phần tập trung vào nghiên cứu sử dụng và lập trình ứng dụng cho vi điều khiển có kiến trúc RISC. Chẳng hạn : - Khoa Điện-Điện tử, Trường Đại học Bách Khoa-TP.HCM xây dựng dự án phòng thí nghiệm hệ thống nhúng và thiết kế vi mạch. Trong đó một phần dự án sẽ trang b ị các thiết bị và kit thí nghiệm về các họ vi điều khiển PIC và ARM. - Trường Đại học Khoa học Tự nhiên cũng đã thành lập Phòng thí nghiệm Thiết kế vi mạch và hệ thống nhúng cũng đã trang bị một số Kit H8SX (Renesas), ARM nhằm phục vụ cho nhu cầu nghiên cứu của cán bộ và sinh viên năm cuối. Bên cạnh đó Phòng thí nghiệm Selab (thuộc Khoa công Nghệ thông tin) cũng có một nhóm chuyên nghiên cứu lập trình cho vi điề u khiển H8SX (Renesas), ARM, PIC. - Trung tâm Nghiên cứu và Đào tạo Thiết kế Vi mạch (ICDREC) thuộc Khu công nghệ Phần mềm (ITP), Đại học Quốc gia-TP.HCM là trung tâm đầu tiên của Việt Nam nghiên cứu, thiết kế chế tạo lõi IP RISC 8 bit. Ngoài việc thiết kế ra chính chip vi điều khiển RISC, một hướng đi cũng được ICDREC rất quan tâm là xây dựng các ứng dụng trên RISC 8/32 bit. - Dự án sản xuất thử nghiệm các bộ Kit Vi điều khiển phục vụ cho giảng dạy tại các Trường Đại học, Cao đẳng chuyên ngành Cơ điện tử, Tự động hoá, . . . Dự án này đang được thực hiện do TS. Trần Thu Hà Trường Đại học Sư Phạm Kỹ Thuật TP.HCM chủ trì. - Các trung tâm đào tạo như Trung tâm Điện tử và Máy tính thuộc Trường Đại học Khoa học Tự nhiên, Trung tâm đào tạo Công nghệ thông tin thuộc Sở Bưu chính Viễn thông, . . . cũng đề u có các khoá giảng dạy về vi điều khiển. 2 - Theo điều tra sơ bộ của chúng tôi, nhiều trường đại học đào tạo theo hướng điện tử, kỹ thuật và một số trung tâm đào tạo đang có nhu cầu xây dựng phòng thí nghiệm và các khoá đào tạo về vi điều khiển. Điều này xuất phát từ nhu cầu ngày càng tăng của xã hội. Ý tưởng của nhóm nghiên cứu là thiết kế kit phát triển đa năng hỗ tr ợ việc học tập, nghiên cứu, thiết kế ứng dụng vi xử lý nói chung, và các họ vi điều khiển nói riêng đạt hiệu quả cao. Hoàn chỉnh các tài liệu hướng dẫn thực hành cho môn học vi xử lý, vi điều khiển, đây là công cụ hữu hiệu để nghiên cứu, giảng dạy chuyên ngành về vi điều khiển và đồng thời hỗ trợ tốt cho sinh viên trong quá trình học tập, nghiên cứu về các họ vi điều khiển nói chung, họ vi điều khiển AVR nói riêng. Kết quả đạt được từ công trình nghiên cứu này có ý nghĩa thực tiễn cao trong việc học tập, nghiên cứu về lĩnh vực vi điều khiển. 2. Nội dung thực hiện Trong đề tài này chúng tôi thực hiện một số nội dung nghiên cứu như sau: 2.1. Tìm hiểu kiến trúc, tập lệnh và các công cụ dùng của họ vi điều khiển AVR. Bên c ạnh đó nghiên cứu các Kit thí nghiệm giảng dạy thông dụng trên thị trường. Phân tích thiết kế phần cứng, phần mềm và các bài thí nghiệm. 2.2. Giao tiếp với AVR - Bằng phần cứng: kết nối truyền thông với vi điều khiển AVR thông qua cổng RS-232. - Bằng phần mềm: lập trình nhúng cho vi điều khiển (sử dụng ngôn ngữ lập trình truyền thống như: hợp ngữ hay lập trình C). 2.3. Thiết k ế kit phát triển đa năng và các môđun ứng dụng trên vi điều khiển AVR - Môđun chính: Đơn vị xử lý trung tâm (CENTRAL PROCESSING UNIT) - Môđun giao tiếp vào/ra (I/O) gồm: các port của vi điều khiển Atmega32, màn hình hiển thị-LCD 16x2, Led đơn, Led 7 đoạn, công tắc gạt DIP 8x2, và ma trận LED 5x7. - Môđun giao tiếp theo chuẩn UART - Môđun điều khiển động cơ DC và động cơ bước (STEP MOTOR) - Môđun giao tiếp theo chuẩn I 2 C - Môđun bàn phím (Key pad) - Môđun cấp nguồn - Môđun debugger - Môđun ISP Programer 3 2.4. Viết chương trình kiểm tra Kit. 2.5. Viết chương trình thí nghiệm mẫu. 2.6. Xây dựng Tài liệu hướng dẫn thực hành trên bộ KIT thiết kế cho sinh viên đại học. Dựa trên bộ KIT đã thiết kế chúng tôi sẽ đi xây dựng các tài liệu hướng dẫn thực hành theo từng môđun thực hành như sau: - Môđun 1 : GIỚI THIỆU KIT AVR VÀ TRÌNH BIÊN DỊCH CODEVISIONAVR. Trong môđun này chúng tôi dự kiến giới thiệu tổng quát các thành phần và cấu trúc của KIT thực tập là KIT chính mà sinh viên sẽ thực tập trong suốt quá trình học môn này. Giới thiệu vi điều khiển AVR, ngôn ngữ lập trình nhúng C, và sử dụng các trình mô phỏng, biên dịch trên vi điều khiển AVR. Sử dụng phần mềm CodeVisionAVR để soạn thảo, tổ chức một project cho bất kỳ chip họ AVR nào. - Môđ un 2: ĐIỀU KHIỂN VÀO RA (I/O) VỚI LED ĐƠN Trong môđun này chúng tôi dự kiến xây dựng bài thực hành liên quan đến những nội dung như: Cách cấu hình khởi tạo cho CPU hoạt động, cấu hình Port, đọc dữ liệu và xuất dữ liệu ra Port, điều khiển các LED đơn trên KIT theo ý muốn thông qua các port vào/ra của AVR. ‐ Môđun 3 : ĐIỀU KHIỂN LED 7 ĐOẠN Trong môđun này chúng tôi dự kiến xây dựng bài thực hành liên quan đến những nội dung như: cấu hình được các thanh ghi của một port dữ liệu, khởi tạo được CPU hoạt động với cấu hình tối thiểu nhất, phương pháp quét LED 7 đoạn và điều khiển các LED 7 đoạn trên KIT theo ý muốn thông qua các port vào/ra của AVR. - Môđun 4 : ĐIỀU KHIỂN LED MA TRẬN 5x7 Trong môđun này chúng tôi dự kiến xây dựng bài thực hành liên quan đến những nội dung như: giải mã và phương pháp hiển thị trên LED ma trận, điều khiển các LED ma trận trên KIT theo ý muốn thông qua các port vào/ra của AVR. - Môđun 5 : HIỂN THỊ LCD 16x2 Trong môđun này chúng tôi dự kiến xây dựng bài thực hành liên quan đến những nội dung như: giao tiếp được với LCD 16x2 để có thể ứng dụng cho những mục đích hiển thị cụ thể. Từ module LCD 16x2 có thể mở rộng sang những module tương tự, ví dụ như module LCD 16x4, 40x2, … [...]... Clock(RTC) và EEPROM 2.7 Phát triển ứng dụng: dựa trên những môđun đã thiết kế ở trên chúng tôi hướng đến vi c phát triển ứng dụng trên vi điều khiển AVR đó là thiết kế bộ điều khiển sử dụng AVR cho xe đua tự hành Bên cạnh đó, chúng tôi thiết kế bộ tài liệu hướng dẫn lập trình cho xe đua tự vận hành Ứng dụng mô hình xe này để giảng dạy cho sinh vi n về vi điều khiển và lập trình nhúng 4 Vi c thiết kế kit phát. .. phát triển đa năng này có thể xem như là một công cụ hữu hiệu hỗ trợ cho thiết kế ứng dụng nhúng trên vi điều khiển Để phát triển các ứng dụng cụ thể thì còn phụ thuộc rất nhiều vào kinh nghiệm làm vi c của các kỹ sư thiết kế Do đó chúng tôi chọn cách tiếp cận sát thực tế nhất để thiết kế kit phù hợp với vi c học tập, nghiên cứu, thiết kế ứng dụng vi xử lý nói chung, và các họ vi điều khiển nói riêng Kit. .. vi điều khiển nói riêng Kit được thiết kế theo cấu trúc mở cho phép mở rộng thêm nhiều ứng dụng khác nữa mà không phải thiết kế lại khối CPU 5 Phần 2: NỘI DUNG NGHIÊN CỨU Chương 1: HỌ VI ĐIỀU KHIỂN AVR 1.1 TỔNG QUAN VỀ VI ĐIỀU KHIỂN AVR Vi điều khiển AVR thuộc họ vi điều khiển do Atmel sản xuất (Atmel cũng là nhà sản xuất các vi điều khiển họ 89C51) Đây là họ vi điều khiển được chế tạo theo kiến trúc... triệu đồng /KIT Giá của từng môđun rời từ: 400 ngàn đồng đến 700 ngàn đồng/môđun 2.3 KIT DE PIC KIT DE PIC do nhóm tác giả thuộc Trung tâm Nghiên cứu & Đào tạo Thiết kế Vi mạch (ICDREC) thiết kế KIT này sử dụng vi điều khiển PIC và ngôn ngữ lập trình C để vi t code và nạp cho vi điều khiển Đây là một thiết bị tiện ích giúp cho người nghiên cứu nhanh chóng nắm bất được kiến thức về kiến trúc và tập lệnh... - Đầu nối ICD2 và đầu nối cáp nguồn Hình P2_2.4: KIT DE PIC Nhận xét chung: KIT DE PIC đã được tích hợp với một số môđun thông dụng và những port có sẵn giúp cho người thiết kế có thể phát triển ứng dụng được thuận lợi Kit này thích hợp cho vi c giảng dạy về vi điều khiển và phát triển ứng dụng dựa trên vi điều khiển PIC Kit này đã được thương mại hoá 2.4 BỘ MÔ HÌNH THÍ NGHIỆM VI ĐIỀU KHIỂN (KDD-2007)... khiển 89V52RB2 Sử dụng ngôn ngữ lập trình ASM để vi t code và nạp cho vi điều khiển Tuy nhiên Kit này cũng còn thiếu một số môđun cần thiết như: LCD, điều khiển động cơ DC và động cơ bước để giúp cho người học có thể phát triển các ứng dụng thông qua các môđun này 2.2 EasyAVR Devlopment KIT và EasyPIC-PRO Development KIT KIT EasyAVR Devlopment và EasyPIC-PRO Development KIT được thiết kế bởi nhóm tác... -Tính năng kỹ thuật: sử dụng nguồn điện 220V qua hệ thống cách ly và cung cấp ổn định cho các bài thí nghiệm 27 Hình P2_2.5: Bộ mô hình thí nghiệm vi điều khiển (KDD-2007) 2.5 MÔ HÌNH THÍ NGHIỆM VI ĐIỀU KHIỂN HỌ AVR Mô hình thí nghiệm vi điều khiển họ AVR do Trung tâm đào tạo Điện tử - Tự động hóa – Cơ khí DKS thiết kế Hình P2_2.6: Mô hình thí nghiệm vi điều khiển họ AVR Mô hình thiết kế cho dòng vi điều. .. phải phát triển một cấu trúc đặc biệt cho ngôn ngữ C để giảm thiểu sự chênh lệch kích thước mã đã nói trên Và kết quả là họ vi điều khiển AVR ra đời với vi c làm giảm kích thước đoạn mã khi biên dịch và thêm vào đó là thực hiện lệnh đúng đơn chu kỳ máy với 32 thanh ghi tích lũy và đạt tốc độ nhanh hơn các họ vi điều khiển khác từ 4 đến 12 lần 1.2 ĐẶC ĐIỂM CỦA VI ĐIỀU KHIỂN AVR Vi điều khiển AVR được thiết. .. nghiệm vi điều khiển (KDD-2007) được thiết kế bởi nhóm nghiên cứu thuộc trường Đại học Sư phạm Kỹ thuật TP.HCM -Cấu tạo của bộ thí nghiệm vi điều khiển này gồm: môđun chính là khối vi điều khiển AT98C51 cùng các chip ngoại vi hỗ trợ cho hoạt động hiệu quả của vi điều khiển Kit thí nghiệm bao gồm 14 khối chức năng khác nhau giúp cho sinh vi n các ngành kỹ thuật có thể thực hiện các thao tác điều khiển. .. ngắt tương ứng được thực thi .Và khi bit I trong thanh ghi trạng thái cùng với bit OCIEn có giá trị là 1 thì ngắt so sánh của timer được thực thi 22 Phần 2: NỘI DUNG NGHIÊN CỨU Chương 2: NGHIÊN CỨU CÁC KIT THÍ NGHIỆM Trước khi thiết kế KIT phát triển chúng tôi tiến hành nghiên cứu các Kit thí nghiệm giảng dạy thông dụng trên thị trường Phân tích thiết kế phần cứng, phần mềm và các bài thí nghiệm Cụ thể . Clock(RTC) và EEPROM. 2.7. Phát triển ứng dụng: dựa trên những môđun đã thiết kế ở trên chúng tôi hướng đến vi c phát triển ứng dụng trên vi điều khiển AVR đó là thiết kế bộ điều khiển sử dụng AVR. điều khiển. Điều này xuất phát từ nhu cầu ngày càng tăng của xã hội. Ý tưởng của nhóm nghiên cứu là thiết kế kit phát triển đa năng hỗ tr ợ vi c học tập, nghiên cứu, thiết kế ứng dụng vi xử. thiết bị thí nghiệm thực hành cũng như các công cụ trợ giúp thiết kế hệ vi điều khiển. Trước nhu cầu thực tế trên chúng tôi tiến hành nghiên cứu và thiết kế kit phát triển đa năng sử dụng vi

Ngày đăng: 07/02/2015, 23:47

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