Tài liệu Hướng dẫn sử dụng kit 8051

  • Số trang: 110 |
  • Loại file: PDF |
  • Lượt xem: 141 |
  • Lượt tải: 0
nguyen-thanhbinh

Đã đăng 10809 tài liệu

Mô tả:

HƯỚNG DẪN SỬ DỤNG KIT 8051 Mục lục Giới thiệu kit thí nghiệm BK89IT ...................................................................................... 4 Mô hình lập trình C trong vi điều khiển ............................................................................. 5 Bài 1 : Hướng dẫn cài đặt Keil C và Flash Magic.......................................................... 6 1.1 Cài đặt Keil C ........................................................................................................... 6 1.2 Cài đặt Flash Magic ................................................................................................ 11 1.3 Cấu hình cho Flash Magic ...................................................................................... 16 Bài 2 : Truy xuất Port I/O............................................................................................. 22 2.1 Tạo project trên Keil C ........................................................................................... 22 2.2 Viết chương trình đơn giản ..................................................................................... 32 2.2.1 Kết nối phần cứng............................................................................................ 32 2.2.2 Viết chương trình ............................................................................................. 33 2.2.3 Nạp chương trình ............................................................................................. 34 2.2.4 Các lỗi xảy ra khi nạp chương trình................................................................. 35 Bài 3 : Điều khiển đơn giản Led 7 đoạn....................................................................... 38 3.1 Kết nối phần cứng:.................................................................................................. 38 3.2 Viết chương trình .................................................................................................... 39 3.2.1 Hàm init_main()............................................................................................... 39 3.2.2 Hàm main() ...................................................................................................... 39 3.3 Một số lỗi lập trình quan trọng ............................................................................... 41 Bài 4 : Ngắt Timer........................................................................................................ 42 4.1 Khai báo ngắt timer................................................................................................. 42 4.2 Viết chương trình .................................................................................................... 43 4.2.1 Hàm init_timer1() ............................................................................................ 43 4.2.2 Hàm start_timer1()........................................................................................... 43 4.2.3 Hàm timer1_isr().............................................................................................. 43 4.2.4 Hàm delay_ms(unsigned int duration)............................................................. 44 4.2.5 Hàm stop_timer1()........................................................................................... 44 Bài 5 : Dùng ngắt timer viết ứng dụng LED RIVER ................................................... 45 5.1 Kết nối phần cứng................................................................................................... 45 5.2 Viết chương trình .................................................................................................... 45 Bài 6 : Chống rung cho phím ....................................................................................... 47 6.1 Nguyên lý chống rung............................................................................................. 47 6.2 Kết nối phần cứng................................................................................................... 48 6.3 Viết chương trình .................................................................................................... 49 6.3.1 Hàm initKey() .................................................................................................. 49 6.3.2 Hàm getKey() .................................................................................................. 49 Bài 7 : Quét led điều khiển Led 7 đoạn ........................................................................ 51 7.1 Nguyên lý quét led 7 đoạn ...................................................................................... 51 7.2 Kết nối phần cứng................................................................................................... 52 7.3 Viết chương trình .................................................................................................... 52 7.3.1 Hàm init_led7()................................................................................................ 52 7.3.2 Hàm clear_led7() ............................................................................................. 53 7.3.3 Hàm set_position(unsigned int pos) ................................................................ 53 7.3.4 Hàm get_position() .......................................................................................... 53 BKIT HARDWARE CLUB www.bkit4u.com 1 HƯỚNG DẪN SỬ DỤNG KIT 8051 7.3.5 Hàm put_Number(unsigned int num) .............................................................. 54 7.3.6 Hàm put_string(char strNum[]) ....................................................................... 54 7.3.7 Hàm scan_led7................................................................................................. 54 Bài 8 : Điều khiển Ma trận led ..................................................................................... 56 8.1 Nguyên lý điều khiển ma trận led........................................................................... 56 8.2 Kết nối phần cứng................................................................................................... 56 8.3 Viết chương trình .................................................................................................... 56 8.3.1 Hàm init_led_matrix() ..................................................................................... 57 8.3.2 Hàm scan_led_matrix().................................................................................... 57 8.3.3 Hàm update_display_led_matrix() .................................................................. 57 Bài 9 : Chạy chữ trên Ma trận led ................................................................................ 59 9.1 Nguyên lý chạy chữ trên ma trận led ...................................................................... 59 9.2 Kết nối phần cứng................................................................................................... 60 9.3 Viết chương trình .................................................................................................... 60 9.3.1 Hàm set_message(char strMsg[]) .................................................................... 60 9.3.2 Hàm main() ...................................................................................................... 61 Bài 10 : Ngắt ngoài..................................................................................................... 62 10.1 Nguyên lý điều khiển ngắt ngoài .......................................................................... 62 10.2 Kết nối phần cứng................................................................................................. 62 10.3 Viết chương trình .................................................................................................. 62 10.3.1 Hàm init_ext_int0()........................................................................................ 62 10.3.2 Hàm init_ext_int1()........................................................................................ 62 10.3.3 Hàm ext0_isr() ............................................................................................... 63 10.3.4 Hàm ext1_isr() ............................................................................................... 63 Bài 11 : Điều khiển encoder ....................................................................................... 64 11.1 Nguyên lý điều khiển encoder .............................................................................. 64 11.2 Kết nối phần cứng................................................................................................. 65 11.3 Viết chương trình .................................................................................................. 65 Bài 12 : Giao tiếp UART............................................................................................ 67 12.1 Nguyên lý giao tiếp UART................................................................................... 67 12.2 Giao tiếp UART với máy tính .............................................................................. 68 12.3 Viết chương trình .................................................................................................. 69 12.3.1 Thanh ghi điều khiển truyền nhận nối tiếp .................................................... 69 12.3.2 Dùng Timer1 tạo Baud rate ........................................................................... 71 12.3.3 Chương trình truyền nhận UART trên 8051.................................................. 71 12.4 Kiểm tra truyền nhận UART ................................................................................ 74 12.5 Xây dựng chương trình trên PC ............................................................................ 74 12.5.1 Load các cổng COM của PC lên ComboBox ................................................ 78 12.5.2 Kết nối cổng với cổng COM.......................................................................... 79 12.5.3 Gửi dữ liệu ..................................................................................................... 80 12.5.4 Nhận dữ liệu................................................................................................... 81 Bài 13 : Giao tiếp PS2 với bàn phím .......................................................................... 85 13.1 Nguyên lý giao tiếp PS2 ....................................................................................... 85 13.2 Kết nối phần cứng................................................................................................. 86 13.3 Viết chương trình .................................................................................................. 87 Bài 14 : PWM điều khiển motor................................................................................. 88 BKIT HARDWARE CLUB www.bkit4u.com 2 HƯỚNG DẪN SỬ DỤNG KIT 8051 14.1 Khái niệm PWM ................................................................................................... 88 14.2 Lập trình PWM trên 89V51 .................................................................................. 89 Bài 15 : Giao tiếp LCD character ............................................................................... 90 15.1 Chức năng các chân của LCD............................................................................... 90 15.2 Kết nối màn hình LCD.......................................................................................... 91 15.3 Các vùng nhớ của LCD......................................................................................... 91 15.3.1 Display Data Ram (DDRAM) ....................................................................... 91 15.3.2 Character Generator Ram (CGRAM) ............................................................ 91 15.3.3 Bộ nhớ CGROM ............................................................................................ 92 15.4 Các lệnh cơ bản của LCD ..................................................................................... 93 15.5 Kết nối LCD với vi điều khiển ............................................................................. 94 15.6 Khởi tạo LCD ....................................................................................................... 95 15.7 Kết nối phần cứng................................................................................................. 97 15.8 Viết chương trình .................................................................................................. 98 15.8.1 Các hàm cơ bản.............................................................................................. 98 15.8.2 Khởi tạo LCD chế độ 4 bit............................................................................. 98 15.8.3 Xoá màn hình................................................................................................. 99 15.8.4 Thiết lập vị trí con trỏ .................................................................................... 99 15.8.5 In kí tự ra màn hình..................................................................................... 100 Bài 16 : Giao tiếp I2C – DS1307.............................................................................. 101 16.1 Các đặc điểm của DS1307 .................................................................................. 101 16.2 Nguyên lý hoạt động........................................................................................... 101 16.3 Các tín hiệu Input và Output............................................................................... 102 16.4 RTC và sơ đồ địa chỉ Ram.................................................................................. 103 16.5 Thông tin thời gian và lịch.................................................................................. 103 16.6 Thanh ghi điều khiển (Control Register) ............................................................ 104 16.7 Bus dữ liệu nối tiếp............................................................................................. 104 16.8 Giao thức I2C và RTC DS1307 ......................................................................... 105 16.8.1 Kết nối phần cứng........................................................................................ 105 16.8.2 Start và Stop truyền dữ liệu ......................................................................... 105 16.8.3 Truyền 1 byte dữ liệu................................................................................... 107 16.8.4 Giao tiếp với DS1307 .................................................................................. 108 BKIT HARDWARE CLUB www.bkit4u.com 3 HƯỚNG DẪN SỬ DỤNG KIT 8051 Giới thiệu kit thí nghiệm BK89IT Các chức năng của board thí nghiệm BK89IT : v 8 nút nhấn : nối với P3. v 8 led 7 đoạn : hỗ trợ quét led, P0 để gửi dữ liệu và P2 để chọn led. v Led ma trận 2 màu : P0 gửi dữ liệu mà đỏ, P2 gửi dữ liệu xanh, P1 để chọn cột hiển thị. v Giao tiếp với bàn phím PS2. v Giao tiếp COM v 4 chân dùng để kết nối encoder. v Cấu hình bằng switch : Switch 1 cho Port 1, 2 cho Port 3, 3 cho led ma trận và 4 cho led 7 đoạn. v Cấp nguồn ngoài hoặc USB. v Mạch nạp onboard. BKIT HARDWARE CLUB www.bkit4u.com 4 HƯỚNG DẪN SỬ DỤNG KIT 8051 Mô hình lập trình C trong vi điều khiển timer.h #ifndef __TIMER_H_ #define __TIMER_H_ #include "LED7\led7.h" extern int counter0; void init_timer0(); void init_timer1(); ............... #endif main.c #include "TIMER\timer.h" #include "LED7\led7.h" #include void main() { init_main(); init_timer0(); .................... while1(){} } led7.h timer.c #include "timer.h" int counter0; int counter1; void init_tim er0(); { IE |= 0x20; TR0 = 1; .......................... } void init_tim er1() { .......................... } void private_function() { .......................... } led7.c #ifndef __LED7_H_ #define __LED7_H_ #include "led7.h" unsigned char led7_buff[8]; void init_led7(); void scan_led7(); ............... void init_led7(); { P0 = 0x00; T2 = 0x00; .......................... } void scan_led7() { .......................... } void private_function() { .......................... } #endif Để có thể tổ chức tốt chương trình, thông thường mỗi module ta sẽ chia làm 2 file: v File .h : Khai các hàm và extern các biến toàn cục. v File .c : Hiện thực các hàm được khai báo trong file .h. Khi muốn sử dụng module này, ta chỉ cần include file .h là có thể gọi được các hàm được khai báo trong file .h. BKIT HARDWARE CLUB www.bkit4u.com 5 HƯỚNG DẪN SỬ DỤNG KIT 8051 Bài 1 : Hướng dẫn cài đặt Keil C và Flash Magic Mục đích : Cài đặt Keil C để soạn thảo chương trình. Cài đặt Flash Magic để nạp chương trình. Cấu hình cho Flash Magic. 1.1 Cài đặt Keil C Keil C là chương trình hỗ trợ khá đầy đủ để người dùng soạn thảo chương trình dành cho các vi điều khiển thuộc họ 8051. Để cài đặt bạn tiến hành theo các bước như sau: Bước 1 : Click vào file c51v815.exe trong CD đi kèm, màn hình sau sẽ xuất hiện BKIT HARDWARE CLUB www.bkit4u.com 6 HƯỚNG DẪN SỬ DỤNG KIT 8051 Bước 2 : Chọn Next, màn hình sau sẽ xuất hiện. Bước 3 : Click chọn I agree và chọn Next, màn hình sau sẽ xuất hiện. BKIT HARDWARE CLUB www.bkit4u.com 7 HƯỚNG DẪN SỬ DỤNG KIT 8051 Bước 4 : Bạn có thể để mặc định và chọn Next. Tuy nhiên bạn có thể thay đổi Destinatioin Folder, là thư mục chứa 1 số thư viện hỗ trợ trong việc lập trình trên Keil C. Màn hình sau xuất hiện để bạn điền 1 số thông tin cá nhân. BKIT HARDWARE CLUB www.bkit4u.com 8 HƯỚNG DẪN SỬ DỤNG KIT 8051 Bước 5 : Chọn Next để bắt đầu cài đặt Bước 6 : Khi cài đặt xong, màn hình sau xuất hiện và bạn nhấn Finish để hoàn tất quá trình cài đặt. BKIT HARDWARE CLUB www.bkit4u.com 9 HƯỚNG DẪN SỬ DỤNG KIT 8051 Bước 7 : Trang web sau hiển thị để giới thiệu về KeilC phiên bản này. Các bước cấu hình cho Keil C để dịch chương trình ra file Hex sẽ được trình bày trong bài thực hành tiếp theo. BKIT HARDWARE CLUB www.bkit4u.com 10 HƯỚNG DẪN SỬ DỤNG KIT 8051 1.2 Cài đặt Flash Magic Đây là chương trình dùng để nạp file Hex cho 89V51. Để cài đặt bạn làm theo các bước sau : Bước 1 : Double click vào file FlashMagic.exe, màn hình sau sẽ xuất hiện Bước 2 : Chọn Next BKIT HARDWARE CLUB www.bkit4u.com 11 HƯỚNG DẪN SỬ DỤNG KIT 8051 Bước 3 : Click chọn I accept và chọn Next BKIT HARDWARE CLUB www.bkit4u.com 12 HƯỚNG DẪN SỬ DỤNG KIT 8051 Bước 4 : Bạn có thể để mặc định và chọn Next, hoặc thay đổi đường dẫn của thư mực cài đặt nếu bạn muốn. Khi click Next màn hình sau sẽ xuất hiện. Bước 5 : Để mặc định và chọn Next BKIT HARDWARE CLUB www.bkit4u.com 13 HƯỚNG DẪN SỬ DỤNG KIT 8051 Bước 6 : Chọn Next. BKIT HARDWARE CLUB www.bkit4u.com 14 HƯỚNG DẪN SỬ DỤNG KIT 8051 Bước 7 : Chọn Install để cài đặt. Bước 8 : Khi cài đặt xong màn hình sau sẽ xuất hiện, bạn nhấn Finish để kết thúc cài đặt. BKIT HARDWARE CLUB www.bkit4u.com 15 HƯỚNG DẪN SỬ DỤNG KIT 8051 1.3 Cấu hình cho Flash Magic Bước 1 : Khởi động Flash Magic từ màn hình Desktop (hoặc vào Start\Program Files\Flash Magic và chọn Flash Magic), màn hình sau sẽ xuất hiện BKIT HARDWARE CLUB www.bkit4u.com 16 HƯỚNG DẪN SỬ DỤNG KIT 8051 Bước 2 : Bạn chọn Baud Rate là 9600, Device là chip tương ứng mà bạn dùng. Check chọn Verify after programming và Erase blocks used by Hex File. BKIT HARDWARE CLUB www.bkit4u.com 17 HƯỚNG DẪN SỬ DỤNG KIT 8051 Bước 3 : Chọn menu Option và chọn Advance Option, màn hình sau sẽ xuất hiện : BKIT HARDWARE CLUB www.bkit4u.com 18 HƯỚNG DẪN SỬ DỤNG KIT 8051 Bước 4 : Chọn qua tab Hardware Config và check chọn Assert DTR and RTS while COM Port open. Nhấn OK để đóng cửa số này lại. Bước 5 : Xem cổng COM đang là cổng nào. Bạn thu nhỏ Flash Magic lại, trên màn hình Desktop, từ biểu tượng My Computer, click phải chuột và chọn Manage. BKIT HARDWARE CLUB www.bkit4u.com 19 HƯỚNG DẪN SỬ DỤNG KIT 8051 Bước 6 : Màn hình sau xuất hiện, bạn chọn Device Manager. Bước 7 : Cắm dây cổng COM nếu bạn đang dùng USB to COM, mở rộng Ports (COM &LPT), bạn sẽ biết được tên cổng COM đang dùng (trong ví dụ này là COM 9). BKIT HARDWARE CLUB www.bkit4u.com 20
- Xem thêm -