Từ đó chúng ta nhận rằng muốn phần cứng hoạt động được đòi hỏi phải có sự can thiệp của con người, mà chủ yếu là thông qua phần mềm điều khiển.Do đó sự hoạt động linh hoạt của thiết bị p
Trang 1CHƯƠNG 9
XÂY DỰNG
CHƯƠNG TRÌNH MONITOR
Trang 25.1.GIỚI THIỆU.
Như chúng ta đã biết chương trình Monitor là phần mềm điều khiển thiết bị hoạt động theo yêu cầu Để cho thiết bị hoạt động mạnh mẽ, dễ dàng trong sử dụng nên người thực hiện đề
tài đã ứng dụng kỹ thuật vi xử lý thiết kế máy thu phát ký tự 8
bit Vi mạch xử lý được sử dụng ớ đây là 8085A (Intel)
Phần cứng đó những gì cố định, nó như một cổ máy, muốn nó hoạt động phải có một công nhân lành nghề điều khiển nó để tạo ra sản phẩm có chất lượng Từ đó chúng ta nhận rằng muốn phần cứng hoạt động được đòi hỏi phải có sự can thiệp của con người, mà chủ yếu là thông qua phần mềm điều khiển.Do đó sự hoạt động linh hoạt của thiết bị phụ thuộc rất nhiều vào kỹ năng lập trình phần mềm cho hệ thống
Như vậy phần mềm và phần cứng là hai bộ phận biệt lập
nhau nhưng không thể tách rời nhau Trong hệ thống, chúng hổ trợ cho nhau để hình thành nên hoạt động của thiết bị
Trong thiết bị này phần mềm điều khiển được xây dựng trên cơ sở nền tản là tập lệnh của vi xử lý 8085A để đáp ứng các chức năng hoạt động của thiết bị
5.2.CƠ SỞ XÂY DỰNG CHƯƠNG TRÌNH MONITOR
Công việc xây dựng chương trình Monitor được thực hiện
dựa trên cơ sở yêu cầu các chức năng hoạt động đặt ra của thiết
bị kết hợp với cấu trúc phần cứng được thiết kế
Để thực hiện công việc trên, nhóm thực hiện đã tiến hành sử dụng kit vi xử lý 8085A của trường kết hợp với kit mở rộng
và bàn phím và hiển thị, tạm gọi là kit vi xử lý 8085A mở rộng để viết thử nghiệm các chương trình con riêng biệt phục vụ cho mỗi chức năng của thiết bị.Tiến hành kiểm nghiệm và điều lại cho đúng với yêu cầu đặt ra Cuối cùng là liên kết với chương
Trang 3trình lại theo trình tự hợp lý và nạp vào EPROM hệ thống để quản lý và điều khiển các hoạt động của thiết bị.
5.3 CÁC BƯỚC XÂY DỰNG CHƯƠNG TRÌNH MONITOR
Xây dựng lưu đồ khối cho hệ thống
Viết chương trình bằng mã ngữ
Dịch chương trình sang mã máy
Nạp chương trình vào bộ nhớ
Kiểm tra xem dữ liệu đã nạp có đúng không
Cho chạy chương trình
Giám định kết quả
Trang 45.4 MỘT SỐ YÊU CẦU ĐỐI VỚI CHƯƠNG TRÌNH MONITOR.
Xuất phát từ việc giới hạn đề tài để đặt ra các yêu câu đối
với chương trình Monitor như sau:
Cách thức hoạt động tương tự như máy phát từ 16 bits (Word Generator) trong phần mềm mô phỏng mạch EWB 5.0
Làm việc ở chế độ thu phát dữ liệu song song, nối tiếp bất
đồng bộ
Các chương trình con được trình bày ở dạng lưu đồ giải thuật
Các nhãn được sử dụng để đại diện cho địa chỉ ô nhớ
Các chương trình con có giải thuật giống nhau chỉ được trình bày một lần
Theo thứ tự chương trình Monitor thì chương trình nào xuất
hiện trước sẽ được trình bày trước
5.5.CẤP PHÁT VÙNG NHỚ:
Bộ nhớ hệ thống có dung lượng 16 KByte được cấp phát như sau
ROM 8 KByte được dùng để lưu trữ toàn bộ những gì có liên quan đến chương trình Monitor của hệ thống
RAM 8KByte được sử dụng dùng để lưu trữ chương trìnhsoạn thảo dữ liệu của người sử dụng, dùng ngăn xếp, vùng nhớ tạm thời, vùng đệm dữ liệu
5.6.XÂY DỰNG CHƯƠNG TRÌNH MONITOR:
5.1.1.Khởi tạo ngăn xếp
Ngăn xếp được định nghĩa là một vùng nhớ hay ô nhớ RAM được sử dụng dùng để lưu trữ thông tin một cách tạm thời trong suốt quá trình thi hành chương trình Thông tin trao đổi với
Trang 5ngăn xếp có tính chất: vào sau ra trước (LIFO: Last in, First out) Thông thường ngăn xếp được khởi tạo bắt đầu từ địa chỉ đáy vùng nhớ RAM.
Trong hệ thống này ngăn xếp được khởi tạo bắt đầu từ địa chỉ 3FFFH
5.6.2.Khởi tạo ngoại vi
Để các ngoại vi trong hệ thống hoạt động ổn định tất cả các ngoại vi đều được khởi tạo để tránh sự hoạt động sai lệch do một số ngoại vi không được khởi tạo Điều đó có nghĩa là thanh ghi điều khiển hoặc thanh ghi dữ liệu nhận các giá trị ngẩu nhiên và nó hiểu đó là giá trị khởi tạo
Trong hệ thống này công việc thực hiện của chương trình
Monitor phần lớn thực hiện tập trung vào công việc hiển thị và quét phím do đó vi mạch 8279 sẽ được khởi tạo nhiều lần
Trang 65.6.3.Khởi tạo các ngắt
Trong phần cứng của hệ thống này sử dụng hết cả 3 ngắt của vi xử lý 8085A
Trang 115.8.LƯU ĐỒ GIẢI THUẬT CHƯƠNG TRÌNH MONITOR
Call’’KEYBRD’’
Call “HIỂN THỊ 1”
Call “ĐỔI MÔ
LOOPA : Call “HIỂN THỊ 2”
JMP “START 1”
START 1: 2FOOH OOH
2FO1H O3H
Trang 14Chương trình con lấy mã địa chỉ hiện hànhĐây là một chương trình có chức năng lấy địa đầu và địa chỉ cuối nạp vào 4 ô nhớ từ 2900H – 2930H
Không có thanh ghi nào bị điều chỉnh
Trang 16Chương trình con đổi mãChuương trình này có chức năng COPY dữ liệu từ 2000 H
- 200FH đổi mã thành mã 7 đoạn nạp lại vùng địa chỉ từ: 2300 H – 230 FH và COPY dữ liệu từ 2600 H – 260FH đổi thành mã 7 đoạn và nạp lại địa chỉ từ 2400 – 240FH
Trang 18Chương trình con DATA OUT có nhiệm vụ xuất dữ liệu ra
màn hình và ra port A
Trang 20Chương trình BREAK PIONT CHECK có nhiệm vụ báo số
điểm dừng đã được đặt
Trang 21Chương trình DATA CURRENT có chức năng báo dử liệu
hiện hành ra màn hình
Trang 23Chương trình có chức năng chuyển đổi dử liệu chứa trong thanh ghi A thành 8 bit chứa vào trong ô nhớ có địa chỉ chứa
trong cặp thanh ghi DE
Trang 25Chương trình chuyển đổi 8 ô nhớ có địa chỉ chứa trong cặp thanh ghi DE thành dữ liệu 8 bit chứa trong thanh ghi A.
Chương trình báo số điểm dừng đã được đặt vào và hiển thị
số điểm dừng ra màn hình
Trang 27Chương trình con hiển thị 2Hiển thị ra màn hình toàn bộ các thông số làm việc:
Trang 29Chương trình con copy dữ liệu
Trang 31Chương trình kiểm tra mật mã do người sử dụng nhập vào để quyết định các chức năng làm việc tiếp theo của thiết bị.
Trang 33Chương trình con phím chức năng break piont
Trang 37Chương trình phím chức năng enterChương trình có chức năng xác định địa chỉ, dữ liệu cần thi hành để phục vụ cho các chức năng khác của thiết bị do người sử dụng nhập vào.
Trang 40Chương trình chức năng phím BURST.
Trang 42Chương trình chức năng phím CYCLE.
Chương trình chức năng phím STEP