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 vi van phamSao ? cháu đã chứng minh cánh quạt lớn không phải do ma sát làm giảm tốc độ chưa?
Đêm nay hắt hơi , sổ mũi, không ngũ được, uống "riệu" 1 mình chờ nhà thùng, không thấy đến, nói chuyện với cháu cho vui. Khi tôi còn là...-
Channel: Điện tử gia dụng
hôm nay, 00:03 -
-
bởi vi van phamCần chứng minh cánh quạt lớn không phải do ma sát làm giảm tốc độ....
-
Channel: Điện tử gia dụng
Hôm qua, 15:29 -
-
bởi dinhthuong80Thì bác thấy đó, theo công thức của cháu Q = w.n.S.d, trong đó:
- w [vòng /phút]: tốc độ quay của mô tơ đo được khi gắn cánh quạt thì cánh vuông với trục hay lệch góc mấy độ cũng đâu còn ảnh hưởng gì nữa, nó thể hiện luôn ở giá trị w đo được rồi còn gì.
- n: số lượng lá cánh...-
Channel: Điện tử gia dụng
Hôm qua, 13:24 -
-
bởi vi van phamKhác nhiều lắm cháu ơi.
Góc này người ta gọi là góc cắt không khí, nó ảnh hưởng đến tốc độ quạt, ảnh hưởng đến lưu lượng gió, cũng như lưu lương hút gió.-
Channel: Điện tử gia dụng
Hôm qua, 12:15 -
-
bởi dinhthuong80Mặt phẳng cánh quạt lệch 1 góc so với trục nên nhìn theo phương vuông góc với trục ta sẽ "thấy nó có một độ dày d", đây chính là chiều cao của "hình trụ tròn rỗng ruột" theo trục của quạt có thể tích V = d * S_vành khăn....
-
Channel: Điện tử gia dụng
Hôm qua, 11:46 -
-
bởi vi van phamCông thức tính lưu lượng gió cháu lấy ở đâu ra vậy? tôi thấy có gì đó không ổn.
Theo thí dụ trên, mặt phẳng cánh quạt vuông góc với trục sẽ có lưu lượng khác với mặt phẳng cánh quạt song song với trục, và khác với mặt...-
Channel: Điện tử gia dụng
Hôm qua, 11:19 -
-
bởi appongthoNguyên nhân mã lỗi H-57, H-58, H-59 Máy giặt Panasonic
https://appongtho.com/loi-h-57-h-58-...iat-panasonic/
Mã lỗi H-57, H-58, H-59 trên máy giặt Panasonic thường liên quan đến sự cố trong hệ thống sấy, bao gồm lỗi mạch khử từ...-
Channel: Điện tử gia dụng
Hôm qua, 09:56 -
-
bởi kiều phongchào mọi người
xin cho hỏi mạch nguồn máy hàn 110v chuyển sang 220v được không? thanks
...-
Channel: Nguồn!
Hôm qua, 09:48 -
-
bởi dinhthuong80Dạ, theo thí nghiệm của chủ thớt thì hiệu ứng đó không ảnh hưởng gì, vì nó được tính theo công thức lí thuyết hợp lí: lưu lượng khí bằng thể tích khí do quạt vận chuyển được trong một phút (chỉ ảnh hưởng, hợp lí khi máy đo...
-
Channel: Điện tử gia dụng
Hôm qua, 09:15 -
-
bởi tuyennhanChắc sai rồi quạt thông gió công nghiệp sử dụng mô tơ 3 pha 750 w mà lưu lượng gió chỉ 1500 m3 / h ....
-
Channel: Điện tử gia dụng
Hôm qua, 07:55 -
Comment