Chào mọi người. Mình cần nâng số ngắt ngoài của 8051. Đọc trong diễn đàn thấy có topic bàn về việc này nhưng có chỗ không hiều. Đây là hướng giải quyết về phần cứng đã được giải đáp trên diễn đàn:
Đầu tiên 8 ngắt ngoài này sẽ đấu vào 1 port của 8051 (P1 chẳng hạn).
Sau đó xét 2 trường hợp :
1- : Ngắt ngoài của bạn loại tác động mức 1 hoặc sườn lên : 8 ngắt này sẽ đồng thời đấu đền ngõ vào của 1 cổng NOR, ngõ ra của NOR đấu đến INT của 8051.
2- : Ngắt ngoài của bạn loại tác động mức 0 hoặc sườn xuống : 8 ngắt này sẽ đồng thời đấu đền ngõ vào của 1 cổng AND, ngõ ra của AND đấu đến INT của 8051.
Như vậy khi có một ngắt xảy ra, sẽ có 1 ngắt ngoài cho 8051, lúc đó phần mềm xử lý ngắt sẽ đọc trạng thái cổng P1 để biết ngắt nào đang xảy ra để xử lý tiếp.
Vậy, phương pháp quét cổng để xác định ngắt là như thế nào. Xin pà koan chỉ giúp. Thanks !!!
Đầu tiên 8 ngắt ngoài này sẽ đấu vào 1 port của 8051 (P1 chẳng hạn).
Sau đó xét 2 trường hợp :
1- : Ngắt ngoài của bạn loại tác động mức 1 hoặc sườn lên : 8 ngắt này sẽ đồng thời đấu đền ngõ vào của 1 cổng NOR, ngõ ra của NOR đấu đến INT của 8051.
2- : Ngắt ngoài của bạn loại tác động mức 0 hoặc sườn xuống : 8 ngắt này sẽ đồng thời đấu đền ngõ vào của 1 cổng AND, ngõ ra của AND đấu đến INT của 8051.
Như vậy khi có một ngắt xảy ra, sẽ có 1 ngắt ngoài cho 8051, lúc đó phần mềm xử lý ngắt sẽ đọc trạng thái cổng P1 để biết ngắt nào đang xảy ra để xử lý tiếp.
Vậy, phương pháp quét cổng để xác định ngắt là như thế nào. Xin pà koan chỉ giúp. Thanks !!!
Comment