Các bác xem chỗ ngắt port nối tiếp, cả 2 cờ ngắt RI & TI đều tác động đến vectơ ngắt ở địa chỉ 23h. Không biết chỗ nầy có liên quan gì đến câu đố của bác MicroDuyphi hay không?
Thông báo
Collapse
No announcement yet.
Xin chỉ cách nâng số ngắt ngoài của 8051
Collapse
X
-
Nguyên văn bởi MicroDuyphi Xem bài viếtĐố vui: Có cách nào xác định được 1 trong 8 ngắt xảy ra mà không cần: quét liên tục, cứ mỗi vòng quét bạn không cần kiểm tra các chân ngắt nối vào 1 port ???
(Xin lỗi anh em, do vô tình ghé qua thăm BOS cũ, đọc qua, sực nãy ra câu hỏi thấy hay hay.....nên post lên thôi, ko có ý châm chọc ai cả!)
[ans:..qb.use.m...]
Comment
-
Dùng thử cái mã hóa từ 8 -> 3 được ko bác ? như vậy trong chương trình ngắt mình chỉ cần đọc giá trị của port là bao nhiêu ( giá trị từ 1 ->8) thì giá trị đó sẽ chỉ vị trí tác động(số thứ tự của tác động) trong 8 tác độg gây ngắt. Dùng cách này chỉ xác định được 1 trong 8 ngắt chứ nếu có 2,3 tác động cùng xảy ra thì bó tay !
Comment
-
Cách của PUMA có thể sử dụng IC 74xx148 (8 đầu vào, 3 đầu ra mã hóa và 1 đầu ra báo ngắt). Chân báo ngắt có thể nối vào một ngắt ngoài của 8051, 3 chân mã hóa cho vào 3 cổng bất kỳ khác. Khi có 1 trong 8 đầu vào tác động thì đầu ra báo ngắt sẽ tích cực -->gây ngắt-->trong chương trình xử lý ngắt có thể đọc 3 đầu vào mã hóa để xác định tín hiệu ngắt thực sự. Đúng như PUMA nói, cách này không cần quét nhưng không làm được với nhiều ngắt cùng xảy ra. Không hiểu đã giải được câu đố của DuyPhi hay chưa? Hay yêu cầu bài toán cao hơn?
Thân mến,
blackmoon.
Comment
-
Theo tớ như vầy:
8 ngắt ngoài được đưa tới 8 ngõ vào của 4051, ngõ ra 4051 nối tới chân INT0.
dùng 1 timer(2) để tạo 8 xung clock cho 1 mạch đếm 3 trạng thái cấp địa chỉ cho 4051. Thế là khi 1 trong 8 ngắt xảy ra ta có thể xác định xem xung đếm đang ở số mấy, tức là biết được ngắt tương ứng.
Các này được o các bạn!e
Comment
-
Nguyên văn bởi blackmoon Xem bài viếtCách của PUMA có thể sử dụng IC 74xx148 (8 đầu vào, 3 đầu ra mã hóa và 1 đầu ra báo ngắt). Chân báo ngắt có thể nối vào một ngắt ngoài của 8051, 3 chân mã hóa cho vào 3 cổng bất kỳ khác. Khi có 1 trong 8 đầu vào tác động thì đầu ra báo ngắt sẽ tích cực -->gây ngắt-->trong chương trình xử lý ngắt có thể đọc 3 đầu vào mã hóa để xác định tín hiệu ngắt thực sự. Đúng như PUMA nói, cách này không cần quét nhưng không làm được với nhiều ngắt cùng xảy ra. Không hiểu đã giải được câu đố của DuyPhi hay chưa? Hay yêu cầu bài toán cao hơn?
Thân mến,
blackmoon.
000 -->001-->010,...111 Như vậy theo mình thấy vẫn chưa thể giải quyết được bài toán trên của mình đưa ra?
Sư Huynh BlackMoon & anh em có cách nào khác hơn không?
Comment
-
tại vì anh nói là chỉ xác đinh 1 trong 8 ngắt mà ko quét thì em nghĩ dung` mã hóa có thể xác định tức thời luôn là ngắt nào rồi mà ,quét là bước tiếp theo để coi với ngắt đó cần phải làm gì đúng ko ạ ? vậy ý anh DP là khi 1 ngắt nào đó trong 8 ngắt xuất hiện thì tự động nó thực hiện luôn yêu cầu theo ngắt đó chứ ko qua việc quét nữa chứ gì ? Em nghĩ thế này vẫn sử dụng giải mã để biết vị trí ngắt là số mấy ,em có thể thực hiên luôn yêu cầu của ngắt đó (tạm hiểu là ISR của ngắt đó cũng được nhưng thực ra ISR này là do mình đặt ra chứ ko phải phần cứng ) mà ko phải quét hết từ 1 -> 8 , làm như sau anh coi được ko :
; ----- port 1 nối với đầu ra của IC mã hóa
;trong chương trình phục vụ ngắt ngoài :
INT0 :
MOV A,P1
RL A
MOV DPTR,#BANG_VECTOR_NGAT
JMP @A+DPTR ; lenh nhay gian tiep
RETI
;-----------------------
..
BANG_VETOR_NGAT :
SJMP ISR_0
SJMP ISR_1
sJMP ISR_2
......
;----
vi` SJMP chiem 2 byte nen điểm nhập A ta phải nhân đôi lên(dùng lệnh RL A ) mới nhảy đến đúng vị trí yêu cầu , tại các nhãn ISR 0,1,2... muốn làm gì thì làm .
Như vậy là em có thể đọc vị trí của ngắt rồi làm luôn chứ ko quet hết vòng nữa rồi .
Nếu ko dùng mã hóa 8 ->3 thì ta có thể dùng chương trình cũng được ,
ISR_INT0:
mov A,P1
mov 30H,#0
CHECK :
RRC A
INC 30H ; thanh ghi 30H là chứa biến vị trí của ngắt
JC CHECK ; dịch vào cờ C đến khi có bit 0 xuất hiên
MOV A,30H
; có vi trí của ngắt rồi làm tương tự như trên để nhảy đến thực hiện yêu cầu ;ngắt đó
MOV DPTR,#BANG_VECTOR_NGAT
JMP @A+DPTR ; lenh nhay gian tiep
RETI
.....
;---------
Em chỉ nghĩ đến vậy thôi,nếu ko được nữa thì em cũng bó tay, nếu có sai ở đâu thì mong các anh chỉ giúp .Last edited by PUMA; 16-10-2006, 01:06.
Comment
-
Cách 1 ở trên của PUMA cần nói thêm là không chỉ áp dụng được cho mạch có giải mã 8-->3 mà còn dùng cho mạch không cần thêm bất kỳ phần cứng nào khác.
Thật ra nếu chú ý thì ngay từ đầu mình đã có câu trả lời rồi:
PS:..ans là answer: Trả lời
qbm: là trong quang báo ứng dụng lệnh MOVE để giải quyết bài toán trên.
Đến đây chấm hết.
Mong Anh em cứ tiếp tục thảo luận và có nhiều vấn đề hay!
Comment
Bài viết mới nhất
Collapse
-
Trả lời cho Giúp em về mạch MPPT và Solar Panel với!?bởi dinhthuong80Vâng, em biết chứ bác, thực tế thì có rất nhiều điều tế nhị rất khó áp dụng được những gì tốt đẹp nhất mà chúng ta tìm ra (và nhiều khi mình nghĩ là tốt nhưng lại không tốt cho người khác). Tuy nhiên, ĐT đã và đang chọn sự sẻ...
-
Channel: Điện tử công suất
Hôm qua, 13:01 -
-
Trả lời cho Giúp em về mạch MPPT và Solar Panel với!?bởi dinhthuong801. ĐT đã thêm giải thích video test vấn đề gì, bạn xem lại phần cuối bài #69 giúp nhé!
2. Vì không muốn gỡ cái jump của họ ra bởi thêm thao tác chỉnh sửa, đồng thời để thấy rõ rằng mạch đang hoạt động, dù có thay đổi giới...-
Channel: Điện tử công suất
Hôm qua, 12:44 -
-
Trả lời cho Giúp em về mạch MPPT và Solar Panel với!?bởi tuyennhanBác Vị đã nhắc khéo rất mong dinhthuong nhận ra việc trên còn rất nhiều vấn đề đàng sau nhất là trong kinh doanh , sản xuất .
-
Channel: Điện tử công suất
Hôm qua, 07:53 -
-
Trả lời cho Giúp em về mạch MPPT và Solar Panel với!?bởi vi van phamKhông liên quan gì đến solar MPPT của Dinhthuong, vì bây giờ tôi xin phép nói chuyện riêng với nhac sỹ và các bạn thích chế cháo:
1- Bà xã tôi làm mạch nhốt muỗi vào chai nước uống, không thấy hết muỗi mà thấy ngày càng nhiều muỗi,...-
Channel: Điện tử công suất
11-02-2025, 21:28 -
-
Trả lời cho Giúp em về mạch MPPT và Solar Panel với!?bởi ti500Xem video hình như bác vẫn dùng jumper để chuyển đổi điện áp? Chưa hiểu bác mod lại thế nào. Mạch này xài pin nên chắc cần hiệu suất cao, nếu autovolt thì theo bác tổn hao thêm bao nhiêu là chấp nhận được?
-
Channel: Điện tử công suất
11-02-2025, 19:23 -
-
Trả lời cho Giúp em về mạch MPPT và Solar Panel với!?bởi dinhthuong80Vâng bác, giờ đèn bắt và giệt muỗi quá trời, rồi máy đuổi muỗi Doctor Ho,... mà chả cái nào ra hồn!
Led cực tím 365nm thì thua ạ, vì máy test màu nguồn ánh sáng công ty cháu chỉ đo được từ 380nm - 780nm thôi....-
Channel: Điện tử công suất
11-02-2025, 12:50 -
-
Trả lời cho Giúp em về mạch MPPT và Solar Panel với!?bởi vi van phamUống rượu 1 mình ko có chuyện gì để nói, chợt nghỉ ra đang sửa cái đèn bắt muỗi. Nhờ đinhthuong giúp đỡ cho biết cái led nào là 365nm.
Ngày xưa sửa cho sếp cái đèn, đổ ra rất nhiều muỗi trong đó. Ngày nay mua cái đèn chẳng...-
Channel: Điện tử công suất
11-02-2025, 03:20 -
-
Trả lời cho Giúp em về mạch MPPT và Solar Panel với!?bởi ti500Đùa với bác tí thôi vì lâu rồi mình cũng không vào diễn đàn vì thấy chán. Dù sao cũng cảm ơn bác đã đưa ra các bài toán thực tế để anh em có sự động não không hề nhẹ.
Xem video bác gửi em vẫn chưa hiểu nó nói về cái gì...-
Channel: Điện tử công suất
10-02-2025, 18:05 -
-
Trả lời cho Giúp em về mạch MPPT và Solar Panel với!?bởi dinhthuong80Chào bạn ti500, cảm ơn bạn đã dẫn dùm link [mình muốn dẫn link đó mà ... không nhớ gì nhiều về nó!]
Mạch mà ĐT đề nghị người ta cải tiến để đáp ứng yêu cầu/khắc phục vấn đề như đã mô tả là mạch pin sạc ở trong cái nắp vỏ có hình đính kèm ấy, sơ đồ mạch đó là sơ đồ rất nhiều...-
Channel: Điện tử công suất
10-02-2025, 15:08 -
-
Trả lời cho Giúp em về mạch MPPT và Solar Panel với!?bởi ti500bác đỉnh thượng lâu rồi không thấy vào bàn việc nước tưởng chuyển nghề rồi.
thì ra đây là lý do bác mở luồng này: http://www.dientuvietnam.net/forums/...%A5t/1729168-d...-
Channel: Điện tử công suất
10-02-2025, 09:17 -
Comment