TỔNG QUAN HỌC THUẬT VÀ NỘI DUNG GIÁO TRÌNH LẮP RÁP LẬP TRÌNH VI ĐIỀU KHIỂN

Tổng quan về giáo trình

Giáo trình Lắp ráp lập trình vi điều khiển (Mã mô đun: MĐ 20) là tài liệu đào tạo chuyên môn nghề được ban hành theo Quyết định số 99/QĐ-CĐKTCNQN ngày 14 tháng 3 năm 2018 của Hiệu trưởng Trường Cao đẳng Kỹ thuật Công nghệ Quy Nhơn. Tài liệu do tác giả Lương Thanh Long (giảng viên bộ môn Điện tử tự động, khoa Điện tử - Tin học) biên soạn, căn cứ theo chương trình khung đào tạo nghề Điện tử công nghiệp ở trình độ Cao đẳng và Trung cấp đã được Bộ Lao động - Thương binh và Xã hội cùng Tổng cục Dạy nghề phê duyệt.

Vị trí trong CTĐT:
[Kỹ thuật xung số, Điện tử cơ bản, Nâng cao, Công suất]
   [MĐ 20: Lắp ráp lập trình vi điều khiển (135h)]
            [Vi mạch số lập trình]

Trong chương trình đào tạo nghề Điện tử công nghiệp, mô đun MĐ 20 có thời lượng thực hiện là 135 giờ (bao gồm 30 giờ lý thuyết, 102 giờ thực hành và 3 giờ kiểm tra định kỳ). Về vị trí đào tạo, mô đun này được bố trí giảng dạy sau khi người học đã hoàn thành các học phần nền tảng: Kỹ thuật xung số, Điện tử cơ bản, Điện tử nâng cao, Điện tử công suất, đồng thời đóng vai trò là khối kiến thức tiên quyết trước khi học môn Vi mạch số lập trình.

Mục tiêu học tập của giáo trình được xác định rõ trên ba phương diện:

  • Về kiến thức: Trình bày được cấu trúc phần cứng, nguyên lý hoạt động và phạm vi ứng dụng của vi điều khiển họ 8051 (trọng tâm là vi điều khiển AT89S52) trong các hệ thống điều khiển công nghiệp; nắm vững cú pháp ngôn ngữ C cho vi điều khiển và cấu trúc các khối chức năng nội vi.
  • Về kỹ năng: Cài đặt và sử dụng thành thạo môi trường Keil C; thiết kế thuật toán và viết chương trình điều khiển; thực hiện kết nối phần cứng, nạp chương trình vào vi điều khiển; vận hành các mạch điều khiển ngoại vi và xác định nguyên nhân gây ra sự cố hư hỏng trong thực tế.
  • Về năng lực tự chủ và trách nhiệm: Rèn luyện thái độ làm việc nghiêm túc, tính cẩn thận và độ chính xác trong các thao tác kỹ thuật tại xưởng thực hành.

Giáo trình tiếp cận theo mô hình đào tạo tích hợp giữa lý thuyết và kỹ năng thực hành, lấy cấu trúc phần cứng của vi điều khiển AT89S52 và công cụ phần mềm Keil C làm trục phát triển nội dung xuyên suốt.


Nội dung kiến thức cốt lõi

                             KIẾN TRÚC MÔ ĐUN MĐ 20 (135 GIỜ)

Các chương và chủ đề chính

Nội dung giáo trình phân bổ qua 8 bài học chuyên đề, sắp xếp theo tiến trình từ khảo sát cấu trúc phần cứng, làm quen ngôn ngữ lập trình đến ghép nối các thiết bị ngoại vi và cấu hình khối chức năng nâng cao:

  • Bài 1: Khảo sát cấu trúc họ vi điều khiển 8051 và chương trình Keil C (16 giờ - LT: 6, TH: 10): Trình bày kiến trúc phần cứng vi điều khiển AT89S52 (họ MCS-52 của hãng Atmel), bao gồm các dạng đóng gói chân DIP40 và TQFP44, sơ đồ và chức năng 40 chân; cấu trúc 4 cổng xuất nhập (Port 0, Port 1, Port 2, Port 3); các thông số kỹ thuật (8 Kbyte Flash ROM, 256 Byte RAM nội, tần số thạch anh 12MHz – 24MHz, điện áp nguồn 4.5V – 5V); cấu trúc thanh ghi chức năng ALU, PSW, PC, DPTR, SP, IR; hướng dẫn quy trình tạo dự án, biên dịch file .c sang file .hex trên môi trường Keil C $\mu$Vision.
  • Bài 2: Lập trình C căn bản (22 giờ - LT: 4, TH: 18): Giới thiệu cấu trúc chương trình C cho vi điều khiển (khai báo thư viện #include <AT89X52.H>, biến toàn cục, hàm con, hàm void main()); các kiểu dữ liệu cơ bản; các phép toán số học, quan hệ, logic, toán tử bit; các cấu trúc điều khiển vòng lặp while, for, rẽ nhánh if...else, switch...case; khái niệm mảng và chuỗi ký tự.
  • Bài 3: Lắp ráp, lập trình điều khiển hiển thị LED đơn (8 giờ - LT: 2, TH: 6): Phân tích nguyên lý cấp dòng của các Port (Port 0 nhận dòng 3.2mA, Port 1/2/3 nhận dòng 1.6mA ở mức thấp; dòng ra mức cao khoảng 60$\mu$A); phương pháp ghép nối LED tích cực mức thấp (Active Low) và tích cực mức cao (Active High); sử dụng điện trở kéo lên, transistor đệm NPN/PNP; cú pháp lệnh truy xuất cổng 8-bit (Px = giá trị;) và truy xuất từng bit (Px_i = 0/1;).
  • Bài 4: Lắp ráp, lập trình điều khiển hiển thị LED 7 đoạn (16 giờ - LT: 3, TH: 12, KT: 1): Cấu tạo LED 7 đoạn Anot chung (Common Anode) và Katot chung (Common Cathode); phương pháp điều khiển 1 LED 7 đoạn đếm số 0–9; phương pháp hiển thị nhiều LED sử dụng kỹ thuật quét đa hợp (Multiplexing dựa trên hiện tượng lưu ảnh của mắt) và phương pháp chốt dữ liệu bằng IC 74LS373/74LS374; giải mã qua IC 7447.
  • Bài 5: Lắp ráp, lập trình điều khiển hiển thị LED ma trận 8x8 (16 giờ - LT: 2, TH: 14): Cấu tạo ma trận 64 LED đơn; nguyên lý điều khiển quét hàng và quét cột; cách thức xây dựng bảng mã nhị phân cho các ký tự; lập trình hiển thị ký tự tĩnh, tạo hiệu ứng dịch chữ sang trái, sang phải.
  • Bài 6: Lắp ráp, lập trình điều khiển hiển thị màn hình LCD 16x2 (8 giờ - LT: 2, TH: 6): Cấu trúc chân màn hình LCD 1602 (chân nguồn VSS, VCC, chân tương phản VEE, các chân điều khiển RS, R/W, E, các chân dữ liệu D0–D7); tập lệnh điều khiển của IC HD44780 (xóa màn hình 0x01, về đầu dòng 0x02, Function Set, Display ON/OFF, Set DDRAM Address); quy trình gửi lệnh và gửi dữ liệu hiển thị theo chuẩn 8-bit và 4-bit; bảng địa chỉ vùng nhớ hiển thị DDRAM (dòng 1 từ 0x80 đến 0x8F, dòng 2 từ 0xC0 đến 0xCF).
  • Bài 7: Lập trình ứng dụng bộ định thời trong điều khiển thiết bị ngoại vi (32 giờ - LT: 7, TH: 24, KT: 1): Khảo sát 3 bộ định thời T0, T1, T2; chức năng thanh ghi chế độ TMOD (các bit GATE, C/T, M1, M0) và thanh ghi điều khiển TCON (cờ tràn TFx, cờ điều khiển TRx); chi tiết các chế độ hoạt động: Chế độ 0 (13 bit), Chế độ 1 (16 bit), Chế độ 2 (8 bit tự nạp lại); phương pháp tính toán giá trị nạp trước cho thanh ghi THx/TLx để tạo thời gian trễ chính xác (tạo xung vuông tần số 500Hz, 2KHz); lập trình điều khiển tốc độ và trạng thái động cơ điện một chiều (DC Motor).
  • Bài 8: Lập trình ứng dụng ngắt (17 giờ - LT: 4, TH: 12, KT: 1): Cơ chế xử lý ngắt trong vi điều khiển họ 8051; cấu hình các nguồn ngắt ngoài (INT0, INT1) và ngắt Timer (TF0, TF1); thiết lập thanh ghi cho phép ngắt (IE) và ưu tiên ngắt (IP); cấu trúc hàm phục vụ ngắt (ISR) trong ngôn ngữ C.

Kiến thức nền tảng được xây dựng

  • Kiến trúc phần cứng vi điều khiển: Nắm vững cấu tạo bên trong chip vi điều khiển 8-bit bao gồm khối xử lý trung tâm (ALU), bộ nhớ chương trình Flash ROM, bộ nhớ dữ liệu RAM nội, các thanh ghi chức năng đặc biệt (SFR), mạch dao động thạch anh và các cổng I/O.
  • Nguyên lý giao tiếp ngoại vi: Xây dựng hiểu biết về giao tiếp song song 8-bit/4-bit, kỹ thuật quét đa kênh trong hiển thị LED, phương pháp phối ghép đệm dòng bằng transistor/IC chốt logic, và nguyên tắc định thời gian thực qua phần cứng chuyên dụng.
  • Tư duy giải thuật điều khiển nhúng: Phương pháp thiết kế lưu đồ thuật toán, chuyển đổi biểu đồ khối sang mã nguồn ngôn ngữ C, cơ chế quản lý vòng lặp và xử lý các sự kiện ngắt bất đồng bộ.

Kỹ năng phát triển

  • Kỹ năng kỹ thuật: Cài đặt cấu hình môi trường lập trình Keil C; kết nối phần cứng giữa kit vi điều khiển với các module hiển thị (LED đơn, LED 7 thanh, LED matrix 8x8, LCD 16x2), động cơ DC và bộ nạp chuẩn ISP/SPI.
  • Kỹ năng phân tích: Đọc hiểu sơ đồ nguyên lý mạch điện tử; tính toán thông số kỹ thuật cho bộ định thời (tần số dao động, chu kỳ máy, giá trị nạp thanh ghi TH/TL); tính toán giá trị điện trở hạn dòng và dòng kích mở transistor.
  • Kỹ năng thực hành nghề nghiệp: Quy trình hóa các bước từ biên soạn mã nguồn, biên dịch file .hex, sử dụng phần mềm nạp để nạp chương trình vào vi điều khiển AT89S52; kiểm tra, đo đạc tín hiệu và chuẩn đoán lỗi logic cũng như lỗi kết nối phần cứng trên mô hình thực hành Basic 8051 Training.

Phương pháp giảng dạy và học tập

                        QUY TRÌNH DẠY HỌC TÍCH HỢP 4 BƯỚC

Phương pháp sư phạm tích hợp

Giáo trình được thiết kế theo phương pháp đào tạo tích hợp (kết hợp lý thuyết chuyên ngành và thực hành kỹ năng ngay tại phòng thực hành/xưởng điện tử). Tỷ trọng thực hành chiếm phần lớn thời lượng (102/135 giờ, tương đương ~75.5% tổng thời lượng mô đun), giúp người học củng cố kiến thức lý thuyết thông qua thao tác trực tiếp trên thiết bị phần cứng.

Cấu trúc bài học và bài tập thực hành

Mỗi bài học trong giáo trình được xây dựng theo một cấu trúc 4 phần thống nhất:

  1. Mục tiêu bài học: Xác định rõ chuẩn đầu ra về kiến thức, kỹ năng và thái độ cần đạt.
  2. Lý thuyết liên quan: Cung cấp thông tin kỹ thuật, sơ đồ chân, cấu trúc thanh ghi, bảng mã lệnh hoặc nguyên lý hoạt động của đối tượng nghiên cứu.
  3. Trình tự thực hiện: Hệ thống hóa các bước công việc theo quy trình kỹ thuật rõ ràng (ví dụ: Bước 1: Chuẩn bị thuật toán $\rightarrow$ Bước 2: Viết mã nguồn $\rightarrow$ Bước 3: Nạp chương trình $\rightarrow$ Bước 4: Kiểm tra vận hành).
  4. Nội dung thực hành và câu hỏi ôn tập: Đưa ra các bài tập lập trình cụ thể gắn liền với bộ thí nghiệm Basic 8051 Training và hệ thống câu hỏi củng cố (bao gồm cả dạng tự luận phân tích và trắc nghiệm kiến thức).

Phương pháp kiểm tra, đánh giá

  • Đánh giá quá trình: Kiểm tra việc thực hiện các bài tập thực hành độc lập tại lớp (ví dụ: viết chương trình điều khiển 8 LED đơn nhấp nháy, lập trình đếm 00–99 trên 2 LED 7 đoạn, hiển thị chuỗi ký tự trên LCD 16x2, lập trình tạo xung 2KHz).
  • Đánh giá định kỳ: Dành 3 giờ kiểm tra chính thức tại các mốc trọng tâm: Bài 4 (kỹ năng ghép nối hiển thị LED), Bài 7 (kỹ năng định thời và điều khiển chấp hành), Bài 8 (kỹ năng xử lý ngắt toàn diện).

Định hướng tự học

Giáo trình quy định cụ thể số giờ tự học cho từng bài (dao động từ 4 đến 10 giờ/bài). Học viên sử dụng tài liệu để tự vẽ lưu đồ thuật toán, giải các bài toán tính toán giá trị nạp thanh ghi timer, chuẩn bị trước mã nguồn C trên máy tính cá nhân và trả lời hệ thống câu hỏi ôn tập cuối chương trước khi tham gia các buổi thực hành trên lớp.


Điểm nổi bật và cập nhật

                     ĐẶC TÍNH NỔI BẬT CỦA TÀI LIỆU
  • Tập trung vào dòng vi điều khiển AT89S52 (họ MCS-52): So với các tài liệu giảng dạy vi điều khiển truyền thống thường dùng chip AT89C51/AT89C52, giáo trình cập nhật sang dòng chip AT89S52. Vi điều khiển này tích hợp 8 Kbyte Flash ROM (cho phép lưu trữ các chương trình có dung lượng lớn hơn), hỗ trợ phương thức nạp nối tiếp trong hệ thống (In-System Programming - ISP qua chuẩn SPI với điện áp nạp 5V), bổ sung bộ định thời thứ ba (Timer 2) độc lập với T0 và T1.
  • Chuẩn hóa phương pháp lập trình bằng ngôn ngữ C: Giáo trình chuyển hướng tiếp cận hoàn toàn từ lập trình Hợp ngữ (Assembly) sang lập trình ngôn ngữ C trên nền tảng Keil C $\mu$Vision. Việc sử dụng ngôn ngữ C giúp cấu trúc chương trình trở nên tường minh, dễ tiếp cận, nâng cao khả năng tái sử dụng mã nguồn và phản ánh xu hướng phát triển phần mềm nhúng hiện đại.
  • Tính ứng dụng và liên kết thực tiễn: Các bài tập thực hành được xây dựng bám sát nhu cầu kỹ thuật trong sản xuất công nghiệp và các ứng dụng dân dụng, bao gồm: kỹ thuật hiển thị thông tin dạng bảng quang báo (LED Matrix 8x8), giao diện hiển thị thông số đo lường (màn hình LCD 16x2), kỹ thuật tạo xung vuông tần số chính xác để điều khiển chấp hành (động cơ điện một chiều).
  • Tuân thủ khung đào tạo nghề quốc gia: Nội dung bài giảng được chuẩn hóa theo danh mục kỹ năng nghề Điện tử công nghiệp do Tổng cục Dạy nghề ban hành, đảm bảo tính liên thông và tính thích ứng cao giữa môi trường học đường và thực tế xưởng sản xuất.

Đối tượng sử dụng giáo trình

                           ĐỐI TƯỢNG VÀ ĐIỀU KIỆN TIÊN QUYẾT
  • Sinh viên và học viên:
    • Đối tượng đào tạo chính là sinh viên trình độ Cao đẳng nghề và học viên trình độ Trung cấp nghề thuộc chuyên ngành Điện tử công nghiệp.
    • Tài liệu cũng phù hợp làm tài liệu học tập cho các ngành kỹ thuật liên quan như: Kỹ thuật Điện - Điện tử, Tự động hóa công nghiệp, Cơ điện tử.
  • Điều kiện tiên quyết (Prerequisites):
    • Người học cần có kiến thức nền tảng về mạch logic số (đại số Boolean, cổng logic, mạch đếm, giải mã trong Kỹ thuật xung số).
    • Nắm vững nguyên lý hoạt động của các linh kiện bán dẫn (diode, transistor BJT NPN/PNP, điện trở kéo lên trong Điện tử cơ bản và Điện tử nâng cao).
    • Hiểu biết cơ bản về điều khiển tải công suất từ môn Điện tử công suất.
  • Giảng viên và cơ sở đào tạo:
    • Sử dụng làm tài liệu giảng dạy chính thức cho mô đun MĐ 20.
    • Làm căn cứ chuẩn để biên soạn giáo án tích hợp, xây dựng phiếu hướng dẫn thực hành và thiết kế các đề thi kiểm tra kỹ năng nghề.
  • Tự học và tra cứu kỹ thuật:
    • Cung cấp tài liệu tra cứu có hệ thống cho kỹ thuật viên điện tử về tập lệnh Keil C cho 8051, sơ đồ chân vi điều khiển AT89S52, cấu hình các thanh ghi TMOD, TCON, IE, bảng địa chỉ DDRAM của LCD 16x2 và phương pháp quét LED matrix.

Câu hỏi thường gặp

1. Giáo trình này phù hợp với ai?

Giáo trình được biên soạn chuyên biệt cho sinh viên trình độ Cao đẳng và học sinh Trung cấp nghề Điện tử công nghiệp. Ngoài ra, tài liệu phù hợp cho sinh viên khối ngành kỹ thuật công nghệ cần tài liệu tiếp cận vi điều khiển từ mức độ căn bản đến kỹ năng ứng dụng ngoại vi.

2. Cần kiến thức nền nào để học?

Người học bắt buộc phải hoàn thành các môn học tiên quyết bao gồm: Kỹ thuật xung số, Điện tử cơ bản, Điện tử nâng cao và Điện tử công suất. Những môn học này cung cấp kiến thức về mức logic, cấu tạo linh kiện điều khiển, mạch khuếch đại công suất và nguyên lý đóng cắt bán dẫn.

3. Điểm khác biệt với giáo trình khác?

Tài liệu tập trung vào dòng vi điều khiển AT89S52 với tính năng nạp nối tiếp ISP (thay vì dòng 89C51 cũ), sử dụng toàn bộ mã nguồn bằng ngôn ngữ C trên phần mềm Keil C thay vì hợp ngữ Assembler. Tỷ lượng thực hành chiếm tới 102/135 giờ, mọi bài học đều quy chuẩn hóa thành các bước thực hiện thao tác kỹ thuật cụ thể.

4. Làm sao để tự học hiệu quả?

Người học cần tuân thủ quy trình 4 bước:

  1. Nghiên cứu lý thuyết về cấu tạo phần cứng và thanh ghi chức năng;
  2. Thiết kế lưu đồ giải thuật cho bài toán;
  3. Soạn thảo mã nguồn C và biên dịch file .hex trên Keil C;
  4. Nạp code và kiểm tra hoạt động trên mô hình thực hành hoặc phần mềm mô phỏng mạch điện tử, kết hợp trả lời toàn bộ câu hỏi trắc nghiệm/tự luận ở cuối mỗi bài.

5. Có tài liệu bổ trợ nào kèm theo?

Tài liệu đi kèm bao gồm: phần mềm lập trình Keil C IDE ($\mu$Vision), các thư viện header (như AT89X52.H), sơ đồ chân và thông số IC (74LS373, 74LS374, 7447, HD44780), mạch nạp vi điều khiển qua cổng SPI, và bộ kit thực hành chuyên dụng Basic 8051 Training.


Kết luận

Giáo trình Lắp ráp lập trình vi điều khiển (MĐ 20) của Trường Cao đẳng Kỹ thuật Công nghệ Quy Nhơn cung cấp một khung chương trình đào tạo nghề có tính thực tiễn cao, chuẩn hóa kiến thức từ phần cứng vi điều khiển AT89S52 đến kỹ thuật lập trình ngôn ngữ C trên Keil C.

Lộ trình học tập được thiết kế mạch lạc: khởi đầu từ việc khảo sát kiến trúc 8051 $\rightarrow$ xây dựng kỹ năng lập trình C $\rightarrow$ thực hành ghép nối các module hiển thị (LED đơn, LED 7 thanh, LED ma trận 8x8, LCD 16x2) $\rightarrow$ làm chủ các khối ngoại vi và ngắt (Timer/Counter, động cơ DC, ngắt ngoài, ngắt định thời) $\rightarrow$ tạo nền tảng vững chắc để tiếp thu môn học Vi mạch số lập trình.

Để hoàn thành tốt mô đun, người học cần kết hợp nghiên cứu lý thuyết trong giáo trình với việc sử dụng phần mềm Keil C, mạch nạp ISP và bộ kit thực hành Basic 8051 Training theo đúng quy trình công nghệ được hướng dẫn.