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

  • Số trang: 109 |
  • Loại file: PDF |
  • Lượt xem: 189 |
  • Lượt tải: 1
tranvantruong

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

Mô tả:

hưỡng dẫn sử dụng kit_89
Hướng dẫn sử dụng Kit 89 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 ................................................................................................ 10 1.3 Cấu hình cho Flash Magic ...................................................................................... 14 Bài 2 : Truy xuất Port I/O ............................................................................................. 19 2.1 Tạo project trên Keil C ........................................................................................... 19 2.2 Viết chương trình đơn giản ..................................................................................... 28 2.2.1 Kết nối phần cứng ............................................................................................ 28 2.2.2 Viết chương trình ............................................................................................. 29 2.2.3 Kết nối với mạch nạp ....................................................................................... 30 2.2.4 Nạp chương trình ............................................................................................. 33 2.2.5 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 BKIT HARDWARE CLUB – www.bkit4u.com 1 Hướng dẫn sử dụng Kit 89 7.3.4 Hàm get_position() .......................................................................................... 53 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................................................................................. 73 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 BKIT HARDWARE CLUB – www.bkit4u.com 2 Hướng dẫn sử dụng Kit 89 Bài 14 : PWM điều khiển motor ................................................................................. 88 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 ................................................................................................. 96 15.8 Viết chương trình .................................................................................................. 97 15.8.1 Các hàm cơ bản .............................................................................................. 97 15.8.2 Khởi tạo LCD chế độ 4 bit ............................................................................. 97 15.8.3 Xoá màn hình ................................................................................................. 98 15.8.4 Thiết lập vị trí con trỏ .................................................................................... 98 15.8.5 In kí tự ra màn hình ....................................................................................... 99 Bài 16 : Giao tiếp I2C – DS1307 .............................................................................. 100 16.1 Các đặc điểm của DS1307 .................................................................................. 100 16.2 Nguyên lý hoạt động ........................................................................................... 100 16.3 Các tín hiệu Input và Output ............................................................................... 101 16.4 RTC và sơ đồ địa chỉ Ram .................................................................................. 102 16.5 Thông tin thời gian và lịch .................................................................................. 102 16.6 Thanh ghi điều khiển (Control Register) ............................................................ 103 16.7 Bus dữ liệu nối tiếp. ............................................................................................ 103 16.8 Giao thức I2C và RTC DS1307 ......................................................................... 104 16.8.1 Kết nối phần cứng ........................................................................................ 104 16.8.2 Start và Stop truyền dữ liệu ......................................................................... 104 16.8.3 Truyền 1 byte dữ liệu ................................................................................... 106 16.8.4 Giao tiếp với DS1307 .................................................................................. 107 BKIT HARDWARE CLUB – www.bkit4u.com 3 Hướng dẫn sử dụng Kit 89 Giới thiệu kit thí nghiệm BK89IT Các chức năng của board thí nghiệm BK89IT : ™ 8 nút nhấn : nối với P3. ™ 8 led 7 đoạn : hỗ trợ quét led, P0 để gửi dữ liệu và P2 để chọn led. ™ 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ị. ™ Giao tiếp với bàn phím PS2. ™ Giao tiếp COM ™ 4 chân dùng để kết nối encoder. ™ 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. ™ Cấp nguồn ngoài hoặc USB. ™ Mạch nạp onboard. Các chức năng mở rộng : ™ LCD kí tự 16x2 chế độ 4 bit. ™ I2C giao tiếp với RealTime Clock DS1307. ™ PWM điều khiển động cơ. BKIT HARDWARE CLUB – www.bkit4u.com 4 Hướng dẫn sử dụng Kit 89 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_timer0(); { IE |= 0x20; TR0 = 1; .......................... } void init_timer1() { .......................... } 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: ™ File .h : Khai các hàm và extern các biến toàn cục. ™ 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 89 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 89 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 89 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. Bước 5 : Chọn Next để bắt đầu cài đặt BKIT HARDWARE CLUB – www.bkit4u.com 8 Hướng dẫn sử dụng Kit 89 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. 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 9 Hướng dẫn sử dụng Kit 89 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 10 Hướng dẫn sử dụng Kit 89 Bước 3 : Click chọn I accept và chọn Next 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. BKIT HARDWARE CLUB – www.bkit4u.com 11 Hướng dẫn sử dụng Kit 89 Bước 5 : Để mặc định và chọn Next Bước 6 : Chọn Next. BKIT HARDWARE CLUB – www.bkit4u.com 12 Hướng dẫn sử dụng Kit 89 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 13 Hướng dẫn sử dụng Kit 89 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 14 Hướng dẫn sử dụng Kit 89 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. 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 15 Hướng dẫn sử dụng Kit 89 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 16 Hướng dẫn sử dụng Kit 89 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 17 Hướng dẫn sử dụng Kit 89 Bước 9 : Kích hoạt lại Flash Magic và chọn cổng COM tương ứng. BKIT HARDWARE CLUB – www.bkit4u.com 18 Hướng dẫn sử dụng Kit 89 Bài 2 : Truy xuất Port I/O Mục đích: Tạo project đơn giản trong Keil C và cấu hình cho Keil C. Điều khiển Port 1 và Port 3. Nạp chương trình bằng Flash Magic. Yêu cầu: Viết chương trình để nhấn nút 1 đèn thứ 1 sáng, nút 2 đèn thứ 2 sáng,…. 2.1 Tạo project trên Keil C Bước 1 : Kích hoạt Keil uVision3, cửa sổ Keil C hiện ra. Bước 2 : Chọn Project và chọn New uVision Project… BKIT HARDWARE CLUB – www.bkit4u.com 19 Hướng dẫn sử dụng Kit 89 Bước 3 : Chọn đường dẫn và gõ tên project và khung File name, chọn Save, khung cửa số sau đây xuất hiện. BKIT HARDWARE CLUB – www.bkit4u.com 20
- Xem thêm -