Nếu đây là lần đầu tiên đến với Điện Tử Việt Nam, bạn có thể đọc phần Hỏi đáp bằng cách nhấn vào liên kết. Có thể bạn cần đăng kí trước khi có thể gửi bài . Để bắt đầu xem bài viết, chọn diễn đàn bạn muốn thăm dưới đây.
Thông báo
Collapse
No announcement yet.
Đố vui về PIC, các câu đố cực vui và cực hay... hehe..
em xin hỏi các bác !!! Làm thế nào để em có thể mở rộng số ngắt ngoài cho PIC .Em xin hết(cụ thể em cần tới 16 ngắt ngòai chẳng hạn)
Không giám qua mặt các bác !!!
Cách 1: nối 16 lối vào vào 16 chân PIC, sau đó dùng vài IC số thiết kế mạch AND 16 lối vào này và lối ra cho vào chân INT ngoài.
Khi có ngắt, chỉ chân đọc 16 chân của PIC sẽ xác định được nguồn ngắt?
Cách này tạm chấp nhận được ko?
Nhưng chú đố hay là chú hỏi? phải phân biệt rõ đó. He he...
Hihi... thấy bài toán hay hay, em lại muốn vào tham gia diễn đàn rùi.
Cách sử dụng 3 chân: INT+ 2 chân I/O như thế này:
Giả sử có N đầu vào ngắt và tích cực theo mức L:
-Ta dùng N diot+1 điện trở tạo thành mạch AND. Lối ra cho vào chân INT của uC.
-Dùng N/8 con ghi dịch 8 bit, nối nối tiếp với nhau, và các chân Load được nối với nhau và nối với INT.
-Khi có ngắt, thì dữ liệu được nạp vào ghi dịch, ta chỉ cần viết lệnh dùng 2 chân để làm Clock, một chân để nhận data.
Vậy kết quả có thể lên 3 vạn chín ngàn kênh như anh CB nói, mà tốn chỉ 1 chan ngắt ngoài + 2 chân I/O bất kỳ. Hihi...
Hihi... thấy bài toán hay hay, em lại muốn vào tham gia diễn đàn rùi.
Cách sử dụng 3 chân: INT+ 2 chân I/O như thế này:
Giả sử có N đầu vào ngắt và tích cực theo mức L:
-Ta dùng N diot+1 điện trở tạo thành mạch AND. Lối ra cho vào chân INT của uC.
Mong 3T giải thích rõ hơn về cách nối N diode thành cổng AND, mà sao lại là AND mà không phải là OR?
Nếu được mong 3T vẽ hình cho mọi người cùng chiêm ngưỡng.
Cảm ơn.
Một bông hồng cho những ai đang còn mẹ,
Đang còn mẹ để lòng vui sướng hơn ..
N1-------<|----------COM
N2-------<|----------COM
.....
Nn-------<|----------COM
Chân COM nối chung nhau và nối với chân ngắt và đồng thời nối 1 điện trở khoảng 2.2 K lên Vcc.
Khi Ni=0 thì COM=0, vậy sinh ra ngắt. Còn khi tất cả Ni=1(mọi i) thì COM=1.
Cách của bác CB và 3T rất hay !!! Nhưng 3T đã tính đến khoảng thời gian mà Ngắt của 3T yêu cầu đến khi được phục vụ chưa !!!
Quay trở lại câu hỏi em đã hỏi !!!
Với 32 đường vào ngắt thì em dùng một mạch Encoder tạo thành tổ hợp mã có 5 bit twcs là dùng 5 chân của Port .Còng đường báo ngắt thì dùng như của 3T không ai chê được rồi !!!
Vấn đề bây giờ làm thế nào để xây dựng đưởng bảng véc tơ ngắt động sao cho thời gian đáp ứng là ngắn nhất với số câu lệnh ít nhất ,thời gian sử dụng CPU là ngắt nhất (Kể từ khi có ngắt đến khi xác định được nguồn báo ngắt và gọi chương trình phục vụ ngắt !!!)
Không giám qua mặt các cao thủ !!!
Cách của bác CB và 3T rất hay !!! Nhưng 3T đã tính đến khoảng thời gian mà Ngắt của 3T yêu cầu đến khi được phục vụ chưa !!!
Quay trở lại câu hỏi em đã hỏi !!!
Với 32 đường vào ngắt thì em dùng một mạch Encoder tạo thành tổ hợp mã có 5 bit twcs là dùng 5 chân của Port .Còng đường báo ngắt thì dùng như của 3T không ai chê được rồi !!!
Vấn đề bây giờ làm thế nào để xây dựng đưởng bảng véc tơ ngắt động sao cho thời gian đáp ứng là ngắn nhất với số câu lệnh ít nhất ,thời gian sử dụng CPU là ngắt nhất (Kể từ khi có ngắt đến khi xác định được nguồn báo ngắt và gọi chương trình phục vụ ngắt !!!)
Không giám qua mặt các cao thủ !!!
Tại anh đưa ra câu đố không chặt chẽ mà cứ theo ý của anh. Đáng lẽ anh phải post từ đầu là yêu cầu:
1-Tốn ít cổng nhất.
2-Tốn ít thời gian nhất
Thỉnh thoảng, anh lại thêm một điều kiện thế thì..hihi...
vậy em lại thêm điều kiện: tốn ít chân nhất, mạch đơn giản nhất.. thì sao?
Chỗ đó là chỉ IC này chạy DC (tất nhiên) được mà AC cũng được. Khi chạy điện AC thì cần cầu nắn dòng và tụ lọc 100uF. Nếu chạy DC thì không cần cầu nắn mà tụ đó cũng chỉ cần tầm vài uF thôi. Cái đi-ốt thì càng dễ, luận tí...
Lâu nay, thấy nick chinhnguyen9 viết rất nhiều bài "phổ biến kiến thức" một cách vô tư.
Xem lại mới thấy bạn "dịch" hay "Google dịch" hay "AI" tôi đang xem xét.
Nhưng những gì đang xem tôi đánh giá là...
Tôi đoán bác nhathung1011 nói sai chỗ này:
- Đầu tiên cháu viết nhạc , bản nhạc khóa sol không thăng, không giáng, nốt kết thúc là nốt do thì bản nhac đó thuộc ton Đo trưởng. Đúng lý thuyết nhạc lý.
Comment