



















Preview text:
lOMoAR cPSD| 60776878 lOMoAR cPSD| 60776878
TÀI LIỆU THỰC TẬP VI ĐIỀU KHIỂN DRAFT MỤC LỤC
MỤC LỤC ....................................................................................................................... 1
THIẾT BỊ THỰC HÀNH .............................................................................................. 2
BÀI 1 : LED ĐƠN .......................................................................................................... 8
BÀI 2 : HIỂN THỊ KÝ TỰ TRÊN LCD ..................................................................... 11
BÀI 3 : XỬ LÝ NGẮT ................................................................................................. 22
BÀI 4 : XỬ LÝ ADC .................................................................................................... 27
BÀI 5 : TIMER ............................................................................................................. 33
BÀI 6: GIAO TIẾP I2C ............................................................................................... 37
BÀI 7: GIAO TIẾP RS232 ........................................................................................... 42
BÀI 8: ĐIỀU KHIỂN ĐỘNG CƠ DC ........................................................................ 51
BÀI 9: ĐO KHOẢNG CÁCH BẰNG CẢM BIẾN SIÊU ÂM SRF05 ..................... 56 lOMoAR cPSD| 60776878
TÀI LIỆU THỰC TẬP VI ĐIỀU KHIỂN DRAFT
THIẾT BỊ THỰC HÀNH
Kit BOOK 1 do công ty R&P phát triển, là một bo mạch phát triển giúp ngƣời
mới học PIC làm quen với các tính năng cũng nhƣ các công cụ làm việc với PIC .
BOOK1 là một dự án nằm trong chƣơng trình tài trợ cho các trƣờng đại học, và phổ
biến PIC cho sinh viên kỹ thuật.
Adapter, cáp usb, cáp kết nối… đƣợc cung cấp kèm theo kit.
Máy tính có cài đặt các phần mềm CCS 5.015, PICkit 2 v2.61, MATLAB 2012a, Proteus 8 Professional.
Hình 1: Thiết bị thực hành Kit BOOK 1 do công ty R&P phát triển. lOMoAR cPSD| 60776878
TÀI LIỆU THỰC TẬP VI ĐIỀU KHIỂN DRAFT
SƠ ĐỒ KHỐI KIT BOOK 1
SƠ ĐỒ NGUYÊN LÝ KIT BOOK 1 lOMoAR cPSD| 60776878
TÀI LIỆU THỰC TẬP VI ĐIỀU KHIỂN DRAFT lOMoAR cPSD| 60776878
TÀI LIỆU THỰC TẬP VI ĐIỀU KHIỂN DRAFT lOMoAR cPSD| 60776878
TÀI LIỆU THỰC TẬP VI ĐIỀU KHIỂN DRAFT lOMoAR cPSD| 60776878
TÀI LIỆU THỰC TẬP VI ĐIỀU KHIỂN DRAFT lOMoAR cPSD| 60776878
TÀI LIỆU THỰC TẬP VI ĐIỀU KHIỂN DRAFT BÀI 1 : LED ĐƠN 1.1.Nhiệm vụ
Thực hành lập trình ứng dụng trên máy tính, biên dịch chƣơng trình, nạp vào
VĐK và sử dụng mô hình thí nghiệm để kiểm chứng.
• Điều khiển thiết bị ngoại vi bằng các Port của VĐK.
• Điều khiển việc hiển thị bằng cách sử dụng LED đơn. 1.2.Yêu cầu
• Nắm vững các tập lệnh của VĐK PIC 16F887.
• Biết cách viết các chƣơng trình điều khiển LED đơn ở các chế độ khác nhau.
• Nắm đƣợc sơ đồ và nguyên lý hoạt động của khối LED đơn .
• Biết cách viết các chƣơng trình tạo thời gian trễ với các khoảng thời gian bất kỳ.
1.3.Giới thiệu chung
LED (viết tắt của Light Emitting Diode, có nghĩa là điốt phát quang) là các điốt
có khả năng phát ra ánh sáng hay tia hồng ngoại, tử ngoại. Cũng giống nhƣ điốt, LED
đƣợc cấu tạo từ một khối bán dẫn loại p ghép với một khối bán dẫn loại n.
Hoạt động của LED giống với nhiều loại điốt bán dẫn. Khối bán dẫn loại p chứa
nhiều lỗ trống tự do mang điện tích dƣơng nên khi ghép với khối bán dẫn n (chứa các
điện tử tự do) thì các lỗ trống này có xu hƣớng chuyễn động khuếch tán sang khối n.
Cùng lúc khối p lại nhận thêm các điện tử (điện tích âm) từ khối n chuyển sang. Kết quả
là khối p tích điện âm (thiếu hụt lỗ trống và dƣ thừa điện tử) trong khi khối n tích điện
dƣơng (thiếu hụt điện tử và dƣ thừa lỗ trống).
Ở biên giới hai bên mặt tiếp giáp, một số điện tử bị lỗ trống thu hút và khi chúng
tiến lại gần nhau, chúng có xu hƣớng kết hợp với nhau tạo thành các nguyên tử trung hòa.
Quá trình này có thể giải phóng năng lƣợng dƣới dạng ánh sáng (hay các bức xạ
điện từ có bƣớc sóng gần đó).
Tùy theo mức năng lƣợng giải phóng cao hay thấp mà bƣớc sóng ánh sáng phát
ra khác nhau (tức màu sắc của LED sẽ khác nhau). Mức năng lƣợng (và màu sắc của
LED) hoàn toàn phụ thuộc vào cấu trúc năng lƣợng của các nguyên tử chất bán dẫn.
LED thƣờng có điện thế phân cực thuận cao hơn điốt thông thƣờng, trong khoảng 1,5
đến 3 V. Nhƣng điện thế phân cực nghịch ở LED thì không cao. Do đó, LED rất dễ bị
hƣ hỏng do điện thế ngƣợc gây ra. Loại LED
Điện thế phân cực thuận Đỏ 1,4 - 1,8V lOMoAR cPSD| 60776878
TÀI LIỆU THỰC TẬP VI ĐIỀU KHIỂN DRAFT Vàng 2 - 2,5V Xanh lá cây 2 - 2,8V
Sơ đồ nguyên lý trên kit BOOK 1 1. 4.Thực hiện
Kết nối cáp USB từ mạch nạp trên kit BOOK 1 với máy tính, cấp nguồn cho mạch PIC qua adapter.
Viết chƣơng trình cho PIC bằng CCS C, sau đó biên dịch ra file hex.
Nạp file hex xuống PIC bằng phần mềm PIC kit 2 v2.61 đƣợc cài trên máy.
Chạy thực nghiệm và kiểm tra kết quả. 1.5. Bài tập
❖ Bài tập 1.1: Viết chƣơng trình chớp tắt led ở port e với thời gian delay 250 ms:
Chƣơng trình mẫu gợi ý : #include <16F887.h> #include
#FUSES NOWDT, HS, NOPUT, NOPROTECT, NODEBUG, NOBROWNOUT, NOLVP, NOCPD, NOWRT #use delay(clock=20000000) void main() { trise = 0x00; porte=0xff; while (1) { Porte = 0x00; delay_ms(250); Porte = 0xFF; delay_ms(250); } }
❖ Bài tập 1.2 : Viết chƣơng trình chớp tắt các led ở port e với thời gian delay 1s. lOMoAR cPSD| 60776878
TÀI LIỆU THỰC TẬP VI ĐIỀU KHIỂN DRAFT
❖ Bài tập 1.3 : Viết chƣơng trình chớp tắt led D4 ở port e với thời gian delay 1s, led
D5 với thời gian delay 0,5 s. lOMoAR cPSD| 60776878
TÀI LIỆU THỰC TẬP VI ĐIỀU KHIỂN DRAFT
BÀI 2 : HIỂN THỊ KÝ TỰ TRÊN LCD 2.1.Nhiệm vụ
• Thực hành lập trình ứng dụng trên máy tính, biên dịch chƣơng trình, nạp vào
VĐK và sử dụng mô hình thí nghiệm để kiểm chứng.
• Điều khiển thiết bị ngoại vi bằng các Port của VĐK.
• Khảo sát nguyên lý hoạt động và nguyên lý điều khiển LCD.
• Điều khiển để hiển thị các thông tin trên màn hình tinh thể lỏng LCD (loại 2 hàng x 16 ký tự). 2. 2.Yêu cầu
• Nắm vững các tập lệnh của VĐK PIC 16F887.
• Biết cách viết các chƣơng trình điều khiển LCD.
• Nắm đƣợc sơ đồ và nguyên lý hoạt động của khối LCD trên mô hình thí nghiệm.
• Nắm đƣợc nguyên lý và các kỹ thuật điều khiển để hiển thị các thông tin trên LCD.
• Biết cách viết các chƣơng trình ứng dụng để hiển thị các dạng thông tin khác
nhau trên LCD tùy theo nhu cầu sử dụng.
2.3. Giới thiệu chung
Ngày nay, thiết bị hiển thị LCD (Liquid Crystal Display) đƣợc sử dụng trong rất
nhiều các ứng dụng của VĐK. LCD có rất nhiều ƣu điểm so với các dạng hiển thị khác:
Nó có khả năng hiển thị kí tự đa dạng, trực quan (chữ, số và kí tự đồ họa), dễ
dàng đƣa vào mạch ứng dụng theo nhiều giao thức giao tiếp khác nhau, tốn rất ít tài
nguyên hệ thống và giá thành rẻ…
Có rất nhiều loại LCD với nhiều hình dáng và kích thƣớc khác nhau, trên hình 1
là hai loại LCD thông dụng.
Hình 2.1: Hai loại LCD thông dụng
Khi sản xuất LCD, nhà sản xuất đã tích hợp chíp điều khiển (HD44780) bên
trong lớp vỏ và chỉ đƣa các chân giao tiếp cần thiết. Các chân này đƣợc đánh số thứ tự
và đặt tên nhƣ hình 2.2. lOMoAR cPSD| 60776878
TÀI LIỆU THỰC TẬP VI ĐIỀU KHIỂN DRAFT
Hình 2.2: Sơ đồ chân của LCD Chức năng các chân: lOMoAR cPSD| 60776878
TÀI LIỆU THỰC TẬP VI ĐIỀU KHIỂN DRAFT
* Ghi chú : Ở chế độ“đọc”, nghĩa là MCU sẽ đọc thông tin từ LCD thông qua các chân DBx.
Còn khi ở chế độ“ghi”, nghĩa là MCU xuất thông tin điều khiển cho LCD thông qua các chân DBx.
• Sơ đồ khối của HD44780: Để hiểu rõ hơn chức năng các chân và hoạt động của
chúng, ta tìm hiểu sơ qua chíp HD44780 thông qua các khối cơ bản của nó.
Hình 2.3: Sơ đồ chân khối của HD44780
Để có thể ghi vào vị trí thứ x trên màn hình một kí tự y nào đó, ngƣời dùng phải
ghi vào vùng DDRAM tại địa chỉ x một chuỗi mã kí tự 8 bit trên CGROM. lOMoAR cPSD| 60776878
TÀI LIỆU THỰC TẬP VI ĐIỀU KHIỂN DRAFT
Ví dụ: Ghi vào DDRAM tại địa chỉ“01” một chuỗi 8 bit “01100010” thì trên
LCD tại ô thứ 2 từ trái sang (dòng trên) sẽ hiển thị kí tự“b”.
Hình 2.4: Bảng mã ký tự (ROM code A00) • Tập lệnh của LCD :
Trƣớc khi tìm hiểu tập lệnh của LCD, sau đây là một vài chú ý khi giao tiếp với LCD : lOMoAR cPSD| 60776878
TÀI LIỆU THỰC TẬP VI ĐIỀU KHIỂN DRAFT
* Tuy trong sơ đồ khối của LCD có nhiều khối khác nhau, nhƣng khi lập trình điều
khiển LCD ta chỉ có thể tác động trực tiếp đƣợc vào 2 thanh ghi DR và IR thông qua
các chân DBx, và ta phải thiết lập chân RS, R/W phù hợp để chuyển qua lại giữa 2 thanh ghi này .
* Với mỗi lệnh, LCD cần một khoảng thời gian để hoàn tất, thời gian này có thể khá lâu
đối với tốc độ của MCU, nên ta cần kiểm tra cờ BF hoặc đợi (delay) cho LCD thực
thi xong lệnh hiện hành mới có thể ra lệnh tiếp theo.
* Địa chỉ của RAM (AC) sẽ tự động tăng (giảm) 1 đơn vị, mỗi khi có lệnh ghi vào
RAM. (Điều này giúp chƣơng trình gọn hơn).
* Các lệnh của LCD có thể chia thành 4 nhóm nhƣ sau :
• Các lệnh về kiểu hiển thị. VD : Kiểu hiển thị(1 hàng / 2 hàng), chiều dài dữ liệu (8 bit / 4 bit), …
• Chỉ định địa chỉRAM nội.
• Nhóm lệnh truyền dữ liệu trong RAM nội.
• Các lệnh còn lại . (!!!) CÁC LỆNH CỦA LCD lOMoAR cPSD| 60776878
TÀI LIỆU THỰC TẬP VI ĐIỀU KHIỂN DRAFT lOMoAR cPSD| 60776878
TÀI LIỆU THỰC TẬP VI ĐIỀU KHIỂN DRAFT lOMoAR cPSD| 60776878
TÀI LIỆU THỰC TẬP VI ĐIỀU KHIỂN DRAFT ❖ Khởi tạo LCD:
Khởi tạo là việc thiết lập các thông số làm việc ban đầu. Đối với LCD, khởi tạo giúp
ta thiết lập các giao thức làm việc giữa LCD và MCU. Việc khởi tạo chỉ đƣợc thực hiện
1 lần duy nhất ở đầu chƣơng trình điều khiển LCD và bao gồm các thiết lập sau :
• Display clear : Xóa/không xóa toàn bộ nội dung hiển thị trƣớc đó.
• Function set : Kiểu giao tiếp 8bit/4bit, số hàng hiển thị 1 hàng/2 hàng, kiểu kí tự 5x8/5x10.
• Display on/off control: Hiển thị/tắt màn hình, hiển thị/tắt con trỏ, nhấp nháy/không nhấp nháy.
• Entry mode set : các thiết lập kiểu nhập kí tự nhƣ: Dịch/không dịch, tự tăng/giảm (Increment).
❖ Sơ đồ nguyên lý khối LCD trên kit BOOK 1 2. 4.Thực hiện
Kết nối cáp USB từ mạch nạp trên kit BOOK 1 với máy tính, cấp nguồn cho
mạch PIC qua adapter, kết nối LCD với kit.
Viết chƣơng trình cho PIC bằng CCS C, sau đó biên dịch ra file hex.
Nạp file hex xuống PIC bằng phần mềm PICkit 2 v2.61 đƣợc cài trên máy. lOMoAR cPSD| 60776878
TÀI LIỆU THỰC TẬP VI ĐIỀU KHIỂN DRAFT
Chạy thực nghiệm và kiểm tra kết quả. 2.5. Bài tập
❖ Bài tập 2.1 : Viết chƣơng trình hiển thị các ký tự sau lên LCD: DAI HOC KTCN CAN THO .
Chƣơng trình mẫu gợi ý : #include <16f887.h> #include
#fuses HS,NOWDT,NOPROTECT,NOLVP #use delay(clock=20000000) #include void main() { Output_low(LCD_RW); LCD_init(); while(true) { lcd_putcmd(0x85);
lcd_putcmd(0x01);//xoa man hinh
Printf( lcd_putchar,"DAI HOC"); delay_ms(1000); lcd_putcmd(0x01);
Printf(lcd_putchar,"KTCN CAN THO"); delay_ms(1000); lcd_putcmd(0x01); } }
o Nội dung file lcd_lib_4bit.c: #include #define LCD_RS PIN_D1 #define LCD_RW PIN_D2 #define LCD_EN PIN_D3 #define LCD_D4 PIN_D4 #define LCD_D5 PIN_D5 #define LCD_D6 PIN_D6 #define LCD_D7 PIN_D7