Hướng dẫn sử dụng KIT 8051

Chia sẻ: Ken Nguyen | Ngày: | Loại File: PDF | Số trang:110

0
126
lượt xem
44
download

Hướng dẫn sử dụng KIT 8051

Mô tả tài liệu
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Tài liệu "Hướng dẫn sử dụng KIT 8051" trình bày kiến thức sau: hướng dẫn cài đặt keil c và flash magic, truy xuất port I/O, điều khiển đơn giản led 7 đoạn, ngắt timer, dùng ngắt timer viết ứng dụng led rive, quét led điều khiển led 7 đoạn, điều khiển ma trận led, chạy chữ trên ma trận led, ngắt ngoài, điều khiển encoder.

Chủ đề:
Lưu

Nội dung Text: Hướng dẫn sử dụng KIT 8051

HƯỚNG DẪN SỬ DỤNG KIT 8051<br /> <br /> Mục lục<br /> 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<br /> <br /> HƯỚNG DẪN SỬ DỤNG KIT 8051<br /> 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<br /> <br /> BKIT HARDWARE CLUB<br /> <br /> www.bkit4u.com<br /> <br /> 2<br /> <br /> HƯỚNG DẪN SỬ DỤNG KIT 8051<br /> 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<br /> <br /> BKIT HARDWARE CLUB<br /> <br /> www.bkit4u.com<br /> <br /> 3<br /> <br /> HƯỚNG DẪN SỬ DỤNG KIT 8051<br /> <br /> Giới thiệu kit thí nghiệm BK89IT<br /> <br /> 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.<br /> <br /> BKIT HARDWARE CLUB<br /> <br /> www.bkit4u.com<br /> <br /> 4<br /> <br /> HƯỚNG DẪN SỬ DỤNG KIT 8051<br /> <br /> Mô hình lập trình C trong vi điều khiển<br /> 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(){} } timer.c #include "timer.h" int counter0; int counter1; void init_tim er0(); { IE |= 0x20; TR0 = 1; .......................... } void init_tim er1() { .......................... } void private_function() { .......................... }<br /> <br /> led7.h #ifndef __LED7_H_ #define __LED7_H_ void init_led7(); void scan_led7(); ............... #endif<br /> <br /> led7.c #include "led7.h" unsigned char led7_buff[8]; void init_led7(); { P0 = 0x00; T2 = 0x00; .......................... } void scan_led7() { .......................... } void private_function() { .......................... }<br /> <br /> Để 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.<br /> <br /> BKIT HARDWARE CLUB<br /> <br /> www.bkit4u.com<br /> <br /> 5<br /> <br />

CÓ THỂ BẠN MUỐN DOWNLOAD

Đồng bộ tài khoản