
Giáo trình Vi điều khiển Phụ lục 1 – Soạn thảo và nạp chương trình cho AT89C51
Phạm Hùng Kim Khánh Trang 136
Phụ lục 1: SOẠN THẢO VÀ NẠP CHƯƠNG TRÌNH
CHO AT89C51
1. Soạn thảo chương trình
Soạn thảo chương trình cho AT89C51 có thể dùng nhiều chương trình khác
nhau. Phần phụ lục này giới thiệu một chương trình cho phép soạn thảo bằng hợp ngữ:
Crimson Editor. Download chương trình tại: http://www.crimsoneditor.com hay
ftp://eed.hutech.edu.vn/Soft/Crimson
Sau khi cài đặt, khởi động Crimson từ Start > All Programs > Crimson Editor
> Crimson Editor.

Giáo trình Vi điều khiển Phụ lục 1 – Soạn thảo và nạp chương trình cho AT89C51
Phạm Hùng Kim Khánh Trang 137
1.1. Định nghĩa cú pháp
Vào menu Document > Syntax Type > Customize
Tại cửa sổ Preference, trong phần Syntax Type chọn một mục còn trống:

Giáo trình Vi điều khiển Phụ lục 1 – Soạn thảo và nạp chương trình cho AT89C51
Phạm Hùng Kim Khánh Trang 138
Trong phần Lang Spec, nhấn vào nút Browse bên phải, chọn file spec là
C:\Program Files\Crimson Editor\spec\8051-asm.spc.
Tương tự, chọn file Keywords là 8051-asm.key và phần Description có thể gõ
tuỳ ý:
Sau đó, trong menu Document > Syntax Type, chọn vào phần 8051 (là phần
định nghĩa tại trường Description).

Giáo trình Vi điều khiển Phụ lục 1 – Soạn thảo và nạp chương trình cho AT89C51
Phạm Hùng Kim Khánh Trang 139
1.2. Định nghĩa chương trình dịch
Phần này hướng dẫn cách chọn chương trình dịch cho 8051, có thể dùng bất kỳ
chương trình nào cho phép dịch từ file .asm hay .a51 sang file hex: một chương trình
có thể dùng là ASEM51.EXE (download tại ftp://eed.hutech.edu.vn/Soft/ASEM51).
Vào menu Tools > Conf. User Tools

Giáo trình Vi điều khiển Phụ lục 1 – Soạn thảo và nạp chương trình cho AT89C51
Phạm Hùng Kim Khánh Trang 140
Định nghĩa chương trình dịch như sau:
Tại menu Tools sẽ xuất hiện thêm phần dịch ASEM51:
Thực hiện soạn thảo chương trình và lưu file. Sau đó, thực hiện biên dịch bằng
cách chọn menu Tools > ASEM51 hay nhấn tổ hợp phím Ctrl+1. Sau khi dịch,
chương trình ASEM51 sẽ tạo thêm file .HEX và .LST. File .HEX được dùng để nạp

