🌱 STM32 - 8. External Interrupt Registers

🌱 STM32 - 8. External Interrupt Registers

    Ở post trước mình đã nói tổng quan về External Interrupt trong Vi điều khiển STM32. Với sơ đồ khối hoạt động của External Interrupt, thì ở post này chúng ta sẽ cùng tìm hiểu về các thanh ghi tương ứng với các khối chức năng đó!

    Sơ đồ khối External Interrupt và tổng quan về chức năng của từng khối có trong post trước. Để xem được các thanh ghi cấu hình cho chúng, chúng ta sẽ xem trong tài liệu RM (STM32F401 - Table 39, trang 212). Tại đây, RM cho chúng ta một bảng các thanh ghi (Register Map), tổng quan về tên, địa chỉ offset, giá trị khi reset của các thanh ghi.

Interrupt

     👉 Thanh ghi  EXTI_IMR -  Interrupt mask register

Interrupt

    Tương ứng với 23 line ngắt trong STM32F401, thanh ghi EXTI_IMR cung cấp 1 bit cho mỗi line ngắt để cho chép (che hay không che) các line ngắt tương ứng. Tương tự với các event là thanh ghi EXTI_EMR - Event mask register.

     👉 Thanh ghi EXTI_RTSR - Rising trigger selection register

Interrupt

    Thanh ghi này dùng để cấu hình cho phép phát hiện sườn lên cho 23 line ngắt. Tương tự, để cấu hình cho phép phát hiện sườn xuống, chúng ta sẽ dùng thanh ghi EXTI_FTSR - Falling trigger selection register. Có thể cấu hình cho phép phát hiện cả sườn lên và sườn xuống cùng lúc trên một line ngắt bằng 2 thanh ghi này. 

    👉 Thanh ghi EXTI_SWIER - Software interrupt event register

Interrupt
    
    Thanh ghi này dùng để kích hoạt Software Interrupt tương ứng với 23 line ngắt. Có thể sử dụng thay thế cho việc ngắt bằng Hardware the sườn như ở trên.

    👉 Thanh ghi EXTI_PR - Pending register

Interrupt

    Mỗi khi có một tín hiệu ngắt xảy ra (theo sườn hoặc bằng phần mềm) thì bit tương ứng trên thanh ghi EXTI_PR sẽ được set lên, cho đến khi ngắt đó được xử lý.

    👉 Bổ sung: 23 line ngắt trong STM32F401.

Interrupt

    Tham khảo RM trang 208, STM32F401 có thể có tới 81 GPIO được kết nối với 16 line ngắt (từ line 0 đến line 15), được cấu hình bằng thanh ghi  SYSCFG_EXTICR1. Năm line ngắt còn lại được kết nối với các chức năng khác như PVD, RTC, USB như trong hình (RM) có đề cập.

    Ở post sau mình sẽ cùng các bạn thực hành cấu hình các thanh ghi này cho một chương trình sử dụng External Interrupt để giúp các bạn hiểu hơn về chúng.

>>>= Follow ngay =<<<

Để nhận được những bài học miễn phí mới nhất nhé 😊

Chúc các bạn học tập tốt 😊

               

Nguyễn Văn Nghĩa

Mình là một người thích học hỏi và chia sẻ các kiến thức về Nhúng IOT.

Đăng nhận xét

Mới hơn Cũ hơn