- Module mở rộng
2.4.1. Lập trình tuyến tắnh
Kỹ thuật lập trình tuyến tắnh là phương pháp lập trình mà toàn bộ chương trình ứng dụng chỉ nằm trong một khối OB1. Kỹ thuật lập trình này có ưu ựiểm là gọn, rất phù hợp với những bài toán ựiều khiển ựơn giản, ắt nhiệm vụ.
Do toàn bộ chương trình ựiều khiển chỉ nằm trong khối OB1 nên khối OB1 sẽ gần như là thường trực trong vùng nhớ Work memory, trừ trường hợp khi hệ thống phải xử lý các tắn hiệu báo ngắt. Ngoài khối OB1, trong vùng Work memory còn có miền nhớ ựịa phương (loack block) cấp phát cho OB1
Trường đại học Nông Nghiệp Hà Nội Ờ Luận văn thạc sĩ khoa học kỹ thuật ẦẦẦẦẦẦẦẦẦẦ. 23 và những khối DB ựược OB1 sử dụng, hình 2.7 mô tả quy trình thực hiện chương trình ựiều khiển tuyến tắnh.
Hình 2.7: Thực hiện một chương trình tuyến tắnh
Local block của OB1
Khi thực hiện khối OB1, hệ ựiều hành luôn luôn cấp một local block có kắch thước mặc ựịnh 20 bytes trong Work memory ựể OB1 có thể lấy ựược những dữ liệu từ hệ ựiều hành (phụ lục 2.1)
Mặc dù kắch thước chỉ là 20 bytes mặc ựịnh, nhưng người sử dụng có thể mở rộng local block ựể sử dụng thêm các biến nhớ cho chương trình. Tuy nhiên phải ựể ý rằng local block ựược giải phóng ở cuối mỗi vòng quét và ựược cấp lại ở vòng quét sau nên các giá trị có trong local block của vòng quét trước cũng bị mất khi bắt ựầu vòng quét mới. Do ựó, tốt nhất chỉ nên sử dụng local block cho việc lưu giữ biến nháp tạm thời trong tắnh toán của một vòng quét.
Còn lại cách sử dụng local block cũng không khác gì như sử dụng miền biến cờ M (bit memory). Chẳng hạn, ựể ựọc khoảng thời gian thực hiện vòng quét trước ựã ựược hệ ựiều hành chuyển vào ô nhớ 2 bytes gồm byte 6 và byte 7 trong local block dưới dạng số nguyên 16 bits, ta dùng lệnh:
Chuyển OB1 từ Local memory vào Work memory và cấp phát local
block cho nó
Xoá OB1 và giải phóng Local memory trong
Work memory Hệ ựiều hành Thực hiện OB1 trong Work memory System memory Share DB Instance DB Vòng quét
Trường đại học Nông Nghiệp Hà Nội Ờ Luận văn thạc sĩ khoa học kỹ thuật ẦẦẦẦẦẦẦẦẦẦ. 24