Chương 6 - Vào ra Dữ liệu bằng cách thăm dò
Số trang: 5
Loại file: pdf
Dung lượng: 169.32 KB
Lượt xem: 16
Lượt tải: 0
Xem trước 2 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
Ch−¬ng 6Vμo ra D÷ liÖu b»ng c¸ch th¨m dß1. Giíi thiÖu chung vÒ c¸c ph−¬ng ph¸p ®iÒu khiÓn vμo/ra d÷ liÖuSau khi ®· tr×nh bμy vÒ c¸c m¹ch th−êng dïng cho viÖc phèi ghÐp CPU víi thiÕt ngo¹i vi ta sÏ tiÕn hμnh nghiªn cøu c¸c ph−¬ng thøc ®iÒu khiÓn viÖc trao ®æi d÷ liÖu. C¸c m¹ch phèi ghÐp vμo/ra ®· tr×nh bμy tr−íc ®©y cã thÓ ®−îc øng dông ®Ó phôc vô cho môc ®Ých nμy. Nãi chung ng−êi ta ph©n biÖt ra 3 ph−¬ng ph¸p ®iÒu khiÓn vμo/ra d÷ liÖu: • • • vμo/ra d÷ liÖu ®iÒu khiÓn...
Nội dung trích xuất từ tài liệu:
Chương 6 - Vào ra Dữ liệu bằng cách thăm dò Ch−¬ng 6 Vμo ra D÷ liÖu b»ng c¸ch th¨m dß1. Giíi thiÖu chung vÒ c¸c ph−¬ng ph¸p ®iÒu khiÓn vμo/ra d÷ liÖu Sau khi ®· tr×nh bμy vÒ c¸c m¹ch th−êng dïng cho viÖc phèi ghÐp CPU víithiÕt ngo¹i vi ta sÏ tiÕn hμnh nghiªn cøu c¸c ph−¬ng thøc ®iÒu khiÓn viÖc trao ®æi d÷liÖu. C¸c m¹ch phèi ghÐp vμo/ra ®· tr×nh bμy tr−íc ®©y cã thÓ ®−îc øng dông ®Ó phôcvô cho môc ®Ých nμy. Nãi chung ng−êi ta ph©n biÖt ra 3 ph−¬ng ph¸p ®iÒu khiÓn vμo/ra d÷ liÖu: • vμo/ra d÷ liÖu ®iÒu khiÓn b»ng c¸ch th¨m dß tr¹ng th¸i s½n sμng cña thiÕt bÞ ngo¹i vi. • vμo/ra d÷ liÖu ®iÒu khiÓn b»ng c¸ch ng¾t bé vi xö lý. • vμo/ra d÷ liÖu ®iÒu khiÓn b»ng phÇn cøng phô ®Ó th©m nhËp trùc tiÕp vμo bé nhí. Mçi ph−¬ng ph¸p ®iÒu khiÓn vμo/ra d÷ liÖu nãi trªn cã nh÷ng ®Æc ®iÓm kh¸cnhau vμ sÏ ®−îc øng dông trong c¸c hoμn c¶nh kh¸c nhau. Mét trong nh÷ng c¸ch®iÒu khiÓn ®¬n gi¶n nhÊt mμ chóng ta xem xÐt trong ch−¬ng nμy lμ ph−¬ng ph¸pth¨m dß (polling) tr¹ng th¸i s½n sμng lμm viÖc cña thiÕt bÞ ngo¹i vi tr−íc khi thùchiÖn vμo/ra d÷ liÖu. C¸c ph−¬ng ph¸p ®iÒu khiÓn vμo ra d÷ liÖu kh¸c sÏ ®−îc giíithiÖu trong c¸c ch−¬ng sau.2002. Vμo/ra d÷ liÖu b»ng ph−¬ng ph¸p th¨m dß VÊn ®Ò ®iÒu khiÓn vμo/ra d÷ liÖu sÏ trë thμnh rÊt ®¬n gi¶n nÕu thiÕt bÞ ngo¹ivi lóc nμo còng s½n sμng chê ®Ó lμm viÖc víi CPU. VÝ dô, bé phËn ®o nhiÖt ®é sè (nh−lμ mét thiÕt bÞ vμo) l¾p s½n trong mét hÖ thèng ®iÒu khiÓn lóc nμo còng cã thÓ cungcÊp sè ®o vÒ nhiÖt ®é cña ®èi t−îng cÇn ®iÒu chØnh, cßn mét bé ®Ìn LED 7 nÐt (nh− lμmét thiÕt bÞ ra) dïng ®Ó chØ thÞ mét gi¸ trÞ nμo ®ã cña mét ®¹i l−îng vËt lý nhÊt ®Þnhtrong hÖ thèng nãi trªn th× lóc nμo còng cã thÓ biÓu hiÖn th«ng tin ®ã. Nh− vËy khiCPU muèn cã th«ng tin vÒ nhiÖt ®é cña hÖ thèng th× nã chØ viÖc ®äc cæng phèi ghÐpvíi bé ®o nhiÖt ®é, vμ nÕu CPU muèn biÓu diÔn th«ng tin võa ®äc ®−îc trªn ®Ìn LEDth× nã chØ viÖc ®−a tÝn hiÖu ®iÒu khiÓn tíi ®ã mμ kh«ng cÇn ph¶i kiÓm tra xem c¸cthiÕt bÞ nμy cã ®ang s½n sμng lμm viÖc hay kh«ng. Tuy nhiªn trong thùc tÕ kh«ng ph¶i lóc nμo CPU còng lμm viÖc víi c¸c ®èit−îng liªn tôc s½n sμng nh− trªn. Th«ng th−êng khi CPU muèn lμm viÖc víi mét ®èit−îng nμo ®ã, tr−íc tiªn nã ph¶i kiÓm tra xem thiÕt bÞ ®ã cã ®ang ë tr¹ng th¸i s½nsμng lμm viÖc hay kh«ng, nÕu cã th× nã míi thùc hiÖn viÖc trao ®æi d÷ liÖu. Nh− vËy,nÕu lμm viÖc theo ph−¬ng thøc th¨m dß th× th«ng th−êng CPU ph¶i ®−îc dμnh riªngcho viÖc trao ®æi d÷ liÖu v× nã ph¶i liªn tôc kiÓm tra tr¹ng th¸i s½n sμng cña thiÕt bÞngo¹i vi th«ng qua c¸c tÝn hiÖu mãc nèi (handshake signal). C¸c tÝn hiÖu nμy ®−îc lÊytõ c¸c m¹ch phèi ghÐp, do ng−êi thiÕt kÕ t¹o ra, ®Ó cho ch−¬ng tr×nh th¨m dß ho¹t®éng trªn ®ã. Sau ®©y lμ thÝ dô mét c¸ch t¹o ra tÝn hiÖu mãc nèi vμ l−u ®å thuËt to¸n cñach−¬ng tr×nh dïng cho viÖc trao ®æi d÷ liÖu gi÷a CPU vμ thiÕt bÞ ngo¹i vi (h×nh 6.1). Trong thÝ dô nμy ®Ó cho vÊn ®Ò ®¬n gi¶n, ta gi¶ thiÕt CPU chØ lμm viÖc víi 1thiÕt bÞ vμo vμ 1 thiÕt bÞ ra. ViÖc tæ chøc phèi ghÐp ®−îc thùc hiÖn trªn c¸c m¹ch ICcì võa ®Ó ta dÔ theo râi c¸c tÝn hiÖu. Mét cæng vμo sè 0 (cã ®Þa chØ 00) ®−îc dïng ®Ó ®äc tr¹ng th¸i s½n sμng cña 2thiÕt bÞ ngo¹i vi nãi trªn. TÝn hiÖu s½n sμng cña thiÕt bÞ ngo¹i vi sè 1 (cæng vμo 01)®−îc ®Æt vμo bit D0, tÝn hiÖu s½n sμng cña thiÕt bÞ ngo¹i vi sè 2 (cæng ra 02) ®−îc ®Ætvμo bit D1. C¸c bit nμy sÏ cã gi¸ trÞ 1 khi thiÕt bÞ ngo¹i vi t−¬ng øng ë tr¹ng th¸i s½nsμng lμm viÖc víi CPU vμ chóng sÏ ®−îc ®−a vμo bus d÷ liÖu khi CPU ®äc nã b»nglÖnh ®äc cæng vμo sè 0. Ch−¬ng tr×nh trao ®æi d÷ liÖu sÏ kiÓm tra c¸c bit b¸o s½n sμngnμy vμ sÏ cã c¸c ®¸p øng phï hîp. M« t¶ ho¹t ®éng cña phÇn m¹ch vμo d÷ liÖu Khi thiÕt bÞ vμo sè 1 cã 1 byte sè liÖu cÇn trao ®æi, nã ®−a ra xung STB ®Ó chophÐp m¹ch chèt 8 bit lÊy byte d÷ liÖu ®ã ®ång thêi kÝch cho m¹ch lËt D (m¹ch t¹o tÝnhiÖu s½n sμng) lμm viÖc. CPU sÏ th¨m dß tr¹ng th¸i s½n sμng cña thiÕt bÞ vμo sè 1qua bit D0 khi nã ®äc cæng 00. §Õn khi CPU ®äc 1 byte d÷ liÖu vμo th× ®ång thêi nã 201xo¸ lu«n m¹ch t¹o tr¹ng th¸i s½n sμng ®Ó chuÈn bÞ cho lÇn lμm viÖc tíi víi 1 byte d÷liÖu kh¸c. D0 M¹ch ThiÕt bÞ D1 3 1 Chèt Bus D : : : tr¹ngth¸i (vμo) 8 bitcña 8088 OC STB G D7 ISP01 ...
Nội dung trích xuất từ tài liệu:
Chương 6 - Vào ra Dữ liệu bằng cách thăm dò Ch−¬ng 6 Vμo ra D÷ liÖu b»ng c¸ch th¨m dß1. Giíi thiÖu chung vÒ c¸c ph−¬ng ph¸p ®iÒu khiÓn vμo/ra d÷ liÖu Sau khi ®· tr×nh bμy vÒ c¸c m¹ch th−êng dïng cho viÖc phèi ghÐp CPU víithiÕt ngo¹i vi ta sÏ tiÕn hμnh nghiªn cøu c¸c ph−¬ng thøc ®iÒu khiÓn viÖc trao ®æi d÷liÖu. C¸c m¹ch phèi ghÐp vμo/ra ®· tr×nh bμy tr−íc ®©y cã thÓ ®−îc øng dông ®Ó phôcvô cho môc ®Ých nμy. Nãi chung ng−êi ta ph©n biÖt ra 3 ph−¬ng ph¸p ®iÒu khiÓn vμo/ra d÷ liÖu: • vμo/ra d÷ liÖu ®iÒu khiÓn b»ng c¸ch th¨m dß tr¹ng th¸i s½n sμng cña thiÕt bÞ ngo¹i vi. • vμo/ra d÷ liÖu ®iÒu khiÓn b»ng c¸ch ng¾t bé vi xö lý. • vμo/ra d÷ liÖu ®iÒu khiÓn b»ng phÇn cøng phô ®Ó th©m nhËp trùc tiÕp vμo bé nhí. Mçi ph−¬ng ph¸p ®iÒu khiÓn vμo/ra d÷ liÖu nãi trªn cã nh÷ng ®Æc ®iÓm kh¸cnhau vμ sÏ ®−îc øng dông trong c¸c hoμn c¶nh kh¸c nhau. Mét trong nh÷ng c¸ch®iÒu khiÓn ®¬n gi¶n nhÊt mμ chóng ta xem xÐt trong ch−¬ng nμy lμ ph−¬ng ph¸pth¨m dß (polling) tr¹ng th¸i s½n sμng lμm viÖc cña thiÕt bÞ ngo¹i vi tr−íc khi thùchiÖn vμo/ra d÷ liÖu. C¸c ph−¬ng ph¸p ®iÒu khiÓn vμo ra d÷ liÖu kh¸c sÏ ®−îc giíithiÖu trong c¸c ch−¬ng sau.2002. Vμo/ra d÷ liÖu b»ng ph−¬ng ph¸p th¨m dß VÊn ®Ò ®iÒu khiÓn vμo/ra d÷ liÖu sÏ trë thμnh rÊt ®¬n gi¶n nÕu thiÕt bÞ ngo¹ivi lóc nμo còng s½n sμng chê ®Ó lμm viÖc víi CPU. VÝ dô, bé phËn ®o nhiÖt ®é sè (nh−lμ mét thiÕt bÞ vμo) l¾p s½n trong mét hÖ thèng ®iÒu khiÓn lóc nμo còng cã thÓ cungcÊp sè ®o vÒ nhiÖt ®é cña ®èi t−îng cÇn ®iÒu chØnh, cßn mét bé ®Ìn LED 7 nÐt (nh− lμmét thiÕt bÞ ra) dïng ®Ó chØ thÞ mét gi¸ trÞ nμo ®ã cña mét ®¹i l−îng vËt lý nhÊt ®Þnhtrong hÖ thèng nãi trªn th× lóc nμo còng cã thÓ biÓu hiÖn th«ng tin ®ã. Nh− vËy khiCPU muèn cã th«ng tin vÒ nhiÖt ®é cña hÖ thèng th× nã chØ viÖc ®äc cæng phèi ghÐpvíi bé ®o nhiÖt ®é, vμ nÕu CPU muèn biÓu diÔn th«ng tin võa ®äc ®−îc trªn ®Ìn LEDth× nã chØ viÖc ®−a tÝn hiÖu ®iÒu khiÓn tíi ®ã mμ kh«ng cÇn ph¶i kiÓm tra xem c¸cthiÕt bÞ nμy cã ®ang s½n sμng lμm viÖc hay kh«ng. Tuy nhiªn trong thùc tÕ kh«ng ph¶i lóc nμo CPU còng lμm viÖc víi c¸c ®èit−îng liªn tôc s½n sμng nh− trªn. Th«ng th−êng khi CPU muèn lμm viÖc víi mét ®èit−îng nμo ®ã, tr−íc tiªn nã ph¶i kiÓm tra xem thiÕt bÞ ®ã cã ®ang ë tr¹ng th¸i s½nsμng lμm viÖc hay kh«ng, nÕu cã th× nã míi thùc hiÖn viÖc trao ®æi d÷ liÖu. Nh− vËy,nÕu lμm viÖc theo ph−¬ng thøc th¨m dß th× th«ng th−êng CPU ph¶i ®−îc dμnh riªngcho viÖc trao ®æi d÷ liÖu v× nã ph¶i liªn tôc kiÓm tra tr¹ng th¸i s½n sμng cña thiÕt bÞngo¹i vi th«ng qua c¸c tÝn hiÖu mãc nèi (handshake signal). C¸c tÝn hiÖu nμy ®−îc lÊytõ c¸c m¹ch phèi ghÐp, do ng−êi thiÕt kÕ t¹o ra, ®Ó cho ch−¬ng tr×nh th¨m dß ho¹t®éng trªn ®ã. Sau ®©y lμ thÝ dô mét c¸ch t¹o ra tÝn hiÖu mãc nèi vμ l−u ®å thuËt to¸n cñach−¬ng tr×nh dïng cho viÖc trao ®æi d÷ liÖu gi÷a CPU vμ thiÕt bÞ ngo¹i vi (h×nh 6.1). Trong thÝ dô nμy ®Ó cho vÊn ®Ò ®¬n gi¶n, ta gi¶ thiÕt CPU chØ lμm viÖc víi 1thiÕt bÞ vμo vμ 1 thiÕt bÞ ra. ViÖc tæ chøc phèi ghÐp ®−îc thùc hiÖn trªn c¸c m¹ch ICcì võa ®Ó ta dÔ theo râi c¸c tÝn hiÖu. Mét cæng vμo sè 0 (cã ®Þa chØ 00) ®−îc dïng ®Ó ®äc tr¹ng th¸i s½n sμng cña 2thiÕt bÞ ngo¹i vi nãi trªn. TÝn hiÖu s½n sμng cña thiÕt bÞ ngo¹i vi sè 1 (cæng vμo 01)®−îc ®Æt vμo bit D0, tÝn hiÖu s½n sμng cña thiÕt bÞ ngo¹i vi sè 2 (cæng ra 02) ®−îc ®Ætvμo bit D1. C¸c bit nμy sÏ cã gi¸ trÞ 1 khi thiÕt bÞ ngo¹i vi t−¬ng øng ë tr¹ng th¸i s½nsμng lμm viÖc víi CPU vμ chóng sÏ ®−îc ®−a vμo bus d÷ liÖu khi CPU ®äc nã b»nglÖnh ®äc cæng vμo sè 0. Ch−¬ng tr×nh trao ®æi d÷ liÖu sÏ kiÓm tra c¸c bit b¸o s½n sμngnμy vμ sÏ cã c¸c ®¸p øng phï hîp. M« t¶ ho¹t ®éng cña phÇn m¹ch vμo d÷ liÖu Khi thiÕt bÞ vμo sè 1 cã 1 byte sè liÖu cÇn trao ®æi, nã ®−a ra xung STB ®Ó chophÐp m¹ch chèt 8 bit lÊy byte d÷ liÖu ®ã ®ång thêi kÝch cho m¹ch lËt D (m¹ch t¹o tÝnhiÖu s½n sμng) lμm viÖc. CPU sÏ th¨m dß tr¹ng th¸i s½n sμng cña thiÕt bÞ vμo sè 1qua bit D0 khi nã ®äc cæng 00. §Õn khi CPU ®äc 1 byte d÷ liÖu vμo th× ®ång thêi nã 201xo¸ lu«n m¹ch t¹o tr¹ng th¸i s½n sμng ®Ó chuÈn bÞ cho lÇn lμm viÖc tíi víi 1 byte d÷liÖu kh¸c. D0 M¹ch ThiÕt bÞ D1 3 1 Chèt Bus D : : : tr¹ngth¸i (vμo) 8 bitcña 8088 OC STB G D7 ISP01 ...
Tìm kiếm theo từ khóa liên quan:
mã hóa thông tin vi xử lý hệ thống vi xử lý lập trình ngoại vi vao ra dữ liệu lập trình bằng hợp ngữGợi ý tài liệu liên quan:
-
Đề cương chi tiết học phần Vi xử lý
12 trang 282 0 0 -
Giáo trình Máy thu hình (Nghề Điện tử dân dụng - Trình độ: Trung cấp) - Trường Cao đẳng nghề Cần Thơ
79 trang 165 0 0 -
Giáo án Tin học lớp 10 (Trọn bộ cả năm)
152 trang 160 0 0 -
Báo cáo môn Vi xử lý - TÌM HIỂU VỀ CÁC BỘ VI XỬ LÝ XEON CỦA INTEL
85 trang 152 0 0 -
Báo cáo bài tập lớn môn Kỹ thuật vi xử lý: Thiết kế mạch quang báo - ĐH Bách khoa Hà Nội
31 trang 131 0 0 -
Bài tập lớn môn Vi xử lý, vi điều khiển: Thiết kế bộ điều khiển tốc độ của động cơ điện một chiều
27 trang 115 0 0 -
Bài tập lớn Vi xử lý: Thiết kế môn học Đèn LED đơn ghép thành đèn quảng cáo
15 trang 104 0 0 -
Giáo trình An toàn mạng (Nghề: Quản trị mạng - Trình độ: Cao đẳng) - Trường Cao đẳng nghề Cần Thơ
117 trang 82 1 0 -
Giáo trình Vi xử lý: Phần 1 - Phạm Quang Trí
122 trang 79 0 0 -
Đề tài : ĐIỀU KHIỂN CHUYỂN ĐỘNG RÔBÔT BẰNG ĐỘNG CƠ BƯỚC
23 trang 62 0 0