VI ÑIEÀU KHIEÅN AVR
Thanh ghi traïng thaùi – status register SREG:
Thanh ghi trạng thái SREG của AVR có địa chỉ trong vùng nhớ IO là $3F ($5F) được xác định như sau:
Chức năng của các bit:
Bit 7: Global Interrupt Enable - bit I: bit cho phép ngắt toàn cục:
Bit I phải được thiết lập ở mức logic 1 để cho phép ngắt.
Sau đó từng bit điều khiển ngắt độc lập được thực hiện trong thanh ghi điều khiển riêng. Nếu Bit I ở mức 0 thì không cho bất kỳ ngắt nào xảy ra cho dù từng bit điều khiển ngắt ở trạng thái cho phép.
Bit I sẽ bị xóa bởi phần cứng sau khi ngắt xảy ra và sẽ trở lại mức 1 để cho phép ngắt sau khi thực hiện lệnh trở về từ chương trình con phục vụ ngắt RETI
Bit 6: Bit Copy Storage - bit T: bit copy và lưu trữ :
Các lệnh copy bit BLD (Bit Load) và BST (Bit Store) dùng bit T như là bit source và bit destination cho các hoạt động bit. Một bit từ 1 thanh ghi trong file thanh ghi có thể copy vào bit T bằng lệnh BST và bit T có thể được copy vào một bit trong thanh ghi nằm trong file thanh ghi bằng lệnh BLD.
Bit 5: Half Carry flag - bit H: bit cờ tràn phụ:
Bit cờ tràn phụ lưu trạng thái tràn phụ trong 1 số các phép toán. Hãy xem chi tiết ở phần lệnh.
Bit 4: Sign bit - bit S – S = N (+) V: bit dấu :
Bit dấu S thường là kết quả của phép toán ex-or giữa bit N (bit Negative) và bit V (over flow). Hãy xem chi tiết ở phần lệnh.
Bit 3: Bit Two’s Complement Overflow Flag – bit V:
Cờ tràn bù 2 V được xây dựng để thực hiện các phép toán bù hai.
Bit 2: Bit Negative Flag – bit N:
Cờ số âm N xác định kết qủa phép toán là số âm.
Bit 1: Zero Flag – bit Z:
Cờ zero xác định kết qủa phép toán bằng 0 hay khác 0.
Bit 0: Carry flag – bit C:
Cờ tràn xác định kết qủa phép toán có bị tràn hay không.
Chú ý: thanh ghi trạng thái sẽ không tự động lưu trữ khi thực hiện chương trình con phục vụ ngắt và sẽ không khôi phục lại khi trở về chương trình chính. Chúng ta phải tự lưu trữ bằng phần mềm nếu cần.