การ interupt ใน 8051


ประเภทของการ interrupt
                  - External interrupt การตรวจสอบสัญญาณที่มา interrupt นี้ จะสามารถกำหนดให้มีการตรวจสอบใน
ลักษณะเมื่อได้มีการเปลี่ยนแปลงระดับสัญญาณ (Level-sensitive) ไปแล้ว หรือในช่วงเวลาขณะเริ่มมี การเปลี่ยนแปลง
สัญญาณจาก logic สูงไปต่ำ ( Edge-sensitive )
                  - Internal inetrrupt แหล่งกำเนิดสัญญาณนี้จะเป็นวงจรภายใน Microcontroller เอง เช่น วงจรนับ
/จับเวลา วงจรเชื่อต่อสัญญาณอนุกรม เป็นต้น

โครงสร้างการ interrupt    เกิดได้ 5 ลักษณะ คือ

             - INT0 สัญญาณ interrupt จากภายนอก       ทางขาสัญญาณ P3.2 โดย 8051 จะทำการสุ่มตัวอย่าง สัญญาณ
เมื่อสิ้นสุดทุก Machine Cycle
             INT1 สัญญาณ interrupt จากภายนอกทางขาสัญญาณ P3.3 โดย 8051 จะทำการสุ่มตัวอย่าง สัญญาณเมื่อสิ้น
สุดทุก Machine Cycle
             Timer0 สัญญาณการเกิด Overflow ของ Timer 0
             Timer1 สัญญาณการเกิด Overflow ของ Timer 1
             Serial Port การเกิด interrupt ที่เกิดขึ้นจาการรับ/ส่งข้อมูลอนุกรม ทำให้มีผผผลต่อ flag interrupt RI และ TI
ตามลำดับ

                          จากแผนภาพโครงสร้างระบบ interrupt ของ 8051 จะเห็นว่าเมื่อเกิดการ interrupt สัญญาณ ต่างๆขึ้น
จะส่งผลให้มีการควบคุมเพื่อสั่งให้ processor กระโดดไปทำงานที่ต่ำแหน่ง Address ต่างๆ ตามประเภทของแหล่งกำเนิด
สัญญาณ interrupt ที่เกิดขึ้น ซึ่งปรกติควรมีการสร้าง program เหล่านี้ไว้ เพื่อทำหน้าที่ย่อยบริการ interrupt

                 การกำหนดให้ 8051 สามารถตอบรับการ interrupt แต่ละประเภท ทำได้โดยกำหนด bit ของ ข้อมูลที่เกี่ยวข้อง
ซึ่งมักอยู่ภายใน register TCON และ SCON หากได้ว่ามีการกำหนด ค่าของ bit ซึ่งอยู่ภายใน register IE ( Intereupt
Enable Register ) ด้วยแล้ว ก็สามารถตอบรับการ interrupt ของสัญญาณนั้นๆ ได้ นอกจากหนี้ตามแผนภาพในรูป ยังแสดง
ให้เห็นว่าสัญญาณ interrupt แต่ละ ประเภท ยังสามารถกำหนด piority ของการ interrupt ได้ 2 ลักษณะ คือ High Low 
piority กล่าว คือขณะที่ประมวลผลอยู่ภายในส่วนของ program ย่อย บริเวณ interrupt ของสัญญาณที่มีระดับความ สำคัญ
ต่ำอยู่ ก็สามารถถูก interrupt ที่มี piorrity สูงกว่าได้ แต่หากว่าเป็นสัญญาณ interrupt ที่มี piority เดียวกันหรือต่ำกว่าแล้วก็
จะต้องรอให้เสร็จสิ้นการประมวลผลที่ดำเนินอยู่ก่อน

การควบคุม interrupt

           ตามโครงสร้างที่ด้านการจัดการ interrupt ของ 8051 สามารถกำหนดเรียกเพื่อยินยอมหรือไม่ยิน ยอม
(Enable/Disabble) ให้มีการ interrupt แต่ละสัญญาณได้ โดยใช้วิธีการกำหนด ค่าของ bit ภาย ใน register IE


[ บทเรียน ] [ 204471 ] [ รายวิชา ]
[ ภาควิชาวิศวกรรมคอมพิวเตอร์ ] [ คณะวิศวกรรมศาสตร์ ] [ มหาวิทยาลัยเกษตรศาสตร์ ]