Cấu trúc ngắt của Atmega128

Một phần của tài liệu THIẾT KẾ HỆ THỐNG ĐIỀU KHIỂN DỰA TRÊN MẠNG NƠRON (Trang 28 - 31)

Ngắt là một cơ cấu điều khiển dòng lệnh, cơ cấu này được thiết kế trên hầu hết các bộ điều khiển. Trong quá trình giao tiếp của hệ thống bộ xử lý với thế giới bên ngoài, nhiều sự việc xảy ra theo cách không đồng bộ, chẳng hạn người dùng có thể đã nhấn một công tắc để thực hiện một công việc nào đó, trong khi một byte dữ liệu có thể đã đến cổng nối tiếp. Điều này gây khó khăn cho hoạt động của bộ xử lý khi mà nó phải kiểm tra tất cả các thiết bị để giám sát sự di chuyển của dữ liệu. Ngược lại mọi việc sẽ trở nên tốt hơn nếu các thiết bị này có thể loan báo sự đến nơi của dữ liệu. Đây là tất cả những gì mà cơ chế ngắt phải thực hiện. Thiết bị ngoại vi sẽ ngắt việc thực thi của chương trình chính, và bộ xử lý tạm ngừng việc thực thi chương trình chính, và bộ xử lý tạm ngừng việc thực thi chương trình bình thường để thẩm tra nguồn ngắt và để thực hiện các thao tác đáp ứng cần thiết, việc thực thi chương trình đã bị ngắt lại tiếp tục. Chương trình ngắt chỉ đơ giản giống hệt như một chương trình con (subrountine), ngoại trừ một đặc điểm là việc thực thi của đoạn chương trình ngắt này không bị bộ xử lý đoán trước là sẽ xuất hiện ở một thời điểm cụ thể nào. Bộ vi điều khiển AVR có rất nhiều cấu trúc ngắt sau đây em chỉ trình bày về các loại ngắt mà mình sẽ dùng.

Đối với một loại vi điều khiển sẽ có nhiều vectơ ngắt để phục vụ cho chương trình như vectơ ngắt ngoài, ngắt nối tiếp, ngắt định thời. Sau đây là các nguyên nhân gây ngắt của AVR

 Reset : Chân ngoài, Preset, Brown-out reset và Watchdog reset

 INT0 : Ngắt ngoài yêu cầu 0

 INT1 : Ngắt ngoài yêu cầu 1

 Timer1 CAPT : Ngắt do sự kiện Đếm/Định thời 1

 Timer1 COMPA : Ngắt do đạt giá trị so sánh A Đếm/Định thời 1

 Timer1 COMPB : Ngắt do đạt giá trị so sánh B Đếm/Định thời 1

 Timer1 OVF: Ngắt do tràn bộĐếm/Định thời 1

 Timer0 OVF: Ngắt do tràn bộĐếm/Định thời 0

 SPI,STC : Giao tiếp nối tiếp xong

 USART, RXC : Nhận nối tiếp xong

 USART, UDRE : Thanh ghi dữ liệu nối tiếp rỗng

 USART, TXC : Truyền nối tiếp xong

 ANA_COMP : So sánh tương tự

 INT2 : Yêu cầu ngắt ngoài 2

 TIMER0 COMP : Đạt giá trị đếm bộ Đếm/Định thời 0

 EE_RDY : EEPROM sẵn sàng

 SPM_RDY : Bộ nhớ chương trình sẵn sàng

Trong chương trình dành cho mạch giao tiếp có sử dụng đến hai loại vectơ ngắt là ngắt do định thời và ngắt do nối tiếp. Vì vậy, trong phần này chỉ giới thiệu hai loại vectơ ngắt này.

b )Giao tiếp nối tiếp

Bộ truyền nhận đồng bộ và không đồng bộ nối tiếp (USART) là một thiết bị giao tiếp nối tiếp có tính tương thích cao có các tính chất chính:

Chức năng kép (Bộ truyền và nhận độc lập)

 Chức năng xung đồng bộ chính và phụ

 Cung cấp định dạng nối tiếp với 4,5,6 hoặc 7 bits dữ liệu và 1 hoặc 2 bits stop

 Tạo ra và kiểm tra cờ chẵn lẽ bởi phần cứng

 Phát hiện lỗi tràn

 Phát hiện lỗi dạng dữ liệu

 Chống nhiễu bằng bit start và bộ lọc thông thấp

 3 vectơ ngắt do truyền TX xong, thanh ghi truyền TX rỗng, nhận RX xong (adsbygoogle = window.adsbygoogle || []).push({});

 Chế độ truyền thông đa xử lý

 Chế độ xung đồng bộ gấp đôi

 Bộ tạo tốc độ Baud nhiều giải pháp

 Chế độ tăng gấp đôi tốc độ dao tiếp

c )Bộ đếm/định thời

TIMER/COUNTER0 là một module đếm/định thời 8-bits, đơn kênh, đa mục đích với các tính chất sau

 Bộ đếm đơn kênh

 Xoá timer khi đạt được giá trị so sánh (Tự động nạp lại)

 Xung tự do được tự động chữa bởi bộ điều chế độ rộng chuỗi xung (PWM)

 Tạo tần số

 Đếm sự kiện bên ngoài

 Bước đếm 10 bits

 Cung cấp ngắt khi đạt được giá trị so sánh (T0V0 và 0CF0)

 Cho phép tạo xung mở rộng từ bộ dao động thạch anh ngoài 32 kHz

TIMER/COUNTER1 là bộ Đếm/định thời 16-bit thiết kế để cho phép chương trình định thời một cách chính xác (quản lý sự kiện), tạo sóng và đếm tín hiệu thời gian với các tính chất chính như sau:

 Thiết kế 16-bit thực ( ví dụ cho phép 16-bit PWM)

 Ba đơn vị so sánh ra độc lập

 Gấp đôi bộ đệm so sánh ra

 Xoá bỏ nhiễu đầu vào được phát hiện

 Xoá bộ đếm khi đạt giá trị so sánh (Tự động nạp lại)

 Xung tự do được tự động chữa bởi bộ điều chế độ rộng chuỗi xung (PWM)

 Khoảng PWM thay đổi

 Tạo tần số

 Đếm sự kiện bên ngoài

 nguồn ngắt độc lập (TOV1, OCF1A, OCF1B, v à ICF1)

Một phần của tài liệu THIẾT KẾ HỆ THỐNG ĐIỀU KHIỂN DỰA TRÊN MẠNG NƠRON (Trang 28 - 31)