0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

單片機的三總線結構

j4AI_wujianying ? 來源:單片機精講吳鑒鷹 ? 2020-05-14 14:32 ? 次閱讀

一、總線概述

計算機系統(tǒng)是以微處理器為核心的,各器件要與微處理器相連,且必須協(xié)調工作,所以在微處理機中引入了總線的概念,各器件共同享用總線,任何時候只能有一個器件發(fā)送數(shù)據(jù)(可以有多個器件同時接收數(shù)據(jù)) 。

計算機的總線分為控制總線、地址總線和數(shù)據(jù)總線等三種。而數(shù)據(jù)總線用于傳送數(shù)據(jù),控制總線用于傳送控制信號, 地址總線則用于選擇存儲單元或外設。

二、單片機的三總線結構

51系列單片機具有完善的總線接口時序,可以擴展控制對象,其直接尋址能力達到64k( 2的16次方) 。在總線模式下,不同的對象共享總線,獨立編址、分時復用總線,CPU 通過地址選擇訪問的對象,完成與各對象之間的信息傳遞。

單片機三總線擴展示意如圖1 所示。

1、數(shù)據(jù)總線

51 單片機的數(shù)據(jù)總線為P0 口,P0 口為雙向數(shù)據(jù)通道,CPU 從P0 口送出和讀回數(shù)據(jù)。

2、地址總線

51 系列單片機的地址總線為16 位。

為了節(jié)約芯片引腳,采用P0 口復用方式,除了作為數(shù)據(jù)總線外,在ALE 信號時序匹配下,通過外置的數(shù)據(jù)鎖存器,在總線訪問前半周期從P0口送出低8位地址,后半周期從P0 口送出8 位數(shù)據(jù)。

高8位地址則通過P2 口送出。

3、控制總線

51 系列單片機的控制總線包括讀控制信號P3.7 和寫控制信號P3.6 等,二者分別作為總線模式下數(shù)據(jù)讀和數(shù)據(jù)寫的使能信號。

三、單片機總線時序分析

51 單片機總線時序如圖2 所示。

從圖2 中可以看出,完成一次總線( 讀寫) 操作周期為T,P0 口分時復用,在T0 期間,P0 口送出低8 位地址,在ALE 的下降沿完成數(shù)據(jù)鎖存,送出低8位地址信號。在T1 期間,P0 口作為數(shù)據(jù)總線使用,送出或讀入數(shù)據(jù),數(shù)據(jù)的讀寫操作在讀、寫控制信號的低電平期間完成。

需要注意的是,在控制信號( 讀、寫信號) 有效期間,P2 口送出高8位地址,配合數(shù)據(jù)鎖存器輸出的低8 位地址,實現(xiàn)16 位地址總線,即64kB 范圍的內的尋址。

由于CPU不可能同時執(zhí)行讀和寫操作,所以讀、寫信號不可能同時有效。

四、常見單片機編址電路

1、簡單地址擴展

51 單片機的P2 口可以直接作為高8位地址總線使用,在一些簡單系統(tǒng)電路中,常使用P2口直接編址驅動。

下面以使用數(shù)據(jù)緩沖器74LS273 驅動數(shù)碼顯示為例,分析P2 口編址驅動的靜態(tài)數(shù)碼顯示電路的設計。

一位LED 數(shù)碼顯示單元電路如圖3 所示。

WR 與A8( P2.0) 相或提供74LS273的時鐘信號,當執(zhí)行“MOVX @DPTR,A”指令時,地址信息由DPTR 寄存器確定,會出現(xiàn)有效的寫信號WR,只有當?shù)刂稟8 為滿足“0”時,寫信號才可以作為74LS273 的時鐘信號輸入,完成數(shù)據(jù)鎖存。

P2 口為A8~A15 的8 位地址線,很容易擴展到8 只LED 數(shù)碼管,WR 信號分別與A8~A15 按或關系連接,每位地址線均為低電平有效,即可實現(xiàn)8 個有效地址。

該方案電路簡單,但有效地址數(shù)太少,不適用于復雜系統(tǒng)設計。

2、低8 位地址鎖存

通常的設計電路是使用8D 鎖存器74LS373 實現(xiàn)地址鎖存,74HC573 與之邏輯功能相同,只是引腳布局不一樣,使用74HC573 布線更容易。

74LS373 真值表如圖4所示。

在輸出允許OE 為L、控制使能LE 為H 時,輸出為跟隨狀態(tài);OE 為L、LE 為L 時,輸出為保持狀態(tài)。

地址鎖存電路如圖5 所示。OE 接地,LE 接單片機的ALE腳將產(chǎn)生滿足時序的低8 位地址信號。

執(zhí)行以下三條指令會得到如圖6所示的時序圖。

MOV DPTR,# 0FF55H;低8 位地址為55H

MOV A,# 0AAH;待發(fā)送數(shù)據(jù)0AAH→A( 55H 取反)

MOVX,@DPTR,A;A 中的0AAH送地址為0FF55H 的對象中會。

從圖6 中可以看出,P0 口先送55H,在ALE 下降沿實現(xiàn)地址鎖存,隨后送出數(shù)據(jù)0AAH,在WR 有效( 低電平) 期間鎖存器輸出低8 位地址55H,P0 口送出數(shù)據(jù)0AAH。

3、帶譯碼器的復雜地址接口電路

理論上高8 位地址線可以產(chǎn)生256 個有效地址,如何實現(xiàn)地址“擴展”呢? 地址擴展準確描述是地址譯碼,例如3 根地址線可以譯碼成8 個地址,4根譯碼成16 個有效地址。這里選擇3-8 譯碼器實現(xiàn)地址譯碼,電路圖以及對應的編址如表1 所示。

五、單片機總線編址電路實例

總線擴展接口的單片機系統(tǒng),包括外部32k RAM 擴展、LCD1602 接口、輸入輸出口。

D0~D7 接數(shù)據(jù)總線P0 口,地址線A0~A14接單片機地址總線低15 位,單片機地址線A15 接RAM 片選信號,低電平有效,這樣RAM 地址分配從0000H 到7FFFH,與74138 譯碼地址不沖突。

LCD1602 接口電路如圖9 所示。

RS、RW 分別接A12、A13,使能信號編址為Y7,這樣LCD 的四個驅動地址( 數(shù)據(jù)讀寫和命令讀寫) 為0CFFFH 到0FFFFH ( 無關位為1) 或者8700H 到0B700H( 無關位為0)。

有些時候單片機引腳不夠用,還要進行擴展,輸入口擴展電路如圖10 所示。

利用74HC573( 74LS373) 的高阻態(tài)功能,將其輸出Q0~Q7 接P0 口,在滿足總線地址讀操作中,可以把輸入InPORT的數(shù)據(jù)讀入單片機的累加器,地址為0F8FFH 或8000H。

輸出口擴展電路如圖11 所示。

利用74LS273 數(shù)據(jù)鎖存功能,在滿足總線地址寫操作中,可以把單片機累加器里的數(shù)據(jù)寫入273 鎖存輸出,地址為0F8FFH 或8000H。由于所用控制總線不同,可以和輸入共用地址。

六、結束語

總線擴展是設計單片機控制電路必須掌握的技術,大量的特殊功能IC都支持總線接口, 如ADC0809,TLC7528,DDS 器件AD9851 等。

總線接口的要點就是在嚴格的控制時序下,總線被分時復用,以實現(xiàn)復雜系統(tǒng)設計。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 單片機
    +關注

    關注

    6026

    文章

    44453

    瀏覽量

    630851
  • 微處理器
    +關注

    關注

    11

    文章

    2231

    瀏覽量

    82203
  • 控制總線
    +關注

    關注

    0

    文章

    10

    瀏覽量

    8281

原文標題:5分鐘了解單片機數(shù)據(jù)、地址、控制總線結構!

文章出處:【微信號:wujianying_danpianji,微信公眾號:單片機精講吳鑒鷹】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    PIC單片機的優(yōu)勢和不足之處

    的核心優(yōu)勢在于其CPU采用的RISC結構,這一結構精簡而高效,分別包含33、35、58條指令,構成了精簡指令集。這種設計不僅減少了指令的數(shù)量,還提高了指令的執(zhí)行效率。 同時,PIC單片機采用了Harvard雙
    的頭像 發(fā)表于 09-25 17:22 ?230次閱讀

    單片機總線結構

    單片機總線結構包括地址總線(Address Bus, AB)、數(shù)據(jù)總線(Data Bus, DB)和控制
    的頭像 發(fā)表于 09-10 11:32 ?914次閱讀

    單片機引腳懸空是什么電平

    單片機引腳懸空是指單片機的I/O引腳在沒有連接任何外部電路的情況下,引腳的電平狀態(tài)。懸空引腳的電平狀態(tài)取決于單片機的內部結構和外部環(huán)境因素。 單片機
    的頭像 發(fā)表于 08-28 09:51 ?755次閱讀

    一文讀懂什么單片機:組成結構與應用

    歡迎來到單片機的世界,這是一種微小(但功能強大)的設備,改變了嵌入式系統(tǒng)的面貌。在本文中,您將了解單片機的一些基本知識、單片機結構以及微處理器與
    的頭像 發(fā)表于 08-09 11:49 ?1526次閱讀
    一文讀懂什么<b class='flag-5'>單片機</b>:組成<b class='flag-5'>結構</b>與應用

    如何系統(tǒng)、科學地自學單片機?

    很多初學者都會面臨這個問題,我想學習單片機、我也想學好單片機、我也想系統(tǒng)地學習單片機,但是單片機涉及到的學科多且雜根本不是天兩天就能學完的
    的頭像 發(fā)表于 03-28 08:03 ?917次閱讀
    如何系統(tǒng)、科學地自學<b class='flag-5'>單片機</b>?

    fpga和單片機的區(qū)別和聯(lián)系 fpga和cpu區(qū)別

    。FPGA更偏向于硬件電路,其結構是查找表結構,其程序不需要過多考慮芯片的結構,而主要關注時序問題。相比之下,單片機更偏于軟件方向,它是一個微控制器,通過加載模塊軟件來實現(xiàn)某種功能。
    的頭像 發(fā)表于 03-14 17:33 ?946次閱讀

    總線可分為哪幾種?采用總線結構有什么好處?

    總線結構將計算機系統(tǒng)劃分為多個模塊,每個模塊只關注自身的功能,相對獨立,從而簡化了整個系統(tǒng)的設計和實現(xiàn)過程。
    的頭像 發(fā)表于 02-02 16:09 ?2341次閱讀

    單片機晶振電路原理及作用 51單片機晶振怎么接

    單片機是一種集成電路芯片,內部包含了微處理器核心、存儲器和各種周邊接口電路。晶振是單片機工作的時鐘源,為單片機提供穩(wěn)定的時鐘信號。在單片機的設計中,晶振電路起著重要的作用。本文將詳細介
    的頭像 發(fā)表于 01-24 15:14 ?6697次閱讀

    圖像采集卡常見的總線結構

    圖像采集卡常見的總線結構? 圖像采集卡(Image Capture Card)是一種專門用于將模擬圖像信號轉換成數(shù)字圖像信號的硬件設備。它是圖像處理和計算機視覺應用中的重要組成部分,廣泛應用
    的頭像 發(fā)表于 12-15 10:10 ?1167次閱讀

    單片機的燒寫次數(shù)是不是無限的呢?單片機能燒錄多少次?

    單片機結構和燒寫方式 單片機是一種集成電路,它集成了處理器、存儲器、輸入輸出接口等功能。燒寫單片機時,通常使用專用的編程器連接計算機和單片機
    的頭像 發(fā)表于 12-07 13:46 ?3627次閱讀

    單片機IIC總線及AT24C02的應用

    電子發(fā)燒友網(wǎng)站提供《單片機IIC總線及AT24C02的應用.doc》資料免費下載
    發(fā)表于 11-16 09:24 ?2次下載
    <b class='flag-5'>單片機</b>IIC<b class='flag-5'>總線</b>及AT24C02的應用

    FPGA和單片機的區(qū)別

    單片機的區(qū)別 結構上的區(qū)別 單片機是一種微處理器,類似于電腦CPU的,它一般采用的是哈佛總線結構,或者馮諾依曼結構,對
    發(fā)表于 11-14 15:30

    單片機學的是什么

    單片機,對于每一個硬件行業(yè)的從業(yè)者或者在校電子類專業(yè)的學生,相信對于這個名詞都不陌生,但是掌沒掌握就另說了。 那單片機到底學的是什么呢? 其實單片機在生活中就非常常見,目前市面上主流的單片機
    的頭像 發(fā)表于 11-07 10:38 ?1130次閱讀
    <b class='flag-5'>單片機</b>學的是什么

    C51單片機基礎元件及C51單片機共陰/共陽數(shù)碼管的內部組成結構

    單片機共陰/共陽數(shù)碼管的內部組成結構 單片機基礎元件 審核編輯 黃宇
    的頭像 發(fā)表于 11-06 23:24 ?847次閱讀
    C51<b class='flag-5'>單片機</b>基礎元件及C51<b class='flag-5'>單片機</b>共陰/共陽數(shù)碼管的內部組成<b class='flag-5'>結構</b>

    基于STM32單片機的單線CAN總線隔離中繼器

    電子發(fā)燒友網(wǎng)站提供《基于STM32單片機的單線CAN總線隔離中繼器.pdf》資料免費下載
    發(fā)表于 11-06 10:03 ?1次下載
    基于STM32<b class='flag-5'>單片機</b>的單線CAN<b class='flag-5'>總線</b>隔離中繼器