Chương 1: Giới thiệu chung về bộ vi xử lý. Trường ðH Công nghiệp Tp. Program Memory: Bộ nhớ chương trình. EEPROM: Bộ nhớ EEPROM.
I/O Ports: Các port xuất/nhập. Instruction Decoder: Bộ giải mã lệnh. ALU: ðơn vị logic và số học. Accumulator: Thanh ghi tích lũy.
Control Logic: ðiều khiển logic. Program Counter: Bộ ñếm chương trình. Instructions/Addresses: Các lệnh / ñịa chỉ. LỰA CHỌN BỘ VI ðIỀU KHIỂN KHI THIẾT KẾ: Có bốn họ vi ñiều khiển thông dụng trên thị trường hiện nay là: 68xxx của Motorola, 80xxx của Intel, Z8xx của Zilog và PIC16xxx của Microchip Technology.
Mỗi loại vi ñiều khiển trên ñều có một tập lệnh và thanh ghi riêng nên chúng không tương thích lẫn nhau. Vậy khi ta tiến hành thiết kế một hệ thống sử dụng vi ñiều khiển thì ta cần dựa trên những tiêu chuẩn nào? Có ba tiêu chẩn chính: • Tiêu chuẩn thứ nhất là: ðáp ứng yêu cầu tính toán một cách hiệu quả và kinh tế. Do vậy, trước tiên ta cần phải xem xét bộ vi ñiều khiển 8 bit, 16 bit hay 32 bit là thích hợp nhất. Một số tham số kỹ thuật cần ñược cân nhắc khi chọn lựa là: o Tốc ñộ: tốc ñộ lớn nhất mà vi ñiều khiển hỗ trợ là bao nhiêu.
o Kiểu IC: là kiểu 40 chân DIP, QFP hay là kiểu ñóng vỏ khác (DIP: vỏ dạng hai hàng chân, QFP: vỏ vuông dẹt). Kiểu ñóng vỏ rất quan trọng khi có yêu cầu về không gian, kiểu lắp ráp và tạo mẫu thử cho sản phẩm cuối cùng. o Công suất tiêu thụ: là một tiêu chuẩn cần ñặc biệt lưu ý nếu sản phẩm dùng pin hoặc ñiện áp lưới. o Dung lượng bộ nhớ ROM và RAM tích hợp sẵn trên chip.
o Số chân vào/ra và bộ ñịnh thời trên chip. o Khả năng dễ dàng nâng cao hiệu suất hoặc giãm công suất tiêu thụ. o Giá thành trên một ñơn vị khi mua số lượng lớn. Vì ñây là vấn ñề có ảnh hưởng ñến giá thành cuối cùng của sản phẩm.
• Tiêu chuẩn thứ hai là: Có sẵn các công cụ phát triển phần mềm, chẳng hạn như các chương trình mô phỏng, trình biên dịch, trình hợp dịch và gỡ rối. • Tiêu chuẩn thứ ba là: Khả năng ñáp ứng về số lượng ở hiện tại cũng như ở tương lai. ðối với một số nhà thiết kế thì tiêu chuẩn này thậm chí còn quan trọng hơn cả hai tiêu chuẩn trên. Giaùo trình Vi xöû lyù.
7 Bieân soaïn: Phaïm Quang Trí KHOA CÔNG NGHỆ ĐIỆN TỬ BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP GIÁO TRÌNH VI XỬ LÝ Chương 2: Phần cứng chip vi ñiều khiển 8051. Trường ðH Công nghiệp Tp. CHƯƠNG 2 PHẦN CỨNG CHIP VI ðIỀU KHIỂN 8051 I. Giới thiệu chung: MCS-51 là họ vi ñiều khiển của hãng Intel.
Vi mạch tổng quát của họ MCS-51 là chip 8051. Chip 8051 có một số ñặc trưng cơ bản sau: - Bộ nhớ chương trình bên trong: 4 KB (ROM). - Bộ nhớ dữ liệu bên trong: 128 byte (RAM). - Bộ nhớ chương trình bên ngoài: 64 KB (ROM).
- Bộ nhớ dữ liệu bên ngoài: 64 KB (RAM). - 4 port xuất nhập (I/O port) 8 bit. - 2 bộ ñịnh thời 16 bit. - Mạch giao tiếp nối tiếp.
- Bộ xử lý bit (thao tác trên các bit riêng lẻ). - 210 vị trí nhớ ñược ñịnh ñịa chỉ, mỗi vị trí 1 bit. - Nhân / Chia trong 4 µs. Ngoài ra, trong họ MCS-51 còn có một số chip vi ñiều khiển khác có cấu trúc tương ñương như: Chip ROM trong RAM trong Bộ ñịnh thời 8031 0 KB 128 byte 2 8032 0 KB 256 byte 3 8051 4 KB PROM 128 byte 2 8052 8 KB PROM 256 byte 3 8751 4 KB UV-EPROM 128 byte 2 8752 8 KB UV-EPROM 256 byte 3 8951 4 KB FLASH ROM 128 byte 2 8952 8 KB FLASH ROM 256 byte 3 2.
Các phiên bản của chip vi ñiều khiển 8051: 2.1 Bộ vi ñiều khiển 8031: 8031 là một phiên bản khác của họ 8051. Chip này thường ñược coi là 8051 không có ROM trên chip. ðể có thể dùng ñược chip này cần phải bổ sung thêm ROM ngoài chứa chương trình cần thiết cho 8031. 8051 có chương trình ñược chứa ở ROM trên chip bị giới hạn ñến 4KB, còn ROM ngoài của 8031 thì có thể lên ñến 64KB.
Tuy nhiên, ñể có thể truy cập hết bộ nhớ ROM ngoài thì cần dùng thêm hai cổng (Port 0 và Port 2) , do vậy chỉ còn lại có hai cổng (Port 1 và Port 3) ñể sử dụng. Nhằm khắc phục vấn ñề này, chúng ta có thể bổ sung thêm cổng vào/ra cho 8031.2 Bộ vi ñiều khiển 8052: 8052 là một phiên bản của họ 8051. 8052 có tất cả các thông số kỹ thuật của 8051, ngoài ra còn có thêm 128 byte RAM, 4KB ROM và một bộ ñịnh thời nữa. Như vậy, 8052 có tổng cộng 256 byte RAM, 8KB ROM và ba bộ ñịnh thời.
Giáo trình Vi xử lý. 8 Biên soạn: Phạm Quang Trí Chương 2: Phần cứng chip vi ñiều khiển 8051. Trường ðH Công nghiệp Tp. ðặc tính kỹ thuật 8031 8051 8052 ROM trên chip (KB) 0 4 8 RAM trên chip (byte) 128 128 256 Bộ ñịnh thời 2 2 3 Chân vào/ra 32 32 32 Cổng nối tiếp 1 1 1 Nguồn ngắt 5 5 6 Như bảng thông số trên ta thấy 8051 là một trường hợp riêng của 8052.
Mọi chương trình viết cho 8051 ñều có thể chạy ñược trên 8052 nhưng ñiều ngược lại có thể là không ñúng.3 Bộ vi ñiều khiển 8751: Chip 8751 chỉ có 4KB bộ nhớ UV-EPROM trên chip. ðể sử dụng chip này cần phải có thiết bị lập trình PROM và thiết bị xoá UV-EPROM. Do ROM trên chip của 8751 là UV-EPROM, nên cần phải mất khoảng 20 phút ñể xoá 8751 trước khi ñược lập trình. Vì ñây là quá trình mất nhiều thời gian nên nhiều nhà sản xuất ñã cho ra phiên bản Flash ROM và UV-RAM.4 Bộ vi ñiều khiển AT8951 của Atmel Corporation: AT8951 là phiên bản 8051 có ROM trên chip là bộ nhớ Flash.
Phiên bản này rất thích hợp cho các ứng dụng nhanh vì bộ nhớ Flash có thể ñược xóa trong vài giây. Dĩ nhiên là ñể dùng AT8951 cần phải có thiết bị lập trình PROM hỗ trợ bộ nhớ Flash nhưng không cần ñến thiết bị xóa ROM vì bộ nhớ Flash ñược xóa bằng thiết bị lập trình PROM. ðể tiện sử dụng, hiện nay hãng Atmel ñang nghiên cứu một phiên bản của AT8951 có thể ñược lập trình qua cổng COM của máy tính PC và như vậy sẽ không cần ñến thiết bị lập trình PROM. Ký hiệu ROM RAM I/O Timer Ngắt Vcc Số chân IC AT89C51 4KB 128 32 2 5 5V 40 AT89LV51 4KB 128 32 2 5 3V 40 AT89C1051 1KB 64 15 1 3 3V 20 AT89C2051 2KB 128 15 2 5 3V 20 AT89C52 8KB 256 32 3 6 5V 40 AT89LV52 8KB 256 32 3 6 3V 40 2.5 Bộ vi ñiều khiển DS5000 của Dallas Semiconductor: Một phiên bản phổ biến khác nữa của 8051 là DS5000 của hãng Dallas Semiconductor.
Bộ nhớ ROM trên chip của DS5000 là NV-RAM. DS5000 có khả năng nạp chương trình vào ROM trên chip trong khi nó vẫn ở trong hệ thống mà không cần phải lấy ra. Cách thực hiện là dùng qua cổng COM Giáo trình Vi xử lý. 9 Biên soạn: Phạm Quang Trí Chương 2: Phần cứng chip vi ñiều khiển 8051.
Trường ðH Công nghiệp Tp. của máy tính PC. ðây là một ñiểm mạnh rất ñược ưa chuộng. Ngoài ra, NV-RAM còn có ưu việt là cho phép thay ñổi nội dung RAM theo từng byte mà không cần phải xóa hết trước khi lập trình như bộ nhớ EPROM.
Ký hiệu ROM RAM I/O Timer Ngắt Vcc Số chân IC DS5000-8 8KB 128 32 2 6 5V 40 DS5000-32 32KB 128 32 2 6 5V 40 DS5000T-8 8KB 128 32 2 6 5V 40 DS5000T-32 32KB 128 32 2 6 5V 40 ðiểm ñặc biệt là các chip có chữ “T” theo sau ký hiệu “5000” có nghĩa là chip ñó có thiết kế thêm một ñồng hồ thời gian thực (RTC: Real Time Clock) bên trong. Lưu ý ñồng hồ thời gian thực RTC hoàn toàn khác với bộ ñịnh thời Timer. RTC tạo và lưu giữ thời gian của ngày (giờ/phút/giây) và ngày tháng (ngày/tháng/năm) trên thực tế ngay cả khi không có nguồn cung cấp.6 Bộ vi ñiều khiển P89V51xx của Philips Corporation: ðây là một phiên bản cải tiến sử dụng CPU là bộ vi ñiều khiển 80C51 với nhiều tính năng vượt trội: dung lượng ROM/RAM trên chip rất lớn, 3 Timer 16 bit + 1 Watch-dog Timer, 2 thanh ghi DPTR, 8 nguồn ngắt, PWM (Pulse Width Modulator), SPI (Serial Peripheral Interface) và ñặc biệt là bộ nhớ chương trình trên chip có tính năng ISP (In-System Programming) và IAP (In-Application Programming),… II. CÁC CHÂN CỦA CHIP 8051: 1.
Sơ ñồ khối và chức năng các khối của chip 8051: Giáo trình Vi xử lý. 10 Biên soạn: Phạm Quang Trí Chương 2: Phần cứng chip vi ñiều khiển 8051. Trường ðH Công nghiệp Tp. - CPU (Central Processing Unit): ðơn vị xử lý trung tâm → tính toán và ñiều khiển quá trình hoạt ñộng của hệ thống.
- OSC (Oscillator): Mạch dao ñộng → tạo tín hiệu xung clock cung cấp cho các khối trong chip hoạt ñộng. - Interrupt control: ðiều khiển ngắt → nhận tín hiệu ngắt từ bên ngoài (INT0\, INT1\), từ bộ ñịnh thời (Timer 0, Timer 1) và từ cổng nối tiếp (Serial port), lần lượt ñưa các tín hiệu ngắt này ñến CPU ñể xử lý. - Other registers: Các thanh ghi khác → lưu trữ dữ liệu của các port xuất/nhập, trạng thái làm việc của các khối trong chip trong suốt quá trình hoạt ñộng của hệ thống. - RAM (Random Access Memory): Bộ nhớ dữ liệu trong chip → lưu trữ các dữ liệu.
- ROM (Read Only Memory): Bộ nhớ chương trình trong chip → lưu trữ chương trình hoạt ñộng của chip. - I/O ports (In/Out ports): Các port xuất/nhập → ñiều khiển việc xuất nhập dữ liệu dưới dạng song song giữa trong và ngoài chip thông qua các port P0, P1, P2, P3. - Serial port: Port nối tiếp → ñiều khiển việc xuất nhập dữ liệu dưới dạng nối tiếp giữa trong và ngoài chip thông qua các chân TxD, RxD. - Timer 0, Timer 1: Bộ ñịnh thời 0, 1 → dùng ñể ñịnh thời gian hoặc ñếm sự kiện (ñếm xung) thông qua các chân T0, T1.
- Bus control: ðiều khiển bus → ñiều khiển hoạt ñộng của hệ thống bus và việc di chuyển thông tin trên hệ thống bus. - Bus system: Hệ thống bus → liên kết các khối trong chip lại với nhau. Sơ ñồ chân và chức năng các chân của chip 8051: Giáo trình Vi xử lý. 11 Biên soạn: Phạm Quang Trí Chương 2: Phần cứng chip vi ñiều khiển 8051.
Trường ðH Công nghiệp Tp.7) có số chân từ 32 – 39. - Port 0 có hai chức năng: • Port xuất nhập dữ liệu (P0.7) → không sử dụng bộ nhớ ngoài.