Các anh có thể nói cho em biết Atmega16 có mức ưu tiên ngắt không(giống trong 8051),set mức ưu tiên ấy thế nào,trong Atmega16 có thể có ngắt trong ngắt được không?Em cám ơn các anh.
Thông báo
Collapse
No announcement yet.
Mức ưu tiên ngắt trong Atmega16
Collapse
X
-
Mức ưu tiên giảm dần theo chiều tăng dần của địa chỉ interrupt vector, VD: vector interrupt RESET nằm ở địa chỉ 0x00 được ưu tiên cao nhất, kế tiếp là INT0,INT1,...
Nếu xãy ra 2 ngắt cùng một lúc thì ngắt nào được ưu tiên hơn sẻ được "ngắt" trước.
NVT2Tín đồ AVR giáo.
Comment
-
Cám ơn các anh đã trả lời
Cám ơn các anh đã trả lời em.Vậy nếu có một ngắt mức ưu tiên thấp đang được phục vụ,mà xảy ra một ngắt mức cao hơn,thì vdk AVR phục vụ nốt ngắt mức thấp hay lập tức nhảy đến phục vụ ngắt mức cao rồi mới quay trở lại phục vụ nốt ngắt mức thấp.
Comment
-
Bình thường thì chip sẽ thực hiện cho xong ngắt hiện tại rồi mới thực hiện ngắt tiếp theo, tuy nhiên bạn cũng có thể lập trình cho phép một ngắt đang chạy mà nếu có ngắt khác xãy ra thì nó thự hiện ngắt khác xong rồi mới quay lại thực hiện tiếp ngắt đang xãy ra.
NVT2Tín đồ AVR giáo.
Comment
-
Nguyên văn bởi nvt2 Xem bài viếtMức ưu tiên giảm dần theo chiều tăng dần của địa chỉ interrupt vector, VD: vector interrupt RESET nằm ở địa chỉ 0x00 được ưu tiên cao nhất, kế tiếp là INT0,INT1,...
Nếu xãy ra 2 ngắt cùng một lúc thì ngắt nào được ưu tiên hơn sẻ được "ngắt" trước.
NVT2.Cố gắng lên nhé.
Comment
-
Nguyên văn bởi daotoan3Ihut Xem bài viếtBác có biết cách nào để thay đổi tính ưu tiên của ngắt theo ý muốn của mình ko?Điều này hoàn toàn có thể làm được,chẳng qua các bác chưa nghĩ kỹ mà thôi.Cố gắng lên nhé.
Xin tha cho em, nó bị define bởi hardware mà muốn thay đổi thì nói thật từ hồi bập bẹ tới giờ chưa nghe ai nói tới, cả data sheet cũng không hề đề cập tới
Bác đừng trả lời em viết chương trình quản lý để thay đổi mức ưu tiên nhá, cái này mà thuê em viết bằng ASM với giá cao thì em cũng còn phải suy nghỉ lại đấy !
NVT2Tín đồ AVR giáo.
Comment
-
trich:
"Bác có biết cách nào để thay đổi tính ưu tiên của ngắt theo ý muốn của mình ko?Điều này hoàn toàn có thể làm được,chẳng qua các bác chưa nghĩ kỹ mà thôi.Cố gắng lên nhé."
để làm được điều này có lẽ nên bảo nhà sản xuất thiết kế lại phần cứng thôi.chứ dùng phần mềm thì bó cả tay lẫn chân luôn.bác nên dọc lại datasheet
Comment
-
Nguyên văn bởi manhga Xem bài viếttrich:
"Bác có biết cách nào để thay đổi tính ưu tiên của ngắt theo ý muốn của mình ko?Điều này hoàn toàn có thể làm được,chẳng qua các bác chưa nghĩ kỹ mà thôi.Cố gắng lên nhé."
để làm được điều này có lẽ nên bảo nhà sản xuất thiết kế lại phần cứng thôi.chứ dùng phần mềm thì bó cả tay lẫn chân luôn.bác nên dọc lại datasheet
Ngắt có mức ưu tiên cao hơn có nghĩa là nếu có hai ngắt xãy ra cùng một lúc thì ngắt đó được thực hiên trước thôi, mà điều này thì hiếm khi xãy ra do đó vấn đề thay đổi mức ưu tiên không quan trọng tuy nhiên nếu muốn đặt một ngắt nào đó lên ưu tiên cao nhất trong khi đối với AVR, nó không phải là ngắt có mức ưu tiên cao nhất thì chỉ cần trong các đoạn chương trình phục vụ ngắt khác vui lòng kiểm tra xem thằng đó có ngắt hay không mà nhường task lại cho nó (trong trường hợp phải dùng nhiều nguồn ngắt trong chương trình) hoặc cho phép AVR phục vụ ngắt khác trong khi đang phục vụ ngắt bằng lệnh "sei"(trong trường hơp chỉ có 2 nguồn ngắt). Việc này theo NVT2 nghỉ không quan trọng lắm.
Ý tưởng cá nhân thôi nhé, mọi người có ý kiến xin đóng góp !
NVT2Tín đồ AVR giáo.
Comment
-
Nguyên văn bởi manhga Xem bài viếtcó một cách khác là khi mà ta muốn ngắt thấp chèn ngắt cao là tại thời điểm đó ta cấm tất cả các ngắt có muc ưu tiên cao hơn nó sau khi thực hiện xong ngắt thấp thì lại cho phép các ngắt cao hon hoat đông
NVT2Tín đồ AVR giáo.
Comment
-
Nguyên văn bởi TP_Electro Xem bài viếtKhông hiểu làm sao để AVR đang thực thi trong một ngắt mà lúc đó có 1 tín hiệu ngắt khác xảy ra thì nó tạm dừng ngắt đang thực thi để nhảy đến yêu cầu tín hiệu ngắt vừa xảy ra trong ngắt được nhỉ??? Bác nvt2 ??
Comment
-
Nguyên văn bởi htc2k14 Xem bài viếtApplication note -> bác tham khảo phần 1 rồi thực hành từ mục 2.2 nested interrupt.
Ok, cảm ơn bác, mình hiểu rồi nó khác 8051 là khi vào ngắt nó tự động clear bit (i)ngắt toàn cục để các disable tất cả các ngắt. Nếu mà vừa nhảy đến ngắt cấp 1 mình set bit i luôn thì ngắt cấp 2 có thể chạy được và khi nhảy đến ngắt cấp 2 nó lại clear i nên khi nó thục thi xong ngắt cấp 2 nó quay lại ngắt cấp 1 và thực thi cho đến hêt ngắt cấp 1 rồi thoát. Phải ko bác nhỉ? Mình gì đang học c cho AVR có dùng ngắt timer và ADC nhưng sơ ngắt ADC nó ảnh hưởng đến pwm. Giờ biết thì ko lo nữa rồi.
Comment
-
Nguyên văn bởi TP_Electro Xem bài viếtMình thiếu bổ sung thêm là sau khi thực hiện xong cái ngắt sau(cấp 2) nó quay về lại cái ngắt trước (cấp 1). Thanks bác.
Ok, cảm ơn bác, mình hiểu rồi nó khác 8051 là khi vào ngắt nó tự động clear bit (i)ngắt toàn cục để các disable tất cả các ngắt. Nếu mà vừa nhảy đến ngắt cấp 1 mình set bit i luôn thì ngắt cấp 2 có thể chạy được và khi nhảy đến ngắt cấp 2 nó lại clear i nên khi nó thục thi xong ngắt cấp 2 nó quay lại ngắt cấp 1 và thực thi cho đến hêt ngắt cấp 1 rồi thoát. Phải ko bác nhỉ? Mình gì đang học c cho AVR có dùng ngắt timer và ADC nhưng sơ ngắt ADC nó ảnh hưởng đến pwm. Giờ biết thì ko lo nữa rồi..
Comment
Bài viết mới nhất
Collapse
-
bởi appongthoMã lỗi H-54 Máy giặt Panasonic là gì?
https://appongtho.com/khac-phuc-loi-...iat-panasonic/
Mã lỗi H-54 trên máy giặt Panasonic là dấu hiệu cảnh báo sự cố liên quan đến rơ-le điều khiển, một linh kiện quan trọng giúp máy giặt thực...-
Channel: Điện tử gia dụng
hôm nay, 11:37 -
-
bởi dinhthuong80Hình ảnh minh họa:
1. Đo tốc độ quay_ vòng/phút: (+/-10vg/phút)
2. Đo công suất: (+/-0.2W)
...-
Channel: Điện tử gia dụng
hôm nay, 09:31 -
-
bởi Hóa chất HHNGalvex 18.01 - Giải pháp tẩy rửa tối ưu trong ngành điện tử công nghiệp
Giới thiệu về Galvex 18.01
Trong ngành điện tử công nghiệp, việc duy trì độ sạch của linh kiện là yếu tố quan trọng giúp đảm bảo hiệu suất và độ bền của sản...-
Channel: Điện tử công nghiệp
hôm nay, 09:26 -
-
bởi dinhthuong80Khi nào rảnh bạn thử.... nhờ chị hàng xóm add hình sau cho app nó tính giúp tôi xem diện tích là bao nha, cảm ơn bạn rất nhiều!
Sẵn dịp bạn... hỏi chị ấy giúp xem có cây quạt nào hư không, tôi sửa và thay cánh giúp cho, cho nó... mát hơn,...-
Channel: Điện tử gia dụng
hôm nay, 09:15 -
-
bởi hei9029Giúp e code assembly mô phỏng này vs ạ khi nhấn nút lần đầu tiên thì màn hình hiển thị 05. Khi nhấn nút lần thứ hai thì hiển thị 08 và lần thứ ba thì hiển thị 06
...-
Channel: Vi điều khiển họ 8051
Hôm qua, 14:34 -
-
bởi nguyendinhvanBây giờ là thời chạy theo kinh tế thị chường, nợi nhuận là chên hết. Cho lên các vấn đề tiêu chuẩn kỹ thuật là cái vấn đề mà đến cán bộ quản ní kỹ thuật cung nơ mơ nắm.
Chả phải cao xiêu gì, cái quạt 12v Dê xê thôi. Kỹ...-
Channel: Điện tử gia dụng
Hôm qua, 10:53 -
-
bởi appongthoMã lỗi H-52, H-53 Máy giặt Panasonic là gì?
https://appongtho.com/xoa-loi-h-52-h...iat-panasonic/
Mã lỗi H-52 và H-53 trên máy giặt Panasonic xuất hiện khi hệ thống điện gặp sự cố hoặc bo mạch điều khiển không nhận được nguồn...-
Channel: Điện tử gia dụng
Hôm qua, 10:18 -
-
bởi tuyennhanTừ việc đồng hồ nước vẫn quay khi không có nước tôi nghĩ làm cái ống dạng phễu đẻ gom gió từ quạt đưa vào đồng hồ nước .
Cách này tuy không chính xác nhưng so sánh được quạt nào nhiều gió hơn bằng số liệu rõ ràng .-
Channel: Điện tử gia dụng
Hôm qua, 07:56 -
-
bởi appongthoMã lỗi H-51 Máy giặt Panasonic là gì?
https://appongtho.com/tu-xoa-loi-h-5...iat-panasonic/
Mã lỗi H-51 trên máy giặt Panasonic là cảnh báo về sự cố quá tải động cơ hoặc hệ thống truyền động, khiến lồng giặt không thể quay...-
Channel: Điện tử gia dụng
29-03-2025, 09:53 -
-
bởi tuyennhanTôi đọc từ lâu ở đâu đó đo lưu lượng gió thì phải đặt quạt trước 1 cái ống có đường kính bằng đướng kính cánh quạt rồi đo tốc ở cuối ống thì tính được lưu lượng gió chính xác
Cánh quạt to thì gió tản rộng , êm còn cánh nhỏ thì gió xoáy mạnh , ồn .-
Channel: Điện tử gia dụng
29-03-2025, 09:03 -
Comment