GIÁO TRÌNH VI XỬ LÝ - VI ĐIỀU KHIỂN
Tổng quan về giáo trình (250-300 từ)
Giáo trình Vi xử lý - Vi điều khiển là tài liệu học tập và nghiên cứu lưu hành nội bộ do ThS. Huỳnh Ngọc Mai chủ biên, được Khoa Điện Tử thuộc Trường Cao đẳng Kỹ thuật Lý Tự Trọng (Ủy ban Nhân dân Thành phố Hồ Chí Minh) nghiệm thu và ban hành ngày 20/10/2010. Môn học giữ vị trí kỹ thuật chuyên ngành then chốt trong chương trình đào tạo bậc Cao đẳng Kỹ thuật (bao gồm hệ chính quy và hệ liên thông) của ngành Công nghệ Kỹ thuật Điện tử và kỹ thuật tự động hóa.
Mục tiêu đào tạo của giáo trình tập trung trang bị cho sinh viên hệ thống kiến thức cơ sở về cấu trúc phần cứng vi xử lý và vi điều khiển, cơ chế vận hành của hệ thống bus, phương pháp giải mã bộ nhớ, đồng thời cung cấp đầy đủ tập lệnh hợp ngữ (Assembly) phục vụ lập trình điều khiển thiết bị ngoại vi. Đây là nền tảng lý thuyết trực tiếp cho các bài thí nghiệm, thực hành trên trang thiết bị hiện có tại xưởng thực hành của nhà trường.
Về mặt cấu trúc, tài liệu được tổ chức theo tiến trình từ hệ vi xử lý độc lập sang hệ vi điều khiển vi mạch tích hợp: phần đầu phân tích lý thuyết cơ sở vi xử lý thông qua vi mạch CPU Z80 của hãng Zilog; phần tiếp theo đi sâu vào kiến trúc vi điều khiển đơn chip họ MCS-51 (tiêu biểu là chip 89C51 của hãng Atmel). Điểm đặc sắc của giáo trình là bám sát chương trình khung kỹ thuật ứng dụng, kết hợp chặt chẽ giữa sơ đồ logic phần cứng (sơ đồ chân, bảng thanh ghi, vi mạch giải mã 74138, vi mạch giao tiếp PPI 8255) với các đoạn mã hợp ngữ mẫu và phần phụ lục tóm tắt toàn bộ tập lệnh vi điều khiển hỗ trợ tra cứu kỹ thuật.
Nội dung kiến thức cốt lõi (500-600 từ)
Các chương/chủ đề chính
Giáo trình có kết cấu gồm 5 chương lý thuyết, các bài thực hành giải thuật và hệ thống phụ lục tra cứu:
- Chương 1: Vi xử lý Z80 (Bài 1 đến Bài 4): Trình bày sơ đồ khối hệ vi xử lý, cấu trúc bên trong CPU (tập thanh ghi đa năng A, B, C, D, E, H, L; thanh ghi con trỏ lệnh PC, con trỏ ngăn xếp SP; khối số học và logic ALU; khối giải mã lệnh bằng microcode ROM); khảo sát 40 chân và sơ đồ logic của CPU Z80 (Zilog); phân tích tập lệnh và 10 phương pháp định vị địa chỉ; quy trình các bước thi hành một lệnh máy (Op-code fetch); các phương pháp giải mã địa chỉ dùng cổng logic và vi mạch 74138 cho bộ nhớ EPROM 2716, RAM 6116; khảo sát chip giao tiếp song song lập trình được PPI 8255 (Intel) và phân loại bộ nhớ bán dẫn (MROM, PROM, EPROM, EEPROM, Flash ROM, SRAM, DRAM).
- Chương 2: Họ Vi Điều Khiển MCS-51 (Bài 5 và Bài 6): Giới thiệu tiến trình phần cứng họ MCS-51 (80C31, 80C51, 87C51, 89C51) và họ MCS-52; khảo sát chi tiết sơ đồ khối, 40 chân của chip 89C51 với 24 chân tác dụng kép (Port 0 đa hợp địa chỉ/dữ liệu AD0–AD7, Port 1 thuần I/O, Port 2 dẫn địa chỉ cao A8–A15, Port 3 tích hợp các chức năng ngắt cứng, timer và truyền thông nối tiếp; các chân điều khiển PSEN, ALE, EA, RST); tổ chức không gian bộ nhớ phân tách gồm RAM nội 256 byte và khả năng định tuyến 64 Kbyte bộ nhớ chương trình, 64 Kbyte bộ nhớ dữ liệu mở rộng bên ngoài.
- Chương 3: Tập Lệnh Của Vi Điều Khiển (Bài 7 đến Bài 9): Hệ thống hóa khái niệm chương trình, lệnh, mã gợi nhớ; phân tích 8 kiểu định vị địa chỉ (thanh ghi, trực tiếp, gián tiếp, tức thời, tương đối, tuyệt đối, dài, chỉ số) và 5 nhóm lệnh thao tác của họ MCS-51 (nhóm lệnh di chuyển dữ liệu 8-bit, nhóm lệnh số học, nhóm lệnh logic, nhóm lệnh rẽ nhánh chuyển quyền điều khiển và nhóm lệnh xử lý bit).
- Chương 4: Timer - Counter Của Vi Điều Khiển (Bài 10): Nguyên lý hoạt động và phương pháp lập trình điều khiển mạch định thời/bộ đếm thông qua thanh ghi chế độ TMOD và thanh ghi điều khiển TCON; các chế độ hoạt động đếm xung nội, đếm sự kiện ngoại, xử lý cờ tràn; phân tích hoạt động của Timer 2 trên họ MCS-52.
- Chương 5: Hoạt Động Ngắt (Bài 11 và Bài 12): Cấu trúc phân cấp và vector ngắt của 5 nguồn ngắt tiêu chuẩn thông qua thanh ghi cho phép ngắt IE và thanh ghi mức ưu tiên ngắt IP; quy trình xử lý phục vụ ngắt; chuyên đề đọc thêm về kỹ thuật truyền dữ liệu nối tiếp thông qua thanh ghi SCON và SBUF.
- Tiến trình logic: Nội dung phát triển tuần tự từ mô hình kiến trúc vi xử lý mở (CPU kết hợp bus và vi mạch phụ trợ) sang mô hình vi điều khiển SoC tích hợp nguyên khối, tiếp nối bằng ngôn ngữ hợp ngữ điều khiển, kết thúc ở các module ngoại vi chuyên sâu (Timer, Counter, Interrupt, Serial I/O).
Kiến thức nền tảng được xây dựng
Giáo trình xác lập hệ thống lý thuyết phần cứng máy tính và kỹ thuật số chuyên sâu:
- Hệ thống lý thuyết nền tảng (Fundamental theories): Nguyên lý hoạt động của cấu trúc 3 đường bus (Address Bus, Data Bus, Control Bus); phân loại kiến trúc CPU theo tập lệnh CISC và RISC; cơ chế quản lý ngăn xếp (Stack) theo nguyên tắc LIFO (Last In First Out) với quy tắc giảm địa chỉ trên Z80 và tăng địa chỉ trên 8051; cơ chế làm tươi (Refresh) của bộ nhớ RAM động (DRAM) theo định kỳ 2, 4 hoặc 8 ms.
- Nguyên lý cốt lõi (Core principles): Cơ chế thực thi lệnh theo các trạng thái xung nhịp máy (Machine Cycle M1, T-states); kỹ thuật đa hợp và giải đa hợp bus địa chỉ/dữ liệu bằng tín hiệu ALE và IC chốt; phương pháp phân định không gian nhớ thông qua tín hiệu chọn chip CE/CS và giải mã địa chỉ cục bộ/toàn phần bằng vi mạch 74138.
- Mô hình cấu trúc thiết yếu (Essential frameworks): Kiến trúc Harvard phân tách hoàn toàn giữa bộ nhớ chương trình (Code) và bộ nhớ dữ liệu (Data); quy hoạch bản đồ bộ nhớ RAM nội 89C51 gồm 4 bank thanh ghi R0–R7 (00H–1FH), vùng RAM định địa chỉ từng bit (20H–2FH), RAM đa dụng (30H–7FH) và 21 thanh ghi chức năng đặc biệt SFR (80H–FFH); mô hình ghép nối ngoại vi theo phương thức I/O-mapped và Memory-mapped qua các tín hiệu RD, WR, MERQ, IORQ.
Kỹ năng phát triển
- Kỹ năng kỹ thuật (Technical skills): Thiết kế sơ đồ nguyên lý ghép nối CPU Z80 với bộ nhớ bán dẫn (2716, 6116) và vi mạch giao tiếp PPI 8255; cấu hình từ điều khiển (Control Word) để thiết lập chế độ vào/ra cho các cổng PA, PB, PC; thiết lập giá trị khởi tạo cho các thanh ghi SFR (TMOD, TCON, IE, IP, SCON, DPTR, SP).
- Kỹ năng phân tích (Analytical skills): Phân tích giản đồ thời gian đọc/ghi tín hiệu bus; tính toán giá trị nạp đếm cho bộ định thời (Timer) dựa trên tần số thạch anh dao động (12 MHz – 24 MHz); tính toán khoảng cách địa chỉ offset trong định vị tương đối (PC mới = PC cũ + 2 + Operand) trong phạm vi -128 đến +127 byte.
- Năng lực ứng dụng thực tế (Practical competencies): Xây dựng lưu đồ giải thuật và viết chương trình hợp ngữ điều khiển quét LED 7 đoạn theo quy luật thập phân, giải thuật quét ma trận phím, thuật toán tìm giá trị cực đại trong khối 256 ô nhớ, cùng các phép toán nhân/chia số học nhiều byte.
Phương pháp giảng dạy và học tập (300-350 từ)
Giáo trình triển khai phương pháp tiếp cận sư phạm kỹ thuật vi điện tử thực nghiệm. Khái niệm lý thuyết trừu tượng được trực quan hóa thông qua sơ đồ logic khối, bảng chân trị và sơ đồ chân thực tế của từng IC (CPU Z80, PPI 8255, VĐK 89C51). Các bước hoạt động bên trong của phần cứng – chẳng hạn chu trình nạp lệnh Op-code Fetch hay quá trình giải đa hợp bus của tín hiệu ALE – được diễn giải tuần tự theo từng chu kỳ xung nhịp và mức logic (0 và 1) của các đường tín hiệu điều khiển RD, WR, MERQ, IORQ.
Nội dung lý thuyết đi liền với các case study và bài tập lập trình mẫu có cấu trúc hoàn chỉnh:
- Chương trình điều khiển công tắc tại Port B và xuất hiển thị ra Port A thông qua vi mạch 8255 PPI tại địa chỉ cổng 4000h–4003h.
- Thuật toán nhân hai giá trị chứa trong thanh ghi A và B, lưu kết quả 16-bit vào cặp thanh ghi HL của CPU Z80.
- Thuật toán chia số học có thương số đặt ở H và số dư đặt ở L.
- Chương trình chuyển đổi một byte số Hexa sang mã hiển thị LED 7 đoạn thông qua bảng tra (Table Lookup) kết hợp con trỏ chỉ số IX/IY và chương trình con trễ thời gian (Delay).
Các bài tập thực hành yêu cầu người học vẽ lưu đồ giải thuật chi tiết trước khi chuyển đổi sang mã máy hoặc mã gợi nhớ. Tài liệu cung cấp các bài toán mở rộng như điều khiển hệ thống 2 đèn LED đếm tăng thập phân và mạch ma trận nút nhấn kết hợp các đường Port A và Port C.
Phương pháp đánh giá bám sát năng lực phân tích mã lệnh (xác định chế độ định vị địa chỉ, dung lượng byte mã máy, tác động lên các cờ trạng thái trong thanh ghi F hoặc PSW) và khả năng thiết kế mạch ghép nối phần cứng chuẩn xác. Đối với tự học, giáo trình định hướng người học sử dụng hệ thống câu hỏi, bài tập giải thuật ở cuối mỗi bài học và đối chiếu với phần phụ lục tóm tắt tập lệnh để tự kiểm tra tiến trình tích lũy kiến thức.
Điểm nổi bật và cập nhật (250-300 từ)
Giáo trình Vi xử lý - Vi điều khiển phản ánh bước chuyển đổi công nghệ vi điều khiển tại thời điểm biên soạn thông qua việc so sánh các thế hệ chip trong cùng dòng kiến trúc. Thay vì chỉ dừng lại ở các vi điều khiển thế hệ cũ như 80C31 (không có bộ nhớ chương trình nội), 80C51 (bộ nhớ PROM chỉ nạp được một lần) hoặc 87C51 (bộ nhớ EPROM phải xóa bằng nguồn tia cực tím chuyên dụng), giáo trình tập trung vào vi điều khiển 89C51 tích hợp 4 Kbyte bộ nhớ Flash ROM. Đặc tính này cho phép người học nạp và xóa chương trình bằng xung điện hàng ngàn lần trực tiếp trong quá trình thí nghiệm. Tài liệu cũng giới thiệu các cải tiến mở rộng ở dòng MCS-52 (tích hợp 3 bộ Timer/Counter và nhân đôi dung lượng ROM nội lên 8 Kbyte) và dòng chip 82551 có tính năng nạp nối tiếp.
Về xu hướng kỹ thuật, giáo trình cập nhật việc phân loại kiến trúc xử lý hiện đại theo hai trường phái CISC (Complete Instruction Set Computer) và RISC (Reduced Instruction Set Computer), đồng thời phân tích cơ chế truyền dữ liệu nối tiếp thông qua cổng giao tiếp COM với máy tính phục vụ công tác lập trình và giám sát.
Về liên hệ thực tiễn và ứng dụng công nghiệp, toàn bộ các mạch giao tiếp và ví dụ phần mềm trong giáo trình được liên kết trực tiếp với các hệ thống tự động hóa công nghiệp và thiết bị điện tử dân dụng: dây chuyền sản xuất tự động, bộ điều khiển thang máy, hệ thống đóng mở cửa tự động, mạch điều khiển máy giặt, máy điều hòa nhiệt độ và cột bơm xăng tự động. Kiến thức lý thuyết được thiết kế đồng bộ với cấu hình module thí nghiệm thực tế đang được vận hành tại Khoa Điện Tử của Trường Cao đẳng Kỹ thuật Lý Tự Trọng.
Đối tượng sử dụng giáo trình (200-250 từ)
Giáo trình được thiết kế phục vụ trực tiếp cho sinh viên năm thứ hai và năm thứ ba theo học chương trình Cao đẳng Kỹ thuật chính quy cũng như hệ Cao đẳng liên thông thuộc chuyên ngành Công nghệ Kỹ thuật Điện tử và ngành Kỹ thuật Tự động hóa tại Trường Cao đẳng Kỹ thuật Lý Tự Trọng.
Để tiếp thu hiệu quả nội dung giáo trình, người học bắt buộc phải hoàn thành các môn học tiên quyết thuộc khối cơ sở kỹ thuật, bao gồm:
- Kỹ thuật số: Nắm vững đại số logic, hệ thống số nhị phân/Hexa, cổng logic, mạch đếm và mạch giải mã.
- Tin học cơ bản: Hiểu rõ tư duy thuật toán, cấu trúc rẽ nhánh, vòng lặp và tổ chức dữ liệu.
- Cảm biến: Nắm bắt nguyên lý chuyển đổi tín hiệu vật lý sang tín hiệu điện phục vụ ghép nối đầu vào.
- Anh văn chuyên ngành: Khả năng đọc hiểu các thuật ngữ phần cứng, tên chân tín hiệu (RD, WR, ALE, PSEN) và các từ khóa mã lệnh hợp ngữ.
Đối với giảng viên, tài liệu là căn cứ chuẩn hóa khung bài giảng lý thuyết và xây dựng các bài tập thực hành chuyên đề vi xử lý. Đối với kỹ thuật viên và người tự học, tài liệu cung cấp nguồn tư liệu tra cứu độc lập về sơ đồ chân vi mạch, giản đồ thời gian bus, bản đồ địa chỉ thanh ghi SFR và phương pháp lập trình điều khiển mức thanh ghi.
Câu hỏi thường gặp (250-300 từ)
1. Giáo trình này phù hợp với đối tượng nào?
Tài liệu được biên soạn cho sinh viên bậc Cao đẳng Kỹ thuật chính quy và liên thông ngành Công nghệ Kỹ thuật Điện tử, kỹ thuật tự động hóa, cùng các kỹ thuật viên cần tài liệu tham khảo về phần cứng vi xử lý Z80 và vi điều khiển 89C51.
2. Cần chuẩn bị những kiến thức nền tảng nào trước khi học?
Người học cần hoàn thành 4 môn học cơ sở: Kỹ thuật số (hệ đếm nhị phân, cổng logic, mạch tuần tự), Tin học cơ bản (lưu đồ thuật giải), Kỹ thuật cảm biến (thu nhận tín hiệu) và Anh văn chuyên ngành (đọc hiểu tài liệu kỹ thuật vi mạch).
3. Điểm khác biệt cơ bản giữa hai phần kiến thức Z80 và MCS-51 trong giáo trình là gì?
Phần Z80 tập trung phân tích nguyên lý hệ thống vi xử lý mở (cần ghép nối ngoại vi qua các bus địa chỉ, dữ liệu, giải mã địa chỉ bằng 74138 và chip giao tiếp 8255). Phần MCS-51 đi sâu vào cấu trúc vi mạch tích hợp đơn chip (SoC) với ROM Flash, RAM, Timer và Port I/O tích hợp sẵn trên một vỏ vi mạch 40 chân.
4. Làm sao để tự học và nắm vững các tập lệnh trong giáo trình một cách hiệu quả?
Người học cần kết hợp việc phân tích bảng thanh ghi trạng thái (F đối với Z80, PSW đối với 89C51) với việc vẽ lưu đồ giải thuật cho từng bài toán mẫu (quét phím, quét LED 7 đoạn, xử lý chuỗi), đồng thời tra cứu cấu trúc lệnh và chế độ định vị địa chỉ trong phụ lục.
5. Có tài liệu bổ trợ nào kèm theo giáo trình không?
Giáo trình tích hợp sẵn phần Phụ lục tóm tắt toàn bộ tập lệnh của họ vi điều khiển MCS-51 ở cuối sách, hỗ trợ tra cứu nhanh mã gợi nhớ, mã máy Hexa, số byte và chu kỳ thực thi của từng lệnh.
Kết luận (150 từ)
Giáo trình Vi xử lý - Vi điều khiển do ThS. Huỳnh Ngọc Mai chủ biên cung cấp hệ thống tri thức hoàn chỉnh và chuẩn mực về mặt kỹ thuật phần cứng, kết nối mạch lạc giữa cấu trúc vi xử lý kinh điển Z80 và họ vi điều khiển công nghiệp MCS-51. Giá trị học thuật của tài liệu thể hiện ở tính chuẩn xác của các tham số kỹ thuật, cấu trúc lệnh, bản đồ bộ nhớ và các mạch ghép nối ngoại vi cụ thể.
Lộ trình học tập đề xuất cho người học bao gồm: tiếp cận kiến thức cấu trúc CPU, hệ thống bus và giải mã địa chỉ ở Chương 1; chuyển tiếp sang nghiên cứu cấu trúc phần cứng, không gian bộ nhớ RAM nội/SFR của họ MCS-51 ở Chương 2; làm chủ kỹ thuật lập trình hợp ngữ ở Chương 3; và hoàn thiện năng lực ứng dụng thông qua module định thời Timer/Counter và cơ chế ngắt ở Chương 4 và Chương 5. Phần phụ lục tóm tắt tập lệnh và danh mục tài liệu tham khảo chuyên ngành là công cụ bổ trợ trực tiếp cho quá trình học tập và thực hành kỹ thuật điện tử.