<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 模擬技術(shù) > 設計應用 > 基于增強型并行口的智能儀表與微機的高速通訊

基于增強型并行口的智能儀表與微機的高速通訊

作者: 時(shí)間:2011-11-30 來(lái)源:網(wǎng)絡(luò ) 收藏

基于與微機的

介紹計算機的信號,論述單片機控制的儀器儀表經(jīng)與微機通訊時(shí)的信號連接方式及通訊軟件設計方法。
  關(guān)鍵詞:增強型并行口;微機;單片機;

High speed Communication between an Intelligent Instrumentation
and a PC based on EPP
SHI Yanling, ZOU Laizhi, YAN Zhiqiang
(Engineer Command Academy, Xuzhou 221004, China)
  Key words: EPP; PC; microcontroller; high?speed communication
1EPP信號
  微型計算機的新型并行口電路主要由狀態(tài)寄存器、控制寄存器、地址寄存器、數據寄存器等組成。工作在增強型并行口EPP模式且“基地址”為378H時(shí),狀態(tài)寄存器、控制寄存器、地址寄存器、數據寄存器的地址分別為379H、37AH、37BH、37CH。EPP信號與這4個(gè)寄存器密切相關(guān)。
  WRITE信號:主機并行口插孔1,輸出,低電平寫(xiě),高電平讀。當控制寄存器的D0位為0時(shí),若向數據寄存器/地址寄存器發(fā)送一條I/O指令,則產(chǎn)生WRITE信號。
  AD0~AD7信號:并行口插孔2~9,雙向數據/地址線(xiàn),對應于數據寄存器/地址寄存器的D0~D7位,用于傳輸數據/地址。
  INTR信號:并行口插孔10,輸入,外部設備中斷請求信號,上升沿有效。當控制寄存器的D4位為1時(shí),才允許并行口向主機傳送來(lái)自外設的中斷請求信號IRQ7。狀態(tài)寄存器D6位取值與INTR信號相同。
  WAIT信號:并行口插孔11,輸入,握手信號,低可以開(kāi)始一個(gè)周期,高可以結束一個(gè)周期(EPP1.9標準時(shí))。狀態(tài)寄存器的D7位取值與WAIT信號相反。
  USER1、USER2、USER3信號:分別為并行口插孔12、13、15,輸入,用戶(hù)定義。狀態(tài)寄存器的D3、D4、D5位取值分別與USER3、USER2、USER1取值相同。
  DATASTB信號:并行口插孔14,輸出,低有效,表示正在進(jìn)行數據讀/寫(xiě)操作。當控制寄存器的D1位為0時(shí),若向數據寄存器發(fā)送一條I/O指令,則產(chǎn)生DATASTB信號。
  RESET信號:并行口插孔16,輸出,低有效,為外部設備復位信號。當控制寄存器的D2位為1時(shí),產(chǎn)生RESET信號。
  ADDRSTB信號:并行口插孔17,輸出,低有效,表示正在進(jìn)行地址讀/寫(xiě)操作。當控制寄存器的D3位為0時(shí),若向地址寄存器發(fā)送一條I/O指令,則產(chǎn)生ADDRSTB信號。
  GND信號:并行口插孔18,地線(xiàn),所有信號公共端。
  在EPP模式下,對EPP控制寄存器的各位寫(xiě)入規定的值后,再用一個(gè)I/O指令向EPP的數據寄存器/地址寄存器傳輸一個(gè)字節的數據/地址,EPP電路則會(huì )自動(dòng)處理握手信號,并自動(dòng)產(chǎn)生時(shí)序信號[1],即信號的產(chǎn)生是靠硬件而不是軟件,這就是EPP能高速傳輸數據的原因。?
  EPP與AT89、MCS-51及兼容系列單片機的信號連接如圖1所示。由于EPP信號、單片機引腳信號都與TTL兼容,所以二者的信號線(xiàn)可以直接相連。
  為實(shí)現PC與單片機間的雙向字節數據傳送,把EPP的AD0~AD7與單片機的P1.0~P1.7(P1口)對應連接。
  單片機向PC發(fā)送數據或從PC接收數據,需經(jīng)EPP向PC發(fā)送中斷請求信號,同時(shí)還要告訴PC是發(fā)送數據還是接收數據,為此需把INTR與P3.2相連。當P3.2由0變?yōu)?時(shí),向PC發(fā)送中斷請求信號;當P3.2為0時(shí),讓PC發(fā)送數據;當P3.2為1時(shí),讓PC接收數據。
?
  在雙向通訊過(guò)程中,PC還向單片機提供握手信號,為此把DATASTB與P3.3相連。當DATSTB(PC讀/寫(xiě)EPP數據寄存器時(shí)自動(dòng)產(chǎn)生)為0時(shí),讓單片機讀/寫(xiě)P1口。
3.1PC收/發(fā)數據
  主要設計思想:主程序中,把控制字19H寫(xiě)入EPP的控制寄存器,即允許產(chǎn)生DATASTB信號及允許并行口中斷。當PC接到單片機發(fā)來(lái)的中斷請求信號IRQ7并響應中斷后,中斷服務(wù)程序先讀取EPP狀態(tài)寄存器的D6位(與INTR值相同)值。當該位值為0時(shí),PC執行發(fā)送數據子程序;當該位值為1時(shí),PC執行接收數據子程序。在收/發(fā)數據子程序中,通過(guò)查詢(xún)的方法可收/發(fā)多個(gè)字節數據;當WAIT(與EPP狀態(tài)寄存器的D7位取值相反)為0時(shí),PC讀/寫(xiě)EPP的數據寄存器,同時(shí)EEP自動(dòng)產(chǎn)生DATASTB信號(由1變0),讓單片機寫(xiě)/讀P1口。程序清單如下。
  
 ?
 
 
 
3.2單片機收/發(fā)數據
  主要設計思想:?jiǎn)纹瑱C經(jīng)P3.2(由0變1)向PC發(fā)送通訊中斷請求信號并發(fā)送收/發(fā)數據標志;*在收/發(fā)數據子程序中通過(guò)查詢(xún)的方法可收/發(fā)多個(gè)字節數據。當查詢(xún)到EPP的DATASTB為0時(shí),寫(xiě)/讀P1口,并經(jīng)P3.4向PC發(fā)送握手信號(P3.4為0),讓PC讀/寫(xiě)EPP的數據寄存器。程序清單如下。
 
 


評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>