《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 單片機并行I/O口的擴展方法
單片機并行I/O口的擴展方法
來源:微型機與應用2013年第24期
韓彩霞
(江漢大學 文理學院, 湖北 武漢430056)
摘要: 由于在MCS-51單片機開發中P0口經常作為地址/數據復用總線使用,P2口作為高8位地址線使用,P3口用作第二功能(定時計數器、中斷等)使用,所以對于51單片機的4個I/O口,其可以作為基本并行輸入/輸出口使用的只有P1口。因此在單片機的開發中,對于并行I/O口的擴展十分重要,主要分析3種擴展并行I/O口的方法。
Abstract:
Key words :

摘  要: 由于在MCS-51單片機開發中P0口經常作為地址/數據復用總線使用,P2口作為高8位地址線使用,P3口用作第二功能(定時計數器、中斷等)使用,所以對于51單片機的4個I/O口,其可以作為基本并行輸入/輸出口使用的只有P1口。因此在單片機的開發中,對于并行I/O口擴展十分重要,主要分析3種擴展并行I/O口的方法。
關鍵詞: MCS-51單片機; 并行I/O口; 擴展

    MCS-51單片機有4個并行的I/O口,分別為P0口、P1口、P2口和P3口,4個并行I/O口在單片機的使用中非常重要,可以說對單片機的使用就是對這4個口的使用。這4個并行I/O口除了作為基本的并行I/O口使用,還常作為其他功能使用,如P0口經常作為地址/數據復用總線使用[1], P2口作為高8位地址線使用,P3口用作第二功能(定時計數器、中斷等等)使用。這樣,單片機只有P1口作為基本的并行I/O口使用,如果在單片機的使用中對并行I/O口需求較多,對于并行I/O口的擴展就非常重要了。下面通過具體的實例(8位流水燈設計)來給出幾種不同的并行I/O口擴展方法。
    為了更好地說明以下幾種不同的并行I/O口擴展方法,假設利用單片機實現流水燈的設計。采用單片機的P1口設計流水燈,電路如圖1所示。


    由圖1可知,8只LED直接連接在單片機的P1口上,通過對單片機進行編程即可以實現8只發光二極管產生流水燈。
1 使用單片機的串行口擴展并行I/O口
    單片機有一個全雙工的串行口[2],這個口既可以用于網絡通信,也可以實現串行異步通信,還可以作為移位寄存器使用。當單片機的串行口工作在模式0時,若外接一個串入/并出的移位寄存器(74LS164),就可以擴展一個8 bit并行輸出口;若外接一個并入/串出的移位寄存器(74LS165),就可以擴展一個8 bit并行輸入口。如圖2所示,單片機外接一個串入/并出的移位寄存器(74LS164),這樣就可以擴展8 bit并行輸出口。

    當單片機的串行口工作在模式0(作為移位寄存器使用)時需要注意:單片機原來的串行通信引腳RXD和TXD在這種工作方式下給出新的定義,原來用于串行接收數據的引腳RXD在這種工作模式下既可以接收也可以發送數據; 原來的串行發送引腳TXD在這種工作模式下則作為移位寄存器的脈沖輸入端使用(通常接時鐘端)。
    單片機和串入/并出移位寄存器74LS164的連接:單片機的串行通信接收引腳RXD連接到串入/并出移位寄存器74LS164的輸入引腳;單片機的串行通信發送引腳TXD連接到串入/并出移位寄存器74LS164的脈沖輸入端;串入/并出移位寄存器74LS164的輸出引腳連接8只發光二極管。這樣,選擇單片機的串行口工作模式0,通過通信引腳RXD發送實現流水燈的串行數據,然后通過74LS164轉換成并行數據后傳送給發光二極管,即可實現流水燈。這里需要注意74LS164數據的轉換時間問題。
     從圖2可以看出,同樣設計一個8位流水燈,采用上述方法只需要使用單片機的兩個串行通信引腳RXD和TXD就可以完成。此時,對于P3口的其他位可以作為第二功能使用(定時、中斷等)。
2 使用8255A(或8155)擴展并行I/O口
    可編程并行接口芯片8255A[3]有3個并行的I/O口,分別為PA、PB和PC,這3個并行I/O口都可以通過編程決定它們的工作情況。8255A與單片機的連接如圖3所示。

    從圖3中可以看出單片機與8255A的連接情況,利用單片機的P0口來分時傳送地址和數據:P0口與8255A的8 bit數據線連接,用來傳送數據和8255A的編程控制字;P0口連接地址鎖存器74LS373輸入端,74LS373的輸出端連接8255A 的地址線A0、A1和片選信號CS。通過A0、A1(即P0.0、P0.1)的4種不同組合(00~11)選擇8255的3個并行的I/O口之一和控制口。這樣,通過對單片機和8255A編程,即可實現流水燈。
    從圖3可知,利用這種方法擴展I/O口一次可以擴展3個并行的I/O口。
    同樣,也可以使用可編程并行接口芯片8155來進行并行I/O口的擴展。8155有兩個8 bit和一個6 bit的并行I/O口,同時它還有256 B的靜態RAM和一個14 bit的計數器。
3 使用芯片74LS138擴展并行I/O口
    74LS138 為3 線~8 線譯碼器,可將地址輸入端(A、B、C)的二進制編碼在輸出端Y0~Y7對應地以低電平譯出。比如:ABC=110時,則Y6輸出端輸出低電平信號。74LS138與單片機的連接如圖4所示。

    圖4中,單片機的引腳P2.5、P2.6和P2.7分別連接74LS138的3個輸入端A、B和C,74LS138的8個不同的輸出端Y0~Y7分別連接8只發光二極管。這樣,A、B和C的8種不同組合(000~111)分別選擇74LS138的8個不同的輸出端Y0~Y7, 即可實現流水燈。
4 幾種擴展并行I/O口方法比較

 


    使用單片機的串行口擴展并行I/O口時,單片機與串入/并出的移位寄存器(74LS164)連接比較簡單,只需連接串行發送或接收引腳和移位脈沖引腳即可。但是這種擴展方法只能擴展一個8 bit并行I/O口,若需擴展更多的并行I/O口時就需要更多的移位寄存器芯片;在使用這種方法擴展并行I/O口時,需要了解串入/并出移位寄存器74LS164和并入/串出移位寄存器74LS165芯片的工作原理,還需要了解單片機的串行工作方式0工作模式。同時,如果單片機工作時需要進行串行通信,則這種方法就不能使用了。
    使用并行接口芯片8255A擴展并行I/O口時,單片機與8255A的連接比較復雜,需要考慮數據線、地址線和控制線之間的連接,同時需要根據地址線的連接情況給出8255A各個并行I/O口的正確地址及8255A控制口的地址。另外,需要對8255A的編程控制字的定義及寫入方法有很好的了解。但是這種擴展方法可以同時擴展3個8 bit并行I/O口,在需要擴展多個并行I/O口時此種方法比較好。
 使用芯片74LS138擴展并行I/O口時,單片機與74LS138的連接比較簡單,只需連接3個引腳即可。這種擴展方法也只能擴展一個8 bit并行I/O口,若需擴展更多的并行I/O口就需要更多的3線~8線芯片。但是,如果在單片機擴展其他的芯片時不需要使用高位的3根地址線(即P2.5~P2.7),則這種方法就能很好地把這3根地址線利用起來。
參考文獻
[1] 李朝青, 劉艷玲. 單片機原理及接口技術(第4版)[M]. 北京:北京航空航天大學出版社,2013.
[2] 梅麗鳳.單片機原理及接口技術(修訂本)[M].北京:清華大學出版社,2011.
[3] 胡漢才. 單片機原理及其接口技術[M]. 北京:清華大學 出版社,2010.

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
亚洲欧美日韩另类精品一区二区三区| 亚洲另类一区二区| 亚洲福利视频网| 国产一区二区在线观看免费| 另类天堂av| 亚洲精品黄网在线观看| 狠色狠色综合久久| 国产一区二区黄| 国产欧美视频一区二区| 国产精品久久久久久一区二区三区| 欧美精品一二三| 欧美精品不卡| 欧美精品一区二区在线播放| 欧美大片免费观看| 欧美韩国在线| 欧美精品一区二区三区蜜桃 | 久久www成人_看片免费不卡| 欧美一区二区三区的| 欧美一区二区大片| 久久精品人人做人人爽电影蜜月| 久久久久9999亚洲精品| 久久这里只有| 欧美 日韩 国产 一区| 你懂的视频一区二区| 欧美激情aⅴ一区二区三区| 欧美国产日韩精品免费观看| 欧美另类人妖| 国产精品hd| 国产网站欧美日韩免费精品在线观看| 国产一区二区你懂的| 黄色资源网久久资源365| 一区视频在线看| 亚洲人妖在线| 亚洲一区二区毛片| 欧美一区影院| 亚洲人成在线影院| 中日韩在线视频| 欧美在线不卡视频| 麻豆精品视频在线观看视频| 欧美gay视频激情| 欧美日韩精品久久| 国产精品尤物福利片在线观看| 国产精品一香蕉国产线看观看| 国内精品美女av在线播放| 亚洲福利电影| 一区二区三区毛片| 欧美中文字幕久久| 日韩一级欧洲| 性欧美超级视频| 男人的天堂亚洲| 国产精品成av人在线视午夜片| 国产色爱av资源综合区| 亚洲第一视频| 一区二区三区视频在线看| a4yy欧美一区二区三区| 欧美午夜激情在线| 国产亚洲精品资源在线26u| 亚洲国产欧美另类丝袜| 亚洲网站在线| 亚洲国产欧美久久| 亚洲欧美www| 媚黑女一区二区| 国产精品久久久久久久久免费桃花 | 午夜免费在线观看精品视频| 久久综合成人精品亚洲另类欧美| 欧美女同视频| 国产一区二三区| 一区二区三区国产| 亚洲国产精品尤物yw在线观看| 亚洲综合色婷婷| 欧美成人综合网站| 国产欧美一区二区三区久久| 亚洲人午夜精品免费| 欧美在线一二三| 亚洲欧美成人一区二区三区| 美国成人直播| 国产日本精品| 在线亚洲高清视频| 9人人澡人人爽人人精品| 久久夜色精品国产亚洲aⅴ| 国产精品麻豆va在线播放| 亚洲韩国青草视频| 久久激情久久| 性欧美暴力猛交69hd| 欧美日韩中文| 亚洲人成艺术| 亚洲欧洲精品一区二区三区| 久久福利电影| 国产精品老牛| 亚洲最新在线| 一区二区欧美国产| 牛夜精品久久久久久久99黑人| 国产欧美一区二区三区视频| 一本色道久久综合亚洲91| 亚洲精品在线二区| 老司机亚洲精品| 狠狠色丁香久久婷婷综合丁香| 亚洲影院在线| 亚洲女同性videos| 欧美视频在线观看一区| 亚洲欧洲日夜超级视频| 亚洲国产精品成人综合色在线婷婷| 久久成人免费视频| 国产精品免费视频观看| 一本一本久久| 亚洲视频欧洲视频| 欧美日韩一区二区三区免费| 亚洲经典三级| 亚洲精品一区二区三区婷婷月 | 亚洲国产精品成人综合| 久久久久久一区二区| 国产亚洲精品激情久久| 亚洲欧美激情一区二区| 午夜伦理片一区| 国产精品一二三视频| 亚洲影音先锋| 久久www成人_看片免费不卡| 国产日韩欧美综合| 西西裸体人体做爰大胆久久久| 午夜亚洲性色福利视频| 国产精品久久久久毛片软件 | 亚洲欧美成人| 欧美在线播放视频| 国产一区二区在线免费观看| 欧美在线亚洲在线| 噜噜噜在线观看免费视频日韩| 黄色国产精品| 亚洲国产老妈| 欧美激情91| 一本色道久久综合精品竹菊| 午夜精品福利一区二区蜜股av| 国产精品免费观看视频| 亚洲欧美自拍偷拍| 久久综合999| 亚洲人成网站色ww在线| 亚洲无限乱码一二三四麻| 国产精品久久久久久一区二区三区| 亚洲制服欧美中文字幕中文字幕| 欧美影院久久久| 狠狠入ady亚洲精品| 亚洲日韩欧美视频一区| 欧美日韩三级一区二区| 亚洲视屏在线播放| 久久狠狠婷婷| 亚洲福利视频三区| 国产精品99久久久久久人 | 午夜精品国产| 另类亚洲自拍| 夜夜爽99久久国产综合精品女不卡| 亚洲性视频h| 国产一级揄自揄精品视频| 亚洲激情成人网| 欧美日韩国产精品| 亚洲淫性视频| 免费中文日韩| 中文成人激情娱乐网| 久久精品一二三区| 亚洲人成网站精品片在线观看| 亚洲综合电影| 黄色精品一二区| 亚洲视频香蕉人妖| 国产亚洲精品福利| 99热在这里有精品免费| 国产精品你懂的在线欣赏| 久久精品国产综合精品| 欧美连裤袜在线视频| 亚洲免费人成在线视频观看| 久久一区国产| 一区二区久久久久| 久久三级福利| 日韩一级黄色大片| 久久精品国产77777蜜臀| 亚洲精品乱码久久久久久按摩观| 香蕉成人伊视频在线观看| 在线欧美亚洲| 新67194成人永久网站| 亚洲成人在线网站| 欧美亚洲色图校园春色| 亚洲第一狼人社区| 欧美伊人久久久久久久久影院| 亚洲高清在线| 久久www成人_看片免费不卡 | 亚洲午夜一区二区三区| 久久综合图片| 亚洲性线免费观看视频成熟| 免费成人高清| 午夜国产精品视频免费体验区| 欧美激情自拍| 久久精品二区亚洲w码| 欧美亚州韩日在线看免费版国语版| 亚洲国产mv| 国产精品视频内| 亚洲卡通欧美制服中文| 国产一区二区日韩精品欧美精品| 亚洲图片欧美一区| 亚洲国产视频一区二区| 久久久精品五月天| 午夜精品一区二区在线观看| 欧美日韩亚洲一区二区三区| 亚洲欧洲综合另类|