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
-
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ôiNguyê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
-
Không biết lại gặp cao thủ nào đây !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
-
Sơ sơ thế này: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
-
Hix, bác vui lòng đọc lại datasheet AVR nhá !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
-
Application note -> bác tham khảo phần 1 rồi thực hành từ mục 2.2 nested interrupt.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
-
Mì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.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
-
cái này thì bạn khỏi lo trong adc bạn cứ phục vụ adc còn pwm nó cứ chạy pwm. cái nào thực hiện trước đều được mà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
-
Trả lời cho Yêu thơ mê nhạc, mời các bác vào đây!bởi dinhthuong92Dạ, cảm ơn bác đã nghe qua và có lời khích lệ cháu ạ.
Thật lòng cháu không dám nhận hai danh hiệu Kỹ sư và Nhạc sĩ đâu ạ, vì phải thật hiểu sâu nắm vững cơ, chứ thực lực cháu đây chỉ là biết chút ít thôi à. Về phần...-
Channel: Tâm tình dân kỹ thuật
Hôm qua, 11:58 -
-
Trả lời cho Có mạch sạc nlmt nào có mppt không các bácbởi bqvietĐơn giản thì có trải nghiệm này
http://www.dientuvietnam.net/forums/...ch%C3%AA%CC%81
Chỉ phần cứng,...-
Channel: Điện tử công suất
27-01-2026, 21:32 -
-
Trả lời cho Có mạch sạc nlmt nào có mppt không các bácbởi Nexus 6Pphức tạp quá, nếu mà có mạch làm sẵn thì ngon, e dùng 2 tấm pv loại 18v 55w thôi bác
-
Channel: Điện tử công suất
26-01-2026, 08:52 -
-
Trả lời cho Có mạch sạc nlmt nào có mppt không các bácbởi Nexus 6Pcảm ơn bác nhiều nha, để e nghiên cứu
-
Channel: Điện tử công suất
26-01-2026, 07:38 -
-
Trả lời cho Yêu thơ mê nhạc, mời các bác vào đây!bởi vi van phamkỹ sư nhạc sĩ dinhthuong dạo này lên tay nghề khá quá.
-
Channel: Tâm tình dân kỹ thuật
25-01-2026, 21:29 -
-
Trả lời cho Yêu thơ mê nhạc, mời các bác vào đây!bởi dinhthuong92Hát Mừng Sinh Nhật, sáng tác: HĐT, hòa âm-thể hiện: AI
-
Channel: Tâm tình dân kỹ thuật
24-01-2026, 22:13 -
-
Trả lời cho Yêu thơ mê nhạc, mời các bác vào đây!bởi dinhthuong92Chào bác, gần Tết công việc bác bận lắm phải không?
Vâng mọi người đều thế cả.
Em mới trả phí cho nó 1 tháng, nhờ nó hát thử ấy ạ. Tiếc vì em đã dốt nhạc lí lại lười học nên sáng tác thì vụng về mà hát demo...-
Channel: Tâm tình dân kỹ thuật
24-01-2026, 21:53 -
-
Trả lời cho Có mạch sạc nlmt nào có mppt không các bácbởi bqvietCảm thấy cứng tay thì làm theo hướng dẫn khá chi tiết ở trang sau
https://www.instructables.com/DIY-1k...ge-Controller/-
Channel: Điện tử công suất
23-01-2026, 16:50 -
-
bởi Nexus 6PNhư tiêu đề, các bác giới thiệu e mạch sạc nlmt mppt có chức năng chỉnh dòng với, tấm PV của em 18V 55W, dùng để sạc cho khối pin sắt 3.2V 45A (sắp tới sẽ thay bằng ắc quy 12V)
e cảm ơn-
Channel: Điện tử công suất
23-01-2026, 11:23 -

Comment