Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 275 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
275
Dung lượng
9,01 MB
Nội dung
TRUNG TÂM THÍ NGHIỆM THỰC HÀNH ĐIỆN TỬ BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP T T À À I I L L I I Ệ Ệ U U H H Ư Ư Ớ Ớ N N G G D D Ẫ Ẫ N N T T H H Í Í N N G G H H I I Ệ Ệ M M - - T T H H Ự Ự C C H H À À N N H H B B I I Ê Ê N N S S O O Ạ Ạ N N : : P P H H Ạ Ạ M M Q Q U U A A N N G G T T R R Í Í TP. HỒ CHÍ MINH 11 - 2005 MỤC LỤC CHƯƠNG 1: CẤU HÌNH CỦA MÔ HÌNH THÍ NGHIỆM VI ĐIỀU KHIỂN 1 1.1 Giới thiệu: 1 1.2 Cấu hình của mô hình thí nghiệm vi điều khiển: 2 1.2.1 Khối lập trình vi điều khiển: 2 1.2.2 Khối vi điều khiển: 4 1.2.3 Khối LED điểm: 6 1.2.4 Khối LED 7 đoạn: 7 1.2.5 Khối LED ma trận: 11 1.2.6 Khối LCD: 13 1.2.7 Khối công tắc: 14 1.2.8 Khối nút nhấn: 15 1.2.9 Khối bàn phím: 16 1.2.10 Khối relay: 17 1.2.11 Khối tạo xung: 18 1.2.12 Khối tạo áp thay đổi: 19 1.2.13 Khối điều khiển động cơ bước: 20 1.2.14 Khối Serial EEPROM: 21 1.2.15 Khối cảm biến nhiệt: 22 1.2.16 Khối đệm dữ liệu: 24 1.2.17 Khối giải mã: 26 1.2.18 Khối ADC: 28 1.2.19 Khối DAC: 29 1.2.20 Khối RTC: 31 1.2.21 Khối thanh ghi dịch: 32 1.2.22 Khối mở rộng port I/O: 34 1.2.23 Khối giao tiếp PC: 37 1.2.24 Khối mở rộng bus: 39 CHƯƠNG 2: HƯỚNG DẪN SỬ DỤNG PHẦN MỀM MCU PROGRAM LOADER. 40 2.1 Giới thiệu: 40 2.2 Hướng dẫn sử dụng phần mềm MCU Program Loader: 41 CHƯƠNG 3: HỆ THỐNG CÁC BÀI THỰC HÀNH VI ĐIỀU KHIỂN 47 Một số lưu ý khi viết chương trình và kết nối mạch 47 A. Hệ thống điều khiển LED đơn 48 • Mục đích: 48 • Yêu cầu: 48 • Bài 1: Chương trình điều khiển 8 LED được nối với Port0 sáng tắt 48 • Bài 2: Chương trình điều khiển đếm lên nhị phân 8 bit và hiển thị trên 8 LED được nối với Port0 51 • Bài 3: Chương trình điều khiển 8 LED được nối với Port0 sáng dần và tắt hết. 52 • Bài 4: Chương trình điều khiển 8 LED được nối với Port0 sáng đuổi 54 • Bài 5: Chương trình điều khiển 8 LED được nối với Port0 sáng dồn. 56 • Bài 6: Chương trình điều khiển 8 LED được nối với Port0 hoạt động bằng cách tổng hợp các phương pháp điều khiển đã thực tập 58 • Bài 7: Chương trình con điều khiển tạo thời gian trễ 200 µ s, 20ms, 2s sử dụng Timer 60 B. Hệ thống điều khiển LED 7 đoạn 62 • Mục đích: 62 • Yêu cầu: 62 • Bộ hiển thị LED7 đoạn được thiết kế theo phương pháp không đa hợp và ngõ vào dữ liệu kiểu BCD. 62 o Bài 1: Chương trình điều khiển hiển thị số 7 trên LED3. 62 o Bài 2: Chương trình điều khiển hiển thị đếm số BCD từ 0 lên 9 trên LED3 64 o Bài 3: Chương trình điều khiển hiển thị số 35 trên hai LED. 66 o Bài 4: Chương trình điều khiển hiển thị đếm số BCD từ 00 lên 99 trên hai LED 67 o Bài 5: Chương trình điều khiển hiển thị số 1234 trên bốn LED. 68 o Bài 6: Chương trình điều khiển hiển thị đếm số BCD từ 0000 đến 9999 trên bốn LED 69 • Bộ hiển thị LED 7 đoạn được thiết kế theo phương pháp không đa hợp và ngõ vào dữ liệu kiểu 7 đoạn. 70 o Bài 1: Chương trình điều khiển hiển thị số 7 trên LED3. 70 o Bài 2: Chương trình điều khiển hiển thị đếm số BCD từ 0 lên 9 trên LED3 71 o Bài 3: Chương trình điều khiển hiển thị số 35 trên hai LED. 73 o Bài 4: Chương trình điều khiển hiển thị đếm số BCD từ 00 lên 99 trên hai LED 74 o Bài 5: Chương trình điều khiển hiển thị số 1234 trên bốn LED. 75 o Bài 6: Chương trình điều khiển hiển thị đếm số BCD từ 0000 đến 9999 trên bốn LED 76 • Bộ hiển thị LED 7 đoạn được thiết kế theo phương pháp đa hợp và ngõ vào dữ liệu kiểu BCD (không dùng vi mạch giải đa hợp bên ngoài) 78 o Bài 1: Chương trình điều khiển hiển thị số 1 trên LED7. 78 o Bài 2: Chương trình điều khiển hiển thị đếm số BCD từ 0 lên 9 trên LED7 79 o Bài 3: Chương trình điều khiển hiển thị số 12 trên hai LED. 81 o Bài 4: Chương trình điều khiển hiển thị đếm số BCD từ 00 lên 99 trên hai LED 84 o Bài 5: Chương trình điều khiển hiển thị số 1234 trên bốn LED. 86 o Bài 6: Chương trình điều khiển hiển thị đếm số BCD từ 0000 đến 9999 trên bốn LED 87 o Bài 7: Chương trình điều khiển hiển thị số 12345678 trên tám LED. 89 o Bài 8: Chương trình điều khiển hiển thị đếm số BCD từ 00000000 lên 99999999 trên tám LED 91 • Bộ hiển thị LED 7 đoạn được thiết kế theo phương pháp đa hợp và ngõ vào dữ liệu kiểu 7 đoạn (không dùng vi mạch giải đa hợp bên ngoài) 93 o Bài 1: Chương trình điều khiển hiển thị số 1 trên LED7. 93 o Bài 2: Chương trình điều khiển hiển thị đếm số BCD từ 0 lên 9 trên LED7 94 o Bài 3: Chương trình điều khiển hiển thị số 12 trên hai LED. 96 o Bài 4: Chương trình điều khiển hiển thị đếm số BCD từ 00 lên 99 trên hai LED 99 o Bài 5: Chương trình điều khiển hiển thị số 1234 trên bốn LED. 101 o Bài 6: Chương trình điều khiển hiển thị đếm số BCD từ 0000 đến 9999 trên bốn LED 102 o Bài 7: Chương trình điều khiển hiển thị số 12345678 trên tám LED. 105 o Bài 8: Chương trình điều khiển hiển thị đếm số BCD từ 00000000 lên 99999999 trên tám LED.107 • Bộ hiển thị LED 7 đoạn được thiết kế theo phương pháp đa hợp và ngõ vào dữ liệu kiểu BCD (dùng vi mạch giải đa hợp bên ngoài). 110 o Bài 1: Chương trình điều khiển hiển thị số 1 trên LED7. 110 o Bài 2: Chương trình điều khiển hiển thị đếm số BCD từ 0 lên 9 trên LED7 111 o Bài 3: Chương trình điều khiển hiển thị số 12 trên hai LED. 113 o Bài 4: Chương trình điều khiển hiển thị đếm số BCD từ 00 lên 99 trên hai LED 116 o Bài 5: Chương trình điều khiển hiển thị số 1234 trên bốn LED. 118 o Bài 6: Chương trình điều khiển hiển thị đếm số BCD từ 0000 đến 9999 trên bốn LED 121 o Bài 7: Chương trình điều khiển hiển thị số 12345678 trên tám LED. 122 o Bài 8: Chương trình điều khiển hiển thị đếm số BCD từ 00000000 lên 99999999 trên tám LED.123 • Bộ hiển thị LED 7 đoạn được thiết kế theo phương pháp đa hợp và ngõ vào dữ liệu kiểu 7 đoạn (dùng vi mạch giải đa hợp bên ngoài) 125 o Bài 1: Chương trình điều khiển hiển thị số 1 trên LED7. 125 o Bài 2: Chương trình điều khiển hiển thị đếm số BCD từ 0 lên 9 trên LED7 126 o Bài 3: Chương trình điều khiển hiển thị số 12 trên hai LED. 128 o Bài 4: Chương trình điều khiển hiển thị đếm số BCD từ 00 lên 99 trên hai LED 131 o Bài 5: Chương trình điều khiển hiển thị số 1234 trên bốn LED. 133 o Bài 6: Chương trình điều khiển hiển thị đếm số BCD từ 0000 đến 9999 trên bốn LED 134 o Bài 7: Chương trình điều khiển hiển thị số 12345678 trên tám LED. 137 o Bài 8: Chương trình điều khiển hiển thị đếm số BCD từ 00000000 lên 99999999 trên tám LED.139 • Ứng dụng điều khiển LED 7 đoạn tổng hợp 142 o Bài 1: Chương trình điều khiển hiển thị đếm GIỜ – PHÚT – GIÂY trên sáu LED. 142 o Bài 2: Chương trình điều khiển hiển thị chuỗi ký tự “-HA-NOI-“ trên tám LED 145 o Bài 3: Chương trình điều khiển hiển thị và chớp tắt chuỗi ký tự “ -HA-NOI- “ trên tám LED 147 o Bài 4: Chương trình điều khiển hiển thị lần lượt các chuỗi ký tự “-HA-NOI“, “-DA-LAT-“, “- SAIGON-“ trên tám LED. Mỗi chuỗi hiển thị cách nhau 1 giây 149 o Bài 5: Chương trình điều khiển hiển thị và dịch chuyển chuỗi ký tự “-HA-NOI-SAI-GON-“ trên tám LED từ phải sang trái 151 C. Hệ thống điều khiển LED ma trận 153 • Mục đích: 153 • Yêu cầu: 153 • Bài 1: Chương trình điều khiển hiển thị chữ A màu đỏ trên LED ma trận 154 • Bài 2: Chương trình điều khiển hiển thị chữ S màu đỏ trên LED ma trận sáng tắt 157 • Bài 3: Chương trình điều khiển hiển thị lần lượt các chữ A, B, C, a, b, c màu đỏ trên LED ma trận 159 • Bài 4: Chương trình điều khiển hiển thị chuỗi ký tự “WELLCOME” màu đỏ trên LED ma trận dịch chuyển từ phải sang trái 161 D. Hệ thống điều khiển bàn phím. 163 • Mục đích: 163 • Yêu cầu: 163 • Bài 1: Chương trình điều khiển bàn phím và hiển thị mã của phím nhấn trên 8 LED dưới dạng số BIN 164 • Bài 2: Chương trình điều khiển bàn phím và biểu diễn các kiểu hiển thị trên tám LED thông qua các phím được nhấn 166 E. Hệ thống điều khiển LCD. 171 • Mục đích: 171 • Yêu cầu: 171 • Bài 1: Chương trình điều khiển LCD hiển thị hai dòng chữ “MICRO-CONTROLLER” và “DESIGNED BY: PQT.” đứng yên trên hai dòng của màn hình LCD 172 • Bài 2: Chương trình điều khiển LCD hiển thị hai dòng chữ “WELLCOME TO MICROCONTROLLER SYSTEM – 51” và “DESIGNED BY: PQT.” trên hai dòng của màn hình LCD với yêu cầu: dòng chữ thứ nhất sẽ dịch chuyển liên tục từ phải sang trái, dòng chữ thứ hai đứng yên. 174 • Bài 3: Chương trình điều khiển LCD hiển thị hai dòng chữ “PULSE = ” và “DESIGNED BY PHAM QUANG TRI – ELECTRIC TRAINING CENTER - HO CHI MINH UNIVERSITY OF INDUSTRY” trên hai dòng của màn hình LCD với yêu cầu: số lượng xung đếm được (00 – 99) tại chân P3.0 sẽ được hiển thị trên dòng thứ nhất tiếp phía sau dòng chữ “PULSE =”, dòng chữ thứ hai sẽ dịch chuyển từ phải sang trái. Xung được tạo ra bằng cách nhấn nút nhấn KEY0. 177 F. Hệ thống điều khiển nút nhấn. 181 • Mục đích: 181 • Yêu cầu: 181 • Bài 1: Chương trình điều khiển nút nhấn, khi ta nhấn nút nào trong 8 nút thì LED tương ứng sẽ sáng lên và ngược lại 182 • Bài 2: Chương trình điều khiển nút nhấn, khi ta nhấn nút KEY0 thì 8 LED sẽ chớp tắt với tần số 5 Hz và ngược lại khi ta nhả nút KEY0 thì 8 LED sẽ chớp tắt với tần số 20 Hz 184 G. Hệ thống điều khiển công tắc 186 • Mục đích: 186 • Yêu cầu: 186 • Bài tập: Chương trình điều khiển công tắc và hiển thị lên tám LED mức logic hiện tại (LED sáng = mức cao, LED tắt = mức thấp) của tám công tắc gạt 187 H. Hệ thống điều khiển relay 189 • Mục đích: 189 • Yêu cầu: 189 • Bài tập: Chương trình điều khiển RELAY1 và RELAY2 đóng ngắt tuần tự và liên tục. Thời gian giữa hai lần đóng ngắt là 1s 190 I. Hệ thống điều khiển motor bước 192 • Mục đích: 192 • Yêu cầu: 192 • Bài 1: Chương trình điều khiển STEPPER1 quay cùng chiều kim đồng hồ 193 • Bài 2: Chương trình điều khiển STEPPER1 quay cùng chiều kim đồng hồ một vòng rồi dừng lại 195 • Bài 3: Chương trình điều khiển STEPPER1 quay bằng cách nhấn nút KEY0: quay thuận, KEY1: quay ngược, KEY2: dừng 196 J. Hệ thống điều khiển ngắt (Interrupt). 198 • Mục đích: 198 • Yêu cầu: 198 • Bài 1: Chương trình điều khiển t?o sóng vuông tuần hoàn có tần số 10 Hz (sử dụng ngắt Timer) tại chân P0.0 và hiển thị mức logic tại chân này lên LED0 199 • Bài 2: Chương trình điều khiển đếm số xung t?i chân INT0 (sử dụng ngắt ngoài) và hiển thị số xung này (tối đa là 255 lần) lên ba LED 7 đoạn 200 K. Hệ thống điều khiển Timer/Counter 203 • Mục đích: 203 • Yêu cầu: 203 • Bài 1: Chương trình điều khiển đếm liên tục số lượng xung (0000 – 9999) được đưa vào chân T1 của vi điều khiển và hiển thị số lượng xung này lên các LED 7 đoạn 204 • Bài 2: Chương trình điều khiển đo tần số của xung (0000 – 9999, đơn vị là Hz) được đưa vào chân T1 của vi điều khiển và hiển thị tần số của xung này lên các LED 7 đoạn 207 • Bài 3: Chương trình điều khiển đo độ rộng của xung (đơn vị là ms) được đưa vào chân INT0 của vi điều khiển và hiển thị độ rộng của xung này lên các LED 7 đoạn 210 L. Hệ thống điều khiển thu phát dữ liệu dạng nối tiếp. 212 • Mục đích: 212 • Yêu cầu: 212 • Bài 1: Chương trình điều khiển (ứng dụng mở rộng port xuất) xuất liên tục các giá trị 00H, 01H, 03H, 07H, 0FH, 1FH, 3FH, 7FH và FFH ra 8 LED thông qua port nối tiếp và sử dụng vi mạch 4094, mỗi lần xuất cách nhau 1s 213 • Bài 2: Chương trình điều khiển (ứng dụng mở rộng port nhập) thực hiện liên tục việc nhập dữ liệu từ 8 công tắc thông qua port nối tiếp và sử dụng vi mạch 74165, dữ liệu nhập vào này sẽ được xuất ra 8 LED 215 • Bài 3: Chương trình điều khiển (ứng dụng mở rộng thu phát nối tiếp) tạo một bảng dữ liệu gồm 9 bytes (00H, 01H, 03H, 07H, 0FH, 1FH, 3FH, 7FH, FFH). Thực hiện việc xuất từng byte của bảng này ra port nối tiếp (chân TXD) rồi thu vào port nối tiếp (chân RXD) và cất vào RAM nội có địa chỉ bắt đầu là 40H. Việc xuất dữ liệu được điều khiển bằng nút nhấn KEY0, mỗi lần xuất/nhập một byte. Dữ liệu sau khi nhập vào được xuất ra 8 LED (có sử dụng bộ đệm đảo) đồng thời với việc ghi vào RAM nội. 216 M. Hệ thống điều khiển port I/O (điều khiển xuất/nhập qua các thiết bị ngoại vi). • Mục đích: • Yêu cầu: • Bài 1: Chương trình điều khiển Port I/O, làm cho 8 LED đếm lên nhị phân 8 bit. Sử dụng cơ chế bộ nhớ ngoài. • Bài 2: Chương trình điều khiển Port I/O, liên tục đọc các giá trị từ các công tắc gạt SW0 – SW7 và hiển thị mức logic hiện tại (LED sáng = mức cao, LED tắt = mức thấp) của các công tắc này lên LED. Sử dụng cơ chế bộ nhớ ngoài • Bài 3: Chương trình điều khiển Port I/O, làm cho 8 LED đếm lên nhị phân 8 bit. Sử dụng cơ chế bộ nhớ ngoài. • Bài 4: Chương trình điều khiển Port I/O, liên tục đọc các giá trị từ các công tắc gạt SW0 – SW7 và hiển thị mức logic hiện tại (LED sáng = mức cao, LED tắt = mức thấp) của các công tắc này lên LED. Sử dụng cơ chế bộ nhớ ngoài N. Hệ thống điều khiển ADC • Mục đích: • Yêu cầu: • Bài 1: Chương trình điều khiển biến đổi A/D thông qua ADC0809 và hiển thị giá trị của kênh ngõ vào (kênh IN0) lên hai LED 7 đoạn (LED1 và LED0; dưới dạng số HEX từ 00H -> FFH). Sử dụng cơ chế bộ nhớ ngoài. • Bài 2: Chương trình điều khiển biến đổi A/D thông qua ADC0809 và hiển thị giá trị của kênh ngõ vào (kênh IN0) lên ba LED 7 đoạn (LED2, LED1 và LED0; dưới dạng số DEC từ 0 -> 255). Sử dụng cơ chế bộ nhớ ngoài • Bài 3: Chương trình điều khiển biến đổi A/D thông qua ADC0809 và hiển thị giá trị điện áp của kênh ngõ vào (kênh IN0) lên bốn LED 7 đoạn (LED3: hàng đơn vị; LED2, LED1 và LED0: ba số phần thập phân). Sử dụng cơ chế bộ nhớ ngoài • Bài 3: Chương trình điều khiển biến đổi A/D thông qua ADC0809 và hiển thị giá trị của hai kênh ngõ vào (kênh IN0 và IN1) lên ba LED 7 đoạn (LED2, LED1 và LED0; dưới dạng số thập phân từ 0 -> 255), LED7 hiển thị kênh ngõ vào. Việc chuyển đổi kênh biến đổi được thực hiện bằng cách nhấn nút KEY0. Sử dụng cơ chế bộ nhớ ngoài O. Hệ thống điều khiển DAC • Mục đích: • Yêu cầu: • Bài 1: Chương trình điều khiển biến đổi D/A thông qua DAC0808 và thực hiện biến đổi giá trị lưu trong thanh ghi R0 thành điện áp tương tự. Giá trị trong thanh ghi R0 thay đổi liên tục 00H, 40H, 80H, C0H và FFH, mỗi lần cách nhau 2 giây • Bài 2: Chương trình điều khiển biến đổi D/A thông qua DAC0808 và thực hiện biến đổi giá trị lưu trong thanh ghi R0 thành điện áp tương tự. Giá trị trong thanh ghi R0 thay đổi liên tục từ 00H -> FFH, mỗi lần cách nhau 2 giây và được hiển thị lên ba LED 7 đoạn (LED2, LED1 và LED0; dưới dạng số thập phân từ 0 -> 255). • Bài 3: Chương trình điều khiển biến đổi D/A thông qua DAC0808 và thực hiện tạo sóng sin có tần số bất kỳ tại ngõ ra. P. Hệ thống điều khiển đo nhiệt độ • Mục đích: • Yêu cầu: • Bài tập: Chương trình đo nhiệt độ và hiển thị giá trị lên bốn LED 7 đoạn (một LED hiển thị phần thập phân). Q. Hệ thống điều khiển motor DC. • Mục đích: • Yêu cầu: • Bài 1: R. Hệ thống điều khiển Serial EEPROM • Mục đích: • Yêu cầu: • Bài 1: S. Hệ thống điều khiển RTC. • Mục đích: • Yêu cầu: • Bài 1: TRUNG TÂM THÍ NGHIỆM THỰC HÀNH ĐIỆN TỬ BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP T T À À I I L L I I Ệ Ệ U U H H Ư Ư Ớ Ớ N N G G D D Ẫ Ẫ N N T T H H Í Í N N G G H H I I Ệ Ệ M M - - T T H H Ự Ự C C H H À À N N H H Chương 1: Cấu hình của mô hình thí nghiệm vi điều khiển. Giáo trình thực hành vi xử lý. 8 Biên soạn: Phạm Quang Trí 1.1 Giới thiệu: Sau khi đã được học, nghiên cứu và tìm hiểu về vi điều khiển ở phần lý thuyết. Chúng ta có thể bắt đầu tiến hành thực hiện các bài thí nghiệm đối với vi điều khiển nhằm mục đích giúp chúng ta hiểu một cách tường tận hơn về những gì mà ta đã được học trong phần lý thuyết cũng như cách thức vận dụng nó vào trong thực tế. Trong thực tế, các ứng dụng của vi điều khiển thì rất đa dạng và phong phú. Từ những ứng dụng đơn giản chỉ có vài thiết bị ngoại vi cho đến những hệ thống vi điều khiển phức tạp. Tuy nhiên, trong phạm vi có giới hạn của giáo trình và nhằm mục đích phục vụ cho công việc học tập và tự nghiên cứu của sinh viên. Cho nên mô hình thí nghiệm vi điều khiển này được thiết kế với tương đối đầy đủ các yêu cầu phần cứng và có rất nhiều chương trình điều khiển mẫu cũng như các bài tập thực hành từ đơn giản đến phức tạp có thể giúp cho sinh viên thực hành, thí nghiệm và tự nghiên cứu, tự học môn học này. Mô hình thí nghiệm vi điều khiển này hỗ trợ cho việc thí nghiệm: • Thí nghiệm các loại vi điều khiển như: 89C1051, 89C2051, 89C4051, 89C51, 89LV51, 89C52, 89LV52, 89C55, 89LV55, 89C55WD, 89S51, 89LS51, 89S52, 89LS52, 89S53, 89LS53, 89S8252, 89LS8252. • Thí nghiệm các thiết bị ngoại vi như: LED điểm, LED ma trận, LED 7 đoạn, LCD, ADC, DAC, công tắc, nút nhấn, bàn phím, relay, bộ nhớ nối tiếp, xuất nhập dữ liệu nối tiếp và song song, tạo xung, cảm biến nhiệt, đồng hồ thời gian thực (RTC), … • Thí nghiệm các chuẩn giao tiếp như: RS232, LPT, USB, PS2. Phần mềm sử dụng cho mô hình thí nghiệm vi điều khiển này là phần mềm mô phỏng Topview và MCU Program Loader. Phần mềm mô phỏng Topview cho phép bạn mô phỏng và chạy thử các chương trình điều khiển trên máy tính với một số module thiết bị ngoại vi có sẵn tương tự như trên mô hình thí nghiệm vi điều khiển ngoài thực tế, phần mềm này còn cho bạn khả năng soạn thảo và biên dịch chương trình theo ngôn ngữ Assembler. Phần mềm MCU Program Loader cho phép bạn khả năng nạp chương trình cho các loại vi điều khiển đã nêu trên từ máy tính. Các bạn có thể tìm hiểu thêm về hai phần mềm này trong các phần sau của giáo trình (phần mềm mô phỏng Topview xem trong tài liệu “Hướng dẫn sử dụng phần mềm mô phỏng MCS-51 Topview Simulator”). Các chương tiếp theo sẽ trình bày chi tiết hơn về cấu hình của mô hình thí nghiệm vi điều khiển, cách thức sử dụng phần mềm và cung cấp các bài thí nghiệm thực hành mẫu cũng như các bài tập mở rộng có thể phục vụ rất tốt cho việc tự học của các bạn. Chương 1: Cấu hình của mô hình thí nghiệm vi điều khiển. Giáo trình thực hành vi xử lý. 9 Biên soạn: Phạm Quang Trí 1.2 Cấu hình của mô hình thí nghiệm vi điều khiển: 1.2.1 Khối lập trình vi điều khiển: • Sơ đồ nguyên lý: D0 R111 1K2 A12 P1.1 VPP D39 5V6 C48 1000u VDD D5 R117 3K3 D1 D3 R109 100/2W D4 VCC VPC 5V/6.5V A9 P1.7 D42 1N4007 P1.7 R108 10K A12 P1.2 VPP 5V/6.5V D6 R120 4K7 D35 5V6 D4 Y3 11.0592MHz P1.7 A5 D5 P1.0 A13 SW18 POWER SW VDD U35 74573 2 3 4 5 6 7 8 9 11 1 19 18 17 16 15 14 13 12 10 20 D0 D1 D2 D3 D4 D5 D6 D7 LE OE Q0 Q1 Q2 Q3 Q4 Q5 Q6 Q7 GND VCC Q23 C1815 VPC ON/OFF VCC D2 VCC D2 A8 VCC P1.6 VCC P1.2 VPC A9 A13 C41 104 D6 R121 4K7 D36 1N4007 D1 A10 R122 22/2W 15. KHOÁI LAÄP TRÌNH VI ÑIEÀU KHIEÅN A7 D4 P1.6 A6 R116 100/2W D3D3 VCC D3 R115 10K D43 1N4007 R123 1K2 D7 D37 1N4007 U36 SLAVE 40PIN 29 30 40 20 31 19 18 9 39 38 37 36 35 34 33 32 1 2 3 4 5 6 7 8 21 22 23 24 25 26 27 28 10 11 12 13 14 15 16 17 PSEN ALE VCC GND EA X1 X2 RST P0.0/AD0 P0.1/AD1 P0.2/AD2 P0.3/AD3 P0.4/AD4 P0.5/AD5 P0.6/AD6 P0.7/AD7 P1.0 P1.1 P1.2 P1.3 P1.4 P1.5 P1.6 P1.7 P2.0/A8 P2.1/A9 P2.2/A10 P2.3/A11 P2.4/A12 P2.5/A13 P2.6/A14 P2.7/A15 P3.0/RXD P3.1/TXD P3.2/INT0 P3.3/INT1 P3.4/T0 P3.5/T1 P3.6/WR P3.7/RD VCC Q19 C1815 P1.3 VCC C44 33p VPP A4 P1.6 Q24 C1815 R112 1K2 A14 A8 P1.3 C50 100u D4 P1.5 A11 C51 104 C49 100u A3 C45 104 D1 D34 6V7 D0 A1 P3.7 R110 3K3 D6 R118 1K2 VPP ON/OFF VCC VCC P1.1 VCC VPP D2 R107 10K 1 2 3 4 5 6 7 8 9 A2 P1.5 A10 P1.2 D7 D38 13V U33 MAX232 1 3 4 5 16 15 26 12 9 11 10 13 8 14 7 C1+ C1- C2+ C2- VCC GND V+V- R1OUT R2OUT T1IN T2IN R1IN R2IN T1OUT T2OUT D1 R113 4K7 C35 10u D0 D2 P1.0 VCC A0 P1.4 VPC D5 P1.5 C46 104 VCC A14 P3.7 Q20 C1815 VCCVDD D7 D6 P1.1 U34 89C52 29 30 40 20 31 19 18 9 39 38 37 36 35 34 33 32 1 2 3 4 5 6 7 8 21 22 23 24 25 26 27 28 10 11 12 13 14 15 16 17 PSEN ALE VCC GND EA X1 X2 RST P0.0/AD0 P0.1/AD1 P0.2/AD2 P0.3/AD3 P0.4/AD4 P0.5/AD5 P0.6/AD6 P0.7/AD7 P1.0 P1.1 P1.2 P1.3 P1.4 P1.5 P1.6 P1.7 P2.0/A8 P2.1/A9 P2.2/A10 P2.3/A11 P2.4/A12 P2.5/A13 P2.6/A14 P2.7/A15 P3.0/RXD P3.1/TXD P3.2/INT0 P3.3/INT1 P3.4/T0 P3.5/T1 P3.6/WR P3.7/RD VCC C43 33p C42 10u VPC C38 104 P3 TO PC 5 9 4 8 3 7 2 6 1 A11 C37 104 Q21 C1815 P1.4 R119 1K2 J90A DC 16V 1 2 C47 104 C40 10u D7 R114 4K7 D40 1N4007 D0 C36 10u U37 SLAVE 20PIN 12 13 14 15 16 17 18 19 4 5 20 101 2 3 6 7 8 9 11 P1.0/AIN0 P1.1/AIN1 P1.2 P1.3 P1.4 P1.5 P1.6 P1.7 X2 X1 VCC GNDRST/VPP P3.0/RXD P3.1/TXD P3.2/INT0 P3.3/INT1 P3.4/T0 P3.5/T1 P3.7 D41 LED C39 10u U38 7805 1 3 2 VIN VOUT GND D5 P1.4 Q22 C1815 • Sơ đồ bố trí linh kiện: Chương 1: Cấu hình của mô hình thí nghiệm vi điều khiển. Giáo trình thực hành vi xử lý. 10 Biên soạn: Phạm Quang Trí • Giới thiệu chung: Các thành phần chính của bộ lập trình là port nối tiếp, nguồn cung cấp và bộ vi điều khiển trung tâm. Dữ liệu nối tiếp được gửi và nhận từ cổng COM 9 chân và chuyển đổi từ mức logic TTL sang mức tín hiệu RS232 hoặc chuyển đổi từ mức tín hiệu RS232 sang mức logic TTL bằng vi mạch MAX232. Một sợi cáp port nối tiếp được dùng để nối cổng COM của khối lập trình vi điều khiển với cổng COM của máy tính (cổng RS232). Nguồn cung cấp 16 VDC được cung cấp cho khối lập trình thông qua đầu nối J90A và công tắc SW18 (POWER SW). Các diode D36, D37, D40, D42 làm nhiệm vụ chỉnh lưu điện áp và chống hiện tượng sai cực tính nguồn khi ta dùng nguồn DC cung cấp cho khối (Lưu ý: ta có thể sử dụng nguồn DC 16V hoặc AC 12V để cung cấp cho khối). Điện áp này là điện áp chưa được ổn áp và được gọi là VDD. VDD được dùng để tạo ra ba mức điện áp khác nhau là VCC, VPP và VPC. Điện áp VCC có mức điện áp là 5V được tạo ra từ vi mạch ổn áp LM7805 để cung cấp cho bộ vi điều khiển trung tâm U34 hoạt động. Điện áp VPP có mức điện áp là 0V, 5V hoặc 12V theo sự điều khiển của bộ vi điều khiển trung tâm. Điện áp VPC có mức điện áp là 0V, 5V hoặc 6.5V theo sự điều khiển của bộ vi điều khiển trung tâm. Các loại điện áp khác nhau này được yêu cầu trong suốt quá trình lập trình cho các chip vi điều khiển. Trung tâm của khối lập trình này là bộ vi điều khiển trung tâm U34 và phần mềm điều khiển của nó. Phần mềm này có khả năng nhận dạng chip vi điều khiển được đưa vào mạch thông qua một trong hai socket ZIF là SLAVE 40 PIN và SLAVE 20 PIN. Các thông tin này được sang phần mềm MCU Program Loader trên máy tính để xác lập các thông số hoạt động điều khiển. Khi một tập tin chương trình được gửi đi từ máy tính, các thông tin này sẽ được bộ vi điều khiển trung tâm tải đến chip vi điều khiển cần lập trình bằng các tín hiệu địa chỉ, dữ liệu và điều khiển tương thích. Sau khi việc lập trình đã hoàn tất thì các dữ liệu đã được ghi vào này sẽ được gửi ngược trở lại máy tính để kiểm tra lỗi trong quá trình nạp chip, từ đó đưa ra thông báo quá trình lập trình thành công hay có lỗi. Bạn cần phải chú ý đến một điểm rất quan trọng là luôn luôn phải tắt nguồn cung cấp cho khối lập trình vi điều khiển trước khi tiến hành tháo/gắn chip vi điều khiển vào socket nhằm tránh gây hỏng chip vi điều khiển này. • Ứng dụng: Khối lập trình vi điều khiển này kết hợp với phần mềm MCU Program Loader trên máy tính có khả năng lập trình cho các loại chip sau: o Loại chip 40 chân (được gắn vào socket SLAVE 40 PIN): AT89C51, AT89LV51, AT89C52, AT89LV52, AT89C55, AT89LV55, AT89C55WD, AT89S51, AT89LS51, AT89S52, AT89LS52, AT89S53, AT89LS53, AT89S8252, AT89LS8252. o Loại chip 20 chân (được gắn vào socket SLAVE 20 PIN): AT89C1051, AT89C2051, AT89C4051. [...]... trình th c hành vi x lý 11 Biên so n: Ph m Quang Trí Chương 1: C u hình c a mơ hình thí nghi m vi i u khi n • Gi i thi u chung: Kh i vi i u khi n ư c thi t k cho phép ngư i s d ng thu n ti n trong vi c ti n hành thí nghi m i v i các lo i vi i u khi n h 89 c a hãng Atmel m i ch làm vi c kh thi, g m các lo i vi i u khi n 40 chân và các vi i u khi n 20 chân o o Thí nghi m vi i u khi n 20 chân: vi i u khi n... ln ph i t t ngu n cung c p cho kh i vi i u khi n trư c khi ti n hành tháo/g n chip vi i u khi n vào socket nh m tránh gây h ng chip vi i u khi n này Giáo trình th c hành vi x lý 12 Biên so n: Ph m Quang Trí Chương 1: C u hình c a mơ hình thí nghi m vi i u khi n • ng d ng: o o o o 1.2.3 Thí nghi m ng d ng các lo i vi i u khi n 20 chân và 40 chân Thí nghi m c u hình vi i u khi n s d ng b nh bên trong... ra m t xung kích có m c logic th p (ho c kích b ng c nh xung) cho các kh i khác trên mơ hình thí nghi m, ví d như cung c p xung m ho c xung ng t cho vi i u khi n Lưu ý kh i này ho t • u n i J114 (POWER) ng d ng: o o o 1.2.9 ng ta c n ph i c p ngu n cho kh i thơng qua Thí nghi m phương pháp k t n i nút nh n v i vi i u khi n Thí nghi m ng d ng i u khi n thi t b b ng nút nh n T o các tín hi u xung có... so n: Ph m Quang Trí Chương 1: C u hình c a mơ hình thí nghi m vi i u khi n • Sơ • Gi i thi u chung: b trí linh ki n: Kh i t o xung trên mơ hình s d ng vi m ch LM555 t o ra các xung vng cung c p cho các ng d ng l p trình i u khi n c n n Xung vng ư c l y ra t i u n i J33 (PULSE OUT), t n s xung ư c i u ch nh b i bi n tr R93 và ph n trăm xung m c cao (ho c th p) ư c i u ch nh b i bi n tr R96 Lưu ý •... hành vi x lý 31 Biên so n: Ph m Quang Trí Chương 1: C u hình c a mơ hình thí nghi m vi i u khi n • Gi i thi u chung: Trong trư ng h p các port xu t nh p c a vi i u khi n c n ph i i u khi n nh ng thi t b cơng su t l n ho c ph i i u khi n cùng lúc nhi u thi t b trên m t port Lúc này òi h i c n ph i có các b khu ch i dòng i n ngõ ra t i các port xu t nh p c a vi i u khi n thì nó m i có th áp ng ư c cơng vi. .. giúp sinh vi n có th nghiên c u, thi t k và tìm hi u v ngun lý chuy n i tín hi u tương t sang tín hi u s và ng d ng c a các vi m ch ADC trong th c t T ó có th d dàng và thu n ti n trong vi c thi t k ư c các h th ng chuy n i tín hi u tương t sang tín hi u s dùng vi i u khi n k t h p vi m ch ADC Giáo trình th c hành vi x lý 35 Biên so n: Ph m Quang Trí Chương 1: C u hình c a mơ hình thí nghi m vi i u khi... li u t i vi i u khi n s do kh i vi i u khi n qu n lý thơng qua hai tín hi u RD\ và WR\ T n s l y m u c a chip ADC là 750KHz ư c l y t b chia t n trong kh i vi i u khi n Lưu ý kh i này ho t • ng ta c n ph i c p ngu n cho kh i thơng qua u n i D34 (POWER) ng d ng: o o Thí nghi m phương pháp k t n i vi m ch ADC v i vi i u khi n Thí nghi m phương pháp chuy n i d ng tín hi u t tương t sang s s d ng vi m ch... n ti n hơn trong vi c thi t k và thí nghi m h th ng vi i u khi n s d ng b nh trong ho c s d ng b nh ngồi th c hi n vi c chuy n i b nh s d ng (trong hay ngồi) ta thay i Jump J36 (INT/EXT), n i COM-INT: là s d ng b nh trong; n i COM-EXT: là s d ng b nh ngồi T m a ch c a ROM: 0000H – 1FFFH; RAM chu n: 0000H – 1FFFH i v i RAM, n u ta ch có m t vi m ch (RAM chu n) ta s n i J34 (CS6264) xu ng GND, còn n... hình thí nghi m ã thi t k s n m t vi m ch ADC 0809, là m t vi m ch chuy n i tương t – s 8 bit có 8 ngõ vào tín hi u tương t , th c hi n vi c chuy n i tín hi u này J112 (ANALOG IN): các ngõ vào tín hi u tương t (có 8 ngõ vào); J113 (DIGITAL OUT): ngõ ra tín hi u s 8 bit; J118 (CS 0809): ngõ vào cho phép ADC ho t ng Vi c ch n l a ngõ vào c a tín hi u tương t s do kh i vi i u khi n quy t nh thơng qua các... thơng qua u n i J109 (POWER) ng d ng: o o o ư c s d ng th c hi n vi c k t n i gi a các thi t b ngo i vi cơng su t cao v i chip vi i u khi n Khu ch i dòng i n i u khi n cung c p cho các thi t b cơng su t cao Lưu ý kh i này là kh i khu ch i m o Giáo trình th c hành vi x lý 32 Biên so n: Ph m Quang Trí Chương 1: C u hình c a mơ hình thí nghi m vi i u khi n 1.2.17 Kh i gi i mã: • Sơ ngun lý: 4 KHỐI GIẢI MÃ . các loại vi điều khiển họ 89 của hãng Atmel ở mọi chế độ làm vi c khả thi, gồm các loại vi điều khiển 40 chân và các vi điều khiển 20 chân. o Thí nghiệm vi điều khiển 20 chân: vi điều khiển. liên tục số lượng xung (0000 – 9999) được đưa vào chân T1 của vi điều khiển và hiển thị số lượng xung này lên các LED 7 đoạn 204 • Bài 2: Chương trình điều khiển đo tần số của xung (0000 – 9999,. chân T1 của vi điều khiển và hiển thị tần số của xung này lên các LED 7 đoạn 207 • Bài 3: Chương trình điều khiển đo độ rộng của xung (đơn vị là ms) được đưa vào chân INT0 của vi điều khiển