新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 單片機(jī)控制系統(tǒng)中實(shí)現(xiàn)DMA數(shù)據(jù)傳送的方法

單片機(jī)控制系統(tǒng)中實(shí)現(xiàn)DMA數(shù)據(jù)傳送的方法

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

3.2.1 初始化

開(kāi)機(jī)后,首先要對(duì)8155和8237初始化。

8155初始化。8155只有1個(gè)狀態(tài)寄存器,通過(guò)對(duì)地址3F00H賦值,即可設(shè)定PB口和PC口為輸出口,用于為6264提供地址;PA口為雙向輸入輸出口,作為6264的口,存時(shí),3F00H的值為0DH;取時(shí),3F00H的值為0CH。

8237初始化。將8155的PC5位置0,2片4066組成的門(mén)控電路使8237處于非狀態(tài)。此時(shí),8237的端口讀寫(xiě)控制線(xiàn)與的讀寫(xiě)線(xiàn)分別接通。通過(guò)對(duì)地址5F00H~5FFFH(8237的內(nèi)部寄存器端口地址)的設(shè)定,完成8237的初始化。

針對(duì)的特點(diǎn),通常初始化8237的內(nèi)容包括:
(1)決定的工作通道;
(2)數(shù)據(jù)按成組方式;
(3)確定訪存首地址及地址的增減變化;
(4)字節(jié)數(shù);
(5)確定請(qǐng)求信號(hào)和應(yīng)答信號(hào)的有效電平;
(6)屏蔽。

3.2.2 

系統(tǒng)完成初始化之后即進(jìn)入正常工作狀態(tài)。若有DMA請(qǐng)求,即可進(jìn)行DMA傳送過(guò)程。

(1)8237接收到DMA請(qǐng)求信號(hào)DREQ后,輸出“總線(xiàn)”請(qǐng)求信號(hào)HOLD,引起單片機(jī)中斷,中斷響應(yīng)程序包括:解除8237的屏蔽功能;保持P2.6、P2.5置0,使能6264、8237;
  P2.7置1,使8155空閑;6264脫離單片機(jī)控制。

8155的PC5由0變1;門(mén)控電路使8237的存儲(chǔ)器讀寫(xiě)線(xiàn)與6264的讀寫(xiě)線(xiàn)接通,完成DMA通道的連接。同時(shí),8155的PC5作為CPU對(duì)DMA請(qǐng)求的回應(yīng),啟動(dòng)了DMA傳送過(guò)程。

(2)8237輸出DACK回答信號(hào),開(kāi)始DMA傳送。

(3)傳送結(jié)束,8237輸出信號(hào),單片機(jī)檢測(cè)到2次中斷的發(fā)生,使8155的PC5置0,恢復(fù)的原有工作狀態(tài)。同時(shí)為下次DMA傳送作好了準(zhǔn)備,并通知外設(shè)本次DMA傳送結(jié)束。

4 結(jié) 論

通過(guò)存儲(chǔ)器擴(kuò)展,在僅占用單片機(jī)幾十個(gè)存儲(chǔ)空間和一個(gè)中斷源的情況下,了單片機(jī)控制系統(tǒng)的數(shù)據(jù)DMA傳送,保證了單片機(jī)能在DMA傳送期間的正常工作。實(shí)踐證明,該系統(tǒng)可方便用于信號(hào)的高速采集,并可作為單片機(jī)控制系統(tǒng)與軟盤(pán)驅(qū)動(dòng)器的接口。

[參考文獻(xiàn)]
[1] 朱長(zhǎng)清.單片機(jī)與CRT顯示器的接口[J].電子技術(shù),2000(2).
[2] 閻慧娟,張金烈.微型計(jì)算機(jī)接口技術(shù)[M].中國(guó)人事出版社,1994.
[3] 何立民.單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)[M].北京航空航天大學(xué)出版社,1990.
[4] 趙依軍,胡戎.單片微機(jī)接口技術(shù)[M].人民郵電出版社,1989.


上一頁(yè) 1 2 下一頁(yè)

評(píng)論


相關(guān)推薦

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

關(guān)閉